)]}'
{"/COMMIT_MSG":[{"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":"f5db315fcde4038ad4ecb249bf10cffe60144543","unresolved":true,"context_lines":[{"line_number":19,"context_line":"volume_type fields already accept arbitrary strings; all gating"},{"line_number":20,"context_line":"is in driver-level validation logic."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"This does *not* atually do the end enablement, but lays the groundwork"},{"line_number":23,"context_line":"for eventual patterns of support."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Assisted-By: Claude Opus 4.6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5e96cfbb_da2eacbd","line":22,"updated":"2026-06-09 17:35:29.000000000","message":"nit: actually","commit_id":"7f8ac97fd1954fc7f245859e6481449f1aadfed5"}],"ironic/drivers/modules/deploy_utils.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":"f5db315fcde4038ad4ecb249bf10cffe60144543","unresolved":true,"context_lines":[{"line_number":1773,"context_line":"        raise exception.StorageError("},{"line_number":1774,"context_line":"            _(\u0027Node %(node)s has an NVMe-oF boot volume \u0027"},{"line_number":1775,"context_line":"              \u0027defined and no NVMe-oF boot support \u0027"},{"line_number":1776,"context_line":"              \u0027available.\u0027) % {\u0027node\u0027: node.uuid})"},{"line_number":1777,"context_line":"    boot_capability \u003d (\"%s_volume_boot\" % vol_type)"},{"line_number":1778,"context_line":"    deploy_capability \u003d (\"%s_volume_deploy\" % vol_type)"},{"line_number":1779,"context_line":"    vol_uuid \u003d boot_volume[\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"b059d762_4282b610","line":1776,"updated":"2026-06-09 17:35:29.000000000","message":"Just for context: do we support volume connectors at all outside of booting from them? Is there a use case for attaching these as a data disk? Right now, all this code is assuming it\u0027s BfV.","commit_id":"7f8ac97fd1954fc7f245859e6481449f1aadfed5"}],"ironic/drivers/modules/storage/cinder.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":"f5db315fcde4038ad4ecb249bf10cffe60144543","unresolved":true,"context_lines":[{"line_number":267,"context_line":"                     \"for the node, an associated volume_connector \""},{"line_number":268,"context_line":"                     \"type must be valid for NVMe-oF (%(options)s).\") %"},{"line_number":269,"context_line":"                   {\u0027options\u0027: valid_types})"},{"line_number":270,"context_line":"            self._fail_validation(task, msg)"},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"        self._validate_targets(task, found_types, iscsi_boot,"},{"line_number":273,"context_line":"                               fc_boot, nvmeof_boot)"}],"source_content_type":"text/x-python","patch_set":1,"id":"77f82786_cc7a7f1a","line":270,"updated":"2026-06-09 17:35:29.000000000","message":"GR-OSS team review\n\nThere was a lot of concern about the repeated code in this method. While we will not give a review blocking this change moving forward without it being restructured, there would be value here in a DRY refactoring pass later.\n\nIt\u0027s especially confounding that both _validate_targets() and _validate_connectors() exist in a way that doesn\u0027t completely obviate the need for a function body in validate().","commit_id":"7f8ac97fd1954fc7f245859e6481449f1aadfed5"}]}
