)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":35929,"name":"Mahnoor Asghar","display_name":"Mahnoor Asghar","email":"masghar@redhat.com","username":"mahnoorasghar"},"change_message_id":"f27b14fe0d8b267e007181a436eca0ca0b864a00","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c4c8c2d2_b229ec65","updated":"2024-09-19 11:26:08.000000000","message":"LGTM","commit_id":"2bced760d055dfa82054cc44584dedca7ffa349f"},{"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":"df453735a66b7c2e63fbc42cceb61ff4b82d70b6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9bbe8581_0c971a7e","updated":"2024-09-24 22:13:13.000000000","message":"There was a lot of discussion about this today in #openstack-oslo and #openstack-ironic, here\u0027s some relevant notes:\n- It\u0027s basically a project decision if an image (e.g. GPT) is a raw-style image as Ironic would mean it\n- Nova already has similar logic for ^ here: https://opendev.org/openstack/nova/src/branch/master/nova/virt/images.py#L164\n- If we are worried about a rugpull breakage should more image types be removed from the \"raw\" format in the future, we can supply a list of acceptable inspectors when doing the safety check, so it won\u0027t return $newInspector we\u0027re not ready for yet.\n\nI also suggest we take the return value of GPT and consider a \"gpt\" image an image type:\n- Images that use MBR are also detected as GPT, as MBR is a subset of GPT (surprise to me)\n- It\u0027s at least a step towards disambiguating the giant mass that we consider \"raw\" images today\n\nI\u0027d note that we can likely expect this cycle to have more moves in the direction of defining more useful image types than \u0027raw\u0027 -- https://review.opendev.org/c/openstack/glance-specs/+/925111 is documenting some of the work in that direction.\n\n\nWe should coordinate on whatever decision is made here, so we can have Ironic and IPA agree, but I\u0027d propose:\n- \"GPT\" is a valid image type, added to the list of allowed image types by default, that Ironic considers streamable (or whatever term we wanna pick that\u0027s less ambiguous for \u0027something we can dd to disk without conversion\u0027)\n- Over time, replace things like \"is_raw\" with \"is_streamable\" to disambiguate\n- Treat a \"GPT\" image identical to how we treat a \"raw\" image today\n\n\nWDYT?","commit_id":"a9bd2933da297e73e1d992f175f76efb45fc53eb"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f82939f45dae2778b8df130f1cacc84a66db0f0c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"6d47dfcc_53e05947","updated":"2024-11-25 12:31:42.000000000","message":"As discussed on IRC, I\u0027ll follow-up with a release note.","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"f3e898bdd1a3018ce118442b9bca0d79715e8f51","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"1baf1b4c_63782368","updated":"2024-11-22 14:37:51.000000000","message":"One nit, it needs a release note in case someone has hard coded expected formats, because we\u0027re adding gpt to the list.","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"86bcb41e1e7652c9a142a7c321f7dacd86515d43","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"73441d68_ff9a7c8d","updated":"2024-11-19 15:26:59.000000000","message":"recheck","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"c73e39cdf77f272595f51eae6e9d6cdcb07af463","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"927f34dd_4a9a11be","updated":"2024-11-25 14:31:24.000000000","message":"recheck","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"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":"26caf27186a184273f00f9220601bd50bec409c4","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":6,"id":"8e2c2d09_42384ec2","updated":"2024-11-25 17:49:12.000000000","message":"recheck paramiko.ssh_exception.NoValidConnectionsError: [Errno None] Unable to connect to port 22 on 172.24.5.9\n\nThis is very weird; the OS was clearly booted, but this is also not the paramiko error we have been seeing occassionally either.","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"}],"ironic/common/images.py":[{"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":"81e875ce05263256e997c142eb1654a45719fab4","unresolved":true,"context_lines":[{"line_number":884,"context_line":"        # passed to qemu-img."},{"line_number":885,"context_line":"        # TODO(TheJulia): Add a log entry to warn here at some point in"},{"line_number":886,"context_line":"        # the future as we begin to shift the perception around this."},{"line_number":887,"context_line":"        # See: https://bugs.launchpad.net/ironic/+bug/2074090"},{"line_number":888,"context_line":"        return True"},{"line_number":889,"context_line":"    if expected_format \u003d\u003d \u0027raw\u0027 and actual_format in RAW_IMAGE_FORMATS:"},{"line_number":890,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":6,"id":"96954562_a2fdbd9c","line":887,"updated":"2024-11-20 23:47:51.000000000","message":"now would be a good time to add the log entry if you do another revision","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"f3e898bdd1a3018ce118442b9bca0d79715e8f51","unresolved":false,"context_lines":[{"line_number":884,"context_line":"        # passed to qemu-img."},{"line_number":885,"context_line":"        # TODO(TheJulia): Add a log entry to warn here at some point in"},{"line_number":886,"context_line":"        # the future as we begin to shift the perception around this."},{"line_number":887,"context_line":"        # See: https://bugs.launchpad.net/ironic/+bug/2074090"},{"line_number":888,"context_line":"        return True"},{"line_number":889,"context_line":"    if expected_format \u003d\u003d \u0027raw\u0027 and actual_format in RAW_IMAGE_FORMATS:"},{"line_number":890,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":6,"id":"ed83643e_39a0a5b9","line":887,"in_reply_to":"27691506_a34b5b87","updated":"2024-11-22 14:37:51.000000000","message":"The intention here is to handle cases kindly where someone was trying to ask ironic to process a partition image or a ramdisk booting interface, and they had used ari or aki in the labeling, but the format inspector decides its raw... or gpt potentially (now). Dmitry\u0027s other fix might make this moot now, worth merging this change and maybe doing a test change and ripping out this part of the check to see if we error on it at all now.","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c131c4ed2b7fdbdd5044d9b214c5c8b21e238b7f","unresolved":false,"context_lines":[{"line_number":884,"context_line":"        # passed to qemu-img."},{"line_number":885,"context_line":"        # TODO(TheJulia): Add a log entry to warn here at some point in"},{"line_number":886,"context_line":"        # the future as we begin to shift the perception around this."},{"line_number":887,"context_line":"        # See: https://bugs.launchpad.net/ironic/+bug/2074090"},{"line_number":888,"context_line":"        return True"},{"line_number":889,"context_line":"    if expected_format \u003d\u003d \u0027raw\u0027 and actual_format in RAW_IMAGE_FORMATS:"},{"line_number":890,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":6,"id":"27691506_a34b5b87","line":887,"in_reply_to":"96954562_a2fdbd9c","updated":"2024-11-21 11:51:50.000000000","message":"I\u0027d at least check with Julia on what her intention was.","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"}],"ironic/tests/unit/common/test_images.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"f3e898bdd1a3018ce118442b9bca0d79715e8f51","unresolved":true,"context_lines":[{"line_number":198,"context_line":"        detect_format_mock.assert_called_once_with(\u0027path_tmp\u0027)"},{"line_number":199,"context_line":"        self.assertIn(\"The requested image is not valid for use.\", str(e))"},{"line_number":200,"context_line":"        # Do not disclose the actual error message to evil hackers"},{"line_number":201,"context_line":"        self.assertNotIn(\"I\u0027m a teapot\", str(e))"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"    @mock.patch.object(os, \u0027rename\u0027, autospec\u003dTrue)"},{"line_number":204,"context_line":"    @mock.patch.object(os, \u0027unlink\u0027, autospec\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":6,"id":"47d3eb58_37735c46","line":201,"updated":"2024-11-22 14:37:51.000000000","message":"good check!","commit_id":"669304bc0c6b2762c872b71297480c4b4ffdb554"}]}
