)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"1866f5b0065b421a4067a19beeebb795a3804bfc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7fa2758b_7de497c7","updated":"2026-03-05 17:41:31.000000000","message":"This looks good! I am keen to test it out.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"change_message_id":"e2accd7d5d4c21e9c5c041afa9e1769b24b51995","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"ee2e0dbb_c0d8161e","updated":"2026-03-12 20:26:25.000000000","message":"+1 to Doug\u0027s nit.","commit_id":"acc4666dce3c314d7fc7a57f13eff3b83fa6861c"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"8b0691979caed9b16f1ca63e0b74da9fdf69ed47","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"26e25cd2_e3afbcb0","updated":"2026-03-12 17:25:30.000000000","message":"Doug has been testing a version of this backported to Caracal and has confirmed it works well.","commit_id":"acc4666dce3c314d7fc7a57f13eff3b83fa6861c"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"673e2f51c5d762e31c5a7a25bcc5711e7736ddfc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3b2547cc_b4e04485","updated":"2026-03-12 18:00:52.000000000","message":"This is all looking good now for ramdisk + redfish-virtual-media","commit_id":"acc4666dce3c314d7fc7a57f13eff3b83fa6861c"}],"doc/source/admin/ramdisk-boot.rst":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"1866f5b0065b421a4067a19beeebb795a3804bfc","unresolved":true,"context_lines":[{"line_number":138,"context_line":"   .. code-block:: shell"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"      openstack image create my-ramdisk-kernel --public \\"},{"line_number":141,"context_line":"        --disk-format raw --container-format bare \\"},{"line_number":142,"context_line":"        --file my-ramdisk.kernel"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"   Store the image UUID as ``MY_KERNEL_UUID``."}],"source_content_type":"text/x-rst","patch_set":1,"id":"9505a557_b2eb1830","line":141,"updated":"2026-03-05 17:41:31.000000000","message":"Any thoughts on getting rid of the placeholder image and instead setting the container format to aki/ari for the kernel/ramdisk?\n\nIn this example, you would then set ``--property ramdisk_id\u003d$MY_RAMDISK_UUID``, and vice-versa if you wanted to do it other way around.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"9a60b4a7bf1870f0101feea447401c07223e0073","unresolved":true,"context_lines":[{"line_number":138,"context_line":"   .. code-block:: shell"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"      openstack image create my-ramdisk-kernel --public \\"},{"line_number":141,"context_line":"        --disk-format raw --container-format bare \\"},{"line_number":142,"context_line":"        --file my-ramdisk.kernel"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"   Store the image UUID as ``MY_KERNEL_UUID``."}],"source_content_type":"text/x-rst","patch_set":1,"id":"f314f6e6_9e65941c","line":141,"in_reply_to":"9505a557_b2eb1830","updated":"2026-03-09 16:43:09.000000000","message":"The problem is that we support kernel/ramdisk split images for direct deploy as partition images. Some of the aki/ari desired logic changed with image security fixes, too -- but I\u0027ll admit it\u0027s easy for me to mix up the idea of disk-format and container-format.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"17f82aeb113fef31c1199d3dad31504d1d1d1cc5","unresolved":false,"context_lines":[{"line_number":138,"context_line":"   .. code-block:: shell"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"      openstack image create my-ramdisk-kernel --public \\"},{"line_number":141,"context_line":"        --disk-format raw --container-format bare \\"},{"line_number":142,"context_line":"        --file my-ramdisk.kernel"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"   Store the image UUID as ``MY_KERNEL_UUID``."}],"source_content_type":"text/x-rst","patch_set":1,"id":"0710fbdd_0736b28c","line":141,"in_reply_to":"f314f6e6_9e65941c","updated":"2026-03-11 17:33:01.000000000","message":"Thanks, that makes sense.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"1866f5b0065b421a4067a19beeebb795a3804bfc","unresolved":true,"context_lines":[{"line_number":209,"context_line":".. note::"},{"line_number":210,"context_line":"   The disk image file attached to the Glance image is **not** used by the"},{"line_number":211,"context_line":"   ramdisk deploy interface. Only the kernel and ramdisk referenced by"},{"line_number":212,"context_line":"   ``kernel_id`` / ``ramdisk_id``, or the ISO referenced by ``boot_iso_id``,"},{"line_number":213,"context_line":"   are booted."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Limitations"}],"source_content_type":"text/x-rst","patch_set":1,"id":"83fd02e1_37b1f48d","line":212,"updated":"2026-03-05 17:41:31.000000000","message":"Could the Glance image be the boot iso for the boot iso case? I don\u0027t know if you could use the ``container_format`` to indicate an iso?","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"02c573fba1d395c63c7d3e43af2a0a6675c26ced","unresolved":true,"context_lines":[{"line_number":209,"context_line":".. note::"},{"line_number":210,"context_line":"   The disk image file attached to the Glance image is **not** used by the"},{"line_number":211,"context_line":"   ramdisk deploy interface. Only the kernel and ramdisk referenced by"},{"line_number":212,"context_line":"   ``kernel_id`` / ``ramdisk_id``, or the ISO referenced by ``boot_iso_id``,"},{"line_number":213,"context_line":"   are booted."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Limitations"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f57d00a3_d2fbc2e8","line":212,"in_reply_to":"83fd02e1_37b1f48d","updated":"2026-03-11 20:36:05.000000000","message":"I prefer having one basic model (a metadata image pointing to the real ones) for both the ISO + kernel/ramdisk case rather than two separate ways of doing it.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"a9d2f04df5dc677dbf702289af09686d3e6d976b","unresolved":false,"context_lines":[{"line_number":209,"context_line":".. note::"},{"line_number":210,"context_line":"   The disk image file attached to the Glance image is **not** used by the"},{"line_number":211,"context_line":"   ramdisk deploy interface. Only the kernel and ramdisk referenced by"},{"line_number":212,"context_line":"   ``kernel_id`` / ``ramdisk_id``, or the ISO referenced by ``boot_iso_id``,"},{"line_number":213,"context_line":"   are booted."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Limitations"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1902398b_e5df1c4f","line":212,"in_reply_to":"f57d00a3_d2fbc2e8","updated":"2026-03-12 17:21:48.000000000","message":"Done","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"a9d2f04df5dc677dbf702289af09686d3e6d976b","unresolved":true,"context_lines":[{"line_number":184,"context_line":"   .. code-block:: shell"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"      openstack image create my-ramdisk-boot-iso --public \\"},{"line_number":187,"context_line":"        --disk-format raw --container-format bare \\"},{"line_number":188,"context_line":"        --file my-ramdisk.iso"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"   Store the image UUID as ``MY_BOOT_ISO_UUID``."}],"source_content_type":"text/x-rst","patch_set":5,"id":"2db01e61_95ca5a0a","line":187,"updated":"2026-03-12 17:21:48.000000000","message":"nit: ``--disk-format iso`` to avoid validation fail","commit_id":"acc4666dce3c314d7fc7a57f13eff3b83fa6861c"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"125a501da7034b057672c5a04dd3c98befb4dca4","unresolved":true,"context_lines":[{"line_number":184,"context_line":"   .. code-block:: shell"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"      openstack image create my-ramdisk-boot-iso --public \\"},{"line_number":187,"context_line":"        --disk-format raw --container-format bare \\"},{"line_number":188,"context_line":"        --file my-ramdisk.iso"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"   Store the image UUID as ``MY_BOOT_ISO_UUID``."}],"source_content_type":"text/x-rst","patch_set":5,"id":"edc7ce79_8a5c429b","line":187,"in_reply_to":"2db01e61_95ca5a0a","updated":"2026-03-12 17:41:36.000000000","message":"I\u0027ll follow up with this if no other revisions are required.","commit_id":"acc4666dce3c314d7fc7a57f13eff3b83fa6861c"}],"ironic/common/pxe_utils.py":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"1866f5b0065b421a4067a19beeebb795a3804bfc","unresolved":true,"context_lines":[{"line_number":734,"context_line":"        # requirement."},{"line_number":735,"context_line":"        anaconda_labels \u003d (\u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":736,"context_line":""},{"line_number":737,"context_line":"    if not (i_info.get(\u0027kernel\u0027) and i_info.get(\u0027ramdisk\u0027)):"},{"line_number":738,"context_line":"        # NOTE(rloo): If both are not specified in instance_info"},{"line_number":739,"context_line":"        # we won\u0027t use any of them. We\u0027ll use the values specified"},{"line_number":740,"context_line":"        # with the image, which we assume have been set."}],"source_content_type":"text/x-python","patch_set":1,"id":"7ec34e24_f45b017b","line":737,"updated":"2026-03-05 17:41:31.000000000","message":"Ah, I see, I suppose this explains the placeholder image.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"a9d2f04df5dc677dbf702289af09686d3e6d976b","unresolved":false,"context_lines":[{"line_number":734,"context_line":"        # requirement."},{"line_number":735,"context_line":"        anaconda_labels \u003d (\u0027ks_template\u0027, \u0027ks_cfg\u0027)"},{"line_number":736,"context_line":""},{"line_number":737,"context_line":"    if not (i_info.get(\u0027kernel\u0027) and i_info.get(\u0027ramdisk\u0027)):"},{"line_number":738,"context_line":"        # NOTE(rloo): If both are not specified in instance_info"},{"line_number":739,"context_line":"        # we won\u0027t use any of them. We\u0027ll use the values specified"},{"line_number":740,"context_line":"        # with the image, which we assume have been set."}],"source_content_type":"text/x-python","patch_set":1,"id":"4f2026f5_dd459442","line":737,"in_reply_to":"7ec34e24_f45b017b","updated":"2026-03-12 17:21:48.000000000","message":"Done","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"17f82aeb113fef31c1199d3dad31504d1d1d1cc5","unresolved":true,"context_lines":[{"line_number":742,"context_line":"        if image_properties:"},{"line_number":743,"context_line":"            if (boot_option \u003d\u003d \u0027ramdisk\u0027"},{"line_number":744,"context_line":"                    and image_properties.get(\u0027boot_iso_id\u0027)):"},{"line_number":745,"context_line":"                i_info[\u0027boot_iso\u0027] \u003d str("},{"line_number":746,"context_line":"                    image_properties[\u0027boot_iso_id\u0027])"},{"line_number":747,"context_line":"                node.instance_info \u003d i_info"},{"line_number":748,"context_line":"                node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"1c230ef4_208e4835","line":745,"updated":"2026-03-11 17:33:01.000000000","message":"I think we need some way of setting \u0027boot_iso\u0027 on the instance info for boot interfaces others than pxe/ipxe? Eg. the redfish-virtual-media boot interface. At least I\u0027m not setting where that is happening.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"30e1bf0a0db43ecf8590feac1da11e747570aa3d","unresolved":true,"context_lines":[{"line_number":742,"context_line":"        if image_properties:"},{"line_number":743,"context_line":"            if (boot_option \u003d\u003d \u0027ramdisk\u0027"},{"line_number":744,"context_line":"                    and image_properties.get(\u0027boot_iso_id\u0027)):"},{"line_number":745,"context_line":"                i_info[\u0027boot_iso\u0027] \u003d str("},{"line_number":746,"context_line":"                    image_properties[\u0027boot_iso_id\u0027])"},{"line_number":747,"context_line":"                node.instance_info \u003d i_info"},{"line_number":748,"context_line":"                node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"82d7b164_95e4e4df","line":745,"in_reply_to":"1c230ef4_208e4835","updated":"2026-03-11 17:34:15.000000000","message":"seeing, not setting!","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"05154cb6e4eb862285868d791f2037ea18f0fe79","unresolved":true,"context_lines":[{"line_number":742,"context_line":"        if image_properties:"},{"line_number":743,"context_line":"            if (boot_option \u003d\u003d \u0027ramdisk\u0027"},{"line_number":744,"context_line":"                    and image_properties.get(\u0027boot_iso_id\u0027)):"},{"line_number":745,"context_line":"                i_info[\u0027boot_iso\u0027] \u003d str("},{"line_number":746,"context_line":"                    image_properties[\u0027boot_iso_id\u0027])"},{"line_number":747,"context_line":"                node.instance_info \u003d i_info"},{"line_number":748,"context_line":"                node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df3dc7ac_82a93dc4","line":745,"in_reply_to":"82d7b164_95e4e4df","updated":"2026-03-11 20:01:56.000000000","message":"Yeah this is in the wrong layer, that\u0027s the root cause of the issue you saw earlier.","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"a9d2f04df5dc677dbf702289af09686d3e6d976b","unresolved":false,"context_lines":[{"line_number":742,"context_line":"        if image_properties:"},{"line_number":743,"context_line":"            if (boot_option \u003d\u003d \u0027ramdisk\u0027"},{"line_number":744,"context_line":"                    and image_properties.get(\u0027boot_iso_id\u0027)):"},{"line_number":745,"context_line":"                i_info[\u0027boot_iso\u0027] \u003d str("},{"line_number":746,"context_line":"                    image_properties[\u0027boot_iso_id\u0027])"},{"line_number":747,"context_line":"                node.instance_info \u003d i_info"},{"line_number":748,"context_line":"                node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"96c87874_b7de0a8f","line":745,"in_reply_to":"df3dc7ac_82a93dc4","updated":"2026-03-12 17:21:48.000000000","message":"Done","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"}],"releasenotes/notes/ramdisk-deploy-from-nova-02c1753b152549fb.yaml":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"dee0386c4d730b5514b69e380434dbdc297ad46c","unresolved":true,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Operators wishing to use this new support will need to upload a"},{"line_number":9,"context_line":"    placeholder image in Glance with metadata indicating what the kernel and"},{"line_number":10,"context_line":"    ramdisk portions are. See the Ramdisk Boot section of the admin guide for"},{"line_number":11,"context_line":"    more detail."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"e9a9fd34_0e72294a","line":10,"updated":"2026-03-03 21:28:12.000000000","message":"mention boot_iso","commit_id":"e401bef7a7aeabcdfdf724004a8a52092f9bfcd0"}]}
