)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c7a01da1e5e154f593302e7c9d15c1b2c8e48023","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"2a7139e7_50302ccb","updated":"2023-11-16 17:46:46.000000000","message":"okay, a little more work needed:\n\n\u0027ForceOff\u0027, \u0027GracefulShutdown\u0027, \u0027GracefulRestart\u0027, \u0027ForceRestart\u0027, \u0027Nmi\u0027, \u0027ForceOn\u0027], \u0027operation_apply_time_support\u0027: None, \u0027target_uri\u0027: \u0027/redfish/v1/Systems/2553a972-542d-4420-b712-ee99341a186f/Actions/ComputerSystem.Reset\u0027}}, \u0027_oem_vendors\u0027: None, \u0027_settings\u0027: None, \u0027asset_tag\u0027: None, \u0027bios_version\u0027: \u00271.0.0\u0027, \u0027boot\u0027: {\u0027allowed_values\u0027: [\u0027Pxe\u0027, \u0027Cd\u0027, \u0027Hdd\u0027], \u0027enabled\u0027: \u003cBootSourceOverrideEnabled.CONTINUOUS: \u0027Continuous\u0027\u003e, \u0027http_boot_uri\u0027: None, \u0027mode\u0027: \u003cBootSourceOverrideMode.UEFI: \u0027UEFI\u0027\u003e, \u0027target\u0027: \u003cBootSource.PXE: \u0027Pxe\u0027\u003e}, \u0027description\u0027: None, \u0027hostname\u0027: None, \u0027identity\u0027: \u00272553a972-542d-4420-b712-ee99341a186f\u0027, \u0027indicator_led\u0027: \u003cIndicatorLED.LIT: \u0027Lit\u0027\u003e, \u0027links\u0027: {\u0027oem_vendors\u0027: None}, \u0027maintenance_window\u0027: None, \u0027manufacturer\u0027: \u0027Sushy Emulator\u0027, \u0027memory_summary\u0027: {\u0027health\u0027: None, \u0027size_gib\u0027: 2}, \u0027name\u0027: \u0027node-1\u0027, \u0027part_number\u0027: None, \u0027power_state\u0027: \u003cPowerState.OFF: \u0027Off\u0027\u003e, \u0027serial_number\u0027: None, \u0027sku\u0027: None, \u0027status\u0027: {\u0027health\u0027: \u003cHealth.OK: \u0027OK\u0027\u003e, \u0027health_rollup\u0027: None, \u0027state\u0027: \u003cState.ENABLED: \u0027Enabled\u0027\u003e}, \u0027system_type\u0027: None, \u0027uuid\u0027: \u00272553a972-542d-4420-b712-ee99341a186f\u0027} {{(pid\u003d101853) refresh /opt/stack/sushy/sushy/resources/base.py:694}}\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager [None req-c90647f3-bdca-4ad2-b351-19c6fcf12d24 None None] Unexpected exception occurred while validating deploy driver interface for driver redfish: Node 2d357c15-e83e-40d6-b256-b01fc95178db hardware does not support feature UefiHttp boot, which is required based upon the requested configuration. on node 2d357c15-e83e-40d6-b256-b01fc95178db.: ironic.common.exception.UnsupportedHardwareFeature: Node 2d357c15-e83e-40d6-b256-b01fc95178db hardware does not support feature UefiHttp boot, which is required based upon the requested configuration.\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager Traceback (most recent call last):\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/ironic/ironic/conductor/manager.py\", line 1925, in validate_driver_interfaces\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     iface.validate(task)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/data/venv/lib/python3.10/site-packages/ironic_lib/metrics.py\", line 60, in wrapped\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     result \u003d f(*args, **kwargs)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/ironic/ironic/drivers/modules/agent.py\", line 423, in validate\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     super().validate(task)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/data/venv/lib/python3.10/site-packages/ironic_lib/metrics.py\", line 60, in wrapped\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     result \u003d f(*args, **kwargs)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/ironic/ironic/drivers/modules/agent.py\", line 237, in validate\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     task.driver.boot.validate(task)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/ironic/ironic/drivers/modules/redfish/boot.py\", line 885, in validate\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     self._validate_hardware(task)\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager   File \"/opt/stack/ironic/ironic/drivers/modules/redfish/boot.py\", line 870, in _validate_hardware\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager     raise exception.UnsupportedHardwareFeature(\nNov 16 17:12:27.936900 np0035784706 ironic-conductor[101853]: ERROR ironic.conductor.manager ironic.common.exception.UnsupportedHardwareFeature: Node 2d357c15-e83e-40d6-b256-b01fc95178db hardware does not support feature UefiHttp boot, which is required based upon the requested configuration.\n\nBut not in this code.","commit_id":"890b44c95eb9a7956a767eb7d6988b0cc2d15b17"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"87ca6b2b101a4fad2dfbc8d44bf765cb95f4b2cd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"70455094_5d6cfde4","updated":"2023-11-23 15:48:28.000000000","message":"recheck sushy 4.7.0 has dropped","commit_id":"8d55e38abc415936c1b7df7d7088e7347692d070"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a5f32ad49cb5762611dd0ef82d1f484f67873c78","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"15f5b79b_e94db4e8","updated":"2023-11-27 13:34:29.000000000","message":"refresh requirement update  merged","commit_id":"8d55e38abc415936c1b7df7d7088e7347692d070"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c2efe3cd01e8e0317a13ad762accb693fbda5b8a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"330bbe4a_5ac9fcf0","updated":"2023-11-28 14:00:16.000000000","message":"As an FYI, CI passed on https://review.opendev.org/c/openstack/ironic/+/901090 which asserts the new interface.","commit_id":"c92b2bd2135191c0c1340be5c4347126e42822fe"}],"doc/source/admin/drivers/redfish.rst":[{"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":"50cfb832703a30ca8fb4685aa4b75ce18520eb58","unresolved":true,"context_lines":[{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"c592488e_a67b4948","line":401,"updated":"2023-11-27 23:12:41.000000000","message":"Can we put some detail here, along the lines of what we talked about in IRC, about why this isn\u0027t possible without significant (and ugly) engineering effort? Even if it\u0027s in a contributor doc and linked to from here. Just would be nice to preserve that context for future folks.","commit_id":"c92b2bd2135191c0c1340be5c4347126e42822fe"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2d53ed9686c884e9aea6304886edda6c55a7649e","unresolved":false,"context_lines":[{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"af313250_6375d833","line":401,"in_reply_to":"078ed520_be7461b1","updated":"2023-11-29 16:50:37.000000000","message":"Done, added to line 406.","commit_id":"c92b2bd2135191c0c1340be5c4347126e42822fe"},{"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":"5c5fc6e90d3d2337edd6f97342e8a55638edd357","unresolved":true,"context_lines":[{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"078ed520_be7461b1","line":401,"in_reply_to":"3997b74d_1a651f0b","updated":"2023-11-28 16:21:51.000000000","message":"Looked at this, it\u0027s definitely a little more clear in context, but I think it\u0027d be more clear if we changed line 400 to read something like:\n\n\"* Configuration drive is not supported as in-band access to boot media is not available inside the OS without virtual media.\"","commit_id":"c92b2bd2135191c0c1340be5c4347126e42822fe"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"4ed732d000a180f96e284844875afd25110cb32b","unresolved":true,"context_lines":[{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"3997b74d_1a651f0b","line":401,"in_reply_to":"c592488e_a67b4948","updated":"2023-11-28 01:34:40.000000000","message":"Line 404, I could just likely link to the constraints in question or entirely re-state them. :)","commit_id":"c92b2bd2135191c0c1340be5c4347126e42822fe"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":391,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"The ``redfish-https`` boot interface is very similar to the"},{"line_number":394,"context_line":"``redfish-virtual-media`` boot interface. In this driver, we compose an ISO"},{"line_number":395,"context_line":"image, and request the BMC to inform the UEFI firmware to boot the Ironic"},{"line_number":396,"context_line":"ramdisk, or a other ramdisk image."},{"line_number":397,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"85c112a2_6085bf3e","line":394,"updated":"2023-12-07 10:19:27.000000000","message":"Interesting, I thought it would boot grub, not an ISO. Is supporting ISO a common thing?","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09f1604ceae1ae8019c62042e6c494dab5b1d7f1","unresolved":false,"context_lines":[{"line_number":391,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"The ``redfish-https`` boot interface is very similar to the"},{"line_number":394,"context_line":"``redfish-virtual-media`` boot interface. In this driver, we compose an ISO"},{"line_number":395,"context_line":"image, and request the BMC to inform the UEFI firmware to boot the Ironic"},{"line_number":396,"context_line":"ramdisk, or a other ramdisk image."},{"line_number":397,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"cc7930c8_6554fce4","line":394,"in_reply_to":"1b54bbd9_d8fd2409","updated":"2024-01-03 23:00:29.000000000","message":"Added prose to this point.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0f6452b2340408999aeae1c0d8f0c74d7f7e2375","unresolved":true,"context_lines":[{"line_number":391,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"The ``redfish-https`` boot interface is very similar to the"},{"line_number":394,"context_line":"``redfish-virtual-media`` boot interface. In this driver, we compose an ISO"},{"line_number":395,"context_line":"image, and request the BMC to inform the UEFI firmware to boot the Ironic"},{"line_number":396,"context_line":"ramdisk, or a other ramdisk image."},{"line_number":397,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"1b54bbd9_d8fd2409","line":394,"in_reply_to":"85c112a2_6085bf3e","updated":"2023-12-13 15:55:05.000000000","message":"So the couple vendor examples I looked at where Redfish HTTP URI booting was leveraged, did appear to all center around use of an ISO image as opposed to just pointing to a boot loader. Where as when you go look at practical HTTPBoot over network examples, they are all just a bootloader. The attempt here is to sort of mirror that odd dichotomy.\n\nThe patch after this one after will give folks the ability to boot from http directly using dhcp (or if they have static records). I\u0027d kind of prefer to keep in line with published examples unless someone comes to us with a good reason to have another option.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":397,"context_line":""},{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"}],"source_content_type":"text/x-rst","patch_set":10,"id":"fbc1f562_c76fb91d","line":400,"updated":"2023-12-07 10:19:27.000000000","message":"nit: s/which/while/ ?","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09f1604ceae1ae8019c62042e6c494dab5b1d7f1","unresolved":false,"context_lines":[{"line_number":397,"context_line":""},{"line_number":398,"context_line":"This interface has some basic constraints."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"* There is no configuration drive functionality, which Virtual Media did"},{"line_number":401,"context_line":"  help provide such functionality."},{"line_number":402,"context_line":"* This interface *is* dependent upon BMC, EFI Firmware, and Bootloader,"},{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"}],"source_content_type":"text/x-rst","patch_set":10,"id":"29cafa91_fb76e8f4","line":400,"in_reply_to":"fbc1f562_c76fb91d","updated":"2024-01-03 23:00:29.000000000","message":"Done","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"},{"line_number":405,"context_line":"  deploy interface when using Network Booting."},{"line_number":406,"context_line":"* Configuration drives for the deployment ramdisk are not supported as"},{"line_number":407,"context_line":"  there is no means to provide access to boot media for an operating"},{"line_number":408,"context_line":"  system without virtual media."},{"line_number":409,"context_line":"* This is a UEFI-Only boot interface. No legacy boot is possible with"}],"source_content_type":"text/x-rst","patch_set":10,"id":"381ef084_37aece75","line":406,"updated":"2023-12-07 10:19:27.000000000","message":"Duplicate with point 1?","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0f6452b2340408999aeae1c0d8f0c74d7f7e2375","unresolved":true,"context_lines":[{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"},{"line_number":405,"context_line":"  deploy interface when using Network Booting."},{"line_number":406,"context_line":"* Configuration drives for the deployment ramdisk are not supported as"},{"line_number":407,"context_line":"  there is no means to provide access to boot media for an operating"},{"line_number":408,"context_line":"  system without virtual media."},{"line_number":409,"context_line":"* This is a UEFI-Only boot interface. No legacy boot is possible with"}],"source_content_type":"text/x-rst","patch_set":10,"id":"d6125ce8_856ecfaa","line":406,"in_reply_to":"381ef084_37aece75","updated":"2023-12-13 15:55:05.000000000","message":"Somewhat, JayF requested I explicitly stress it. This was the added one, so maybe the first one can be removed.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09f1604ceae1ae8019c62042e6c494dab5b1d7f1","unresolved":false,"context_lines":[{"line_number":403,"context_line":"  which means we may not see additional embedded files an contents in"},{"line_number":404,"context_line":"  an ISO image. This is the same basic constraint over the ``ramdisk``"},{"line_number":405,"context_line":"  deploy interface when using Network Booting."},{"line_number":406,"context_line":"* Configuration drives for the deployment ramdisk are not supported as"},{"line_number":407,"context_line":"  there is no means to provide access to boot media for an operating"},{"line_number":408,"context_line":"  system without virtual media."},{"line_number":409,"context_line":"* This is a UEFI-Only boot interface. No legacy boot is possible with"}],"source_content_type":"text/x-rst","patch_set":10,"id":"c3ede10d_ca84dd92","line":406,"in_reply_to":"d6125ce8_856ecfaa","updated":"2024-01-03 23:00:29.000000000","message":"First one was more to the point, this one is more an elaboration, going to rely upon the to the point prose.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"}],"ironic/drivers/modules/redfish/boot.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":807,"context_line":"            missing dependencies"},{"line_number":808,"context_line":"        \"\"\""},{"line_number":809,"context_line":"        super(RedfishHttpsBoot, self).__init__()"},{"line_number":810,"context_line":"        if not sushy:"},{"line_number":811,"context_line":"            raise exception.DriverLoadError("},{"line_number":812,"context_line":"                driver\u003d\u0027redfish\u0027,"},{"line_number":813,"context_line":"                reason\u003d_(\u0027Unable to import the sushy library\u0027))"}],"source_content_type":"text/x-python","patch_set":10,"id":"8f040ca7_2ee46e2a","line":810,"updated":"2023-12-07 10:19:27.000000000","message":"nit: this should be dropped everywhere: sushy is a requirement.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0f6452b2340408999aeae1c0d8f0c74d7f7e2375","unresolved":true,"context_lines":[{"line_number":807,"context_line":"            missing dependencies"},{"line_number":808,"context_line":"        \"\"\""},{"line_number":809,"context_line":"        super(RedfishHttpsBoot, self).__init__()"},{"line_number":810,"context_line":"        if not sushy:"},{"line_number":811,"context_line":"            raise exception.DriverLoadError("},{"line_number":812,"context_line":"                driver\u003d\u0027redfish\u0027,"},{"line_number":813,"context_line":"                reason\u003d_(\u0027Unable to import the sushy library\u0027))"}],"source_content_type":"text/x-python","patch_set":10,"id":"eaf40b84_4ba7a36f","line":810,"in_reply_to":"8f040ca7_2ee46e2a","updated":"2023-12-13 15:55:05.000000000","message":"good point!","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09f1604ceae1ae8019c62042e6c494dab5b1d7f1","unresolved":false,"context_lines":[{"line_number":807,"context_line":"            missing dependencies"},{"line_number":808,"context_line":"        \"\"\""},{"line_number":809,"context_line":"        super(RedfishHttpsBoot, self).__init__()"},{"line_number":810,"context_line":"        if not sushy:"},{"line_number":811,"context_line":"            raise exception.DriverLoadError("},{"line_number":812,"context_line":"                driver\u003d\u0027redfish\u0027,"},{"line_number":813,"context_line":"                reason\u003d_(\u0027Unable to import the sushy library\u0027))"}],"source_content_type":"text/x-python","patch_set":10,"id":"4f34941f_8834d904","line":810,"in_reply_to":"eaf40b84_4ba7a36f","updated":"2024-01-03 23:00:29.000000000","message":"Done.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":882,"context_line":"        :raises: InvalidParameterValue on malformed parameter(s)"},{"line_number":883,"context_line":"        :raises: MissingParameterValue on missing parameter(s)"},{"line_number":884,"context_line":"        \"\"\""},{"line_number":885,"context_line":"        self._validate_hardware(task)"},{"line_number":886,"context_line":"        self._validate_driver_info(task)"},{"line_number":887,"context_line":"        self._validate_instance_info(task)"},{"line_number":888,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"cc242cbf_e14d46fa","line":885,"updated":"2023-12-07 10:19:27.000000000","message":"validate() is a synchronous call and should not access the BMC","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":926,"context_line":""},{"line_number":927,"context_line":"        if manager_utils.is_fast_track(task):"},{"line_number":928,"context_line":"            LOG.debug(\u0027Fast track operation for node %s, not setting up \u0027"},{"line_number":929,"context_line":"                      \u0027a HTTP Boot url\u0027, node.uuid)"},{"line_number":930,"context_line":"            return"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"        can_config \u003d d_info.pop(\u0027can_provide_config\u0027, True)"}],"source_content_type":"text/x-python","patch_set":10,"id":"e1a98abe_b2850284","line":929,"updated":"2023-12-07 10:19:27.000000000","message":"nit: \"HTTP boot URL\"","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":929,"context_line":"                      \u0027a HTTP Boot url\u0027, node.uuid)"},{"line_number":930,"context_line":"            return"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"        can_config \u003d d_info.pop(\u0027can_provide_config\u0027, True)"},{"line_number":933,"context_line":"        if can_config:"},{"line_number":934,"context_line":"            manager_utils.add_secret_token(node, pregenerated\u003dTrue)"},{"line_number":935,"context_line":"            node.save()"}],"source_content_type":"text/x-python","patch_set":10,"id":"78ae23f3_ba4ec602","line":932,"updated":"2023-12-07 10:19:27.000000000","message":"nit: a lot of copy-paste in both prepare_ methods, please consider creating helper functions or a common base class.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":972,"context_line":"        :returns: None"},{"line_number":973,"context_line":"        \"\"\""},{"line_number":974,"context_line":"        if manager_utils.is_fast_track(task):"},{"line_number":975,"context_line":"            LOG.debug(\u0027Fast track operation for node %s, not ejecting \u0027"},{"line_number":976,"context_line":"                      \u0027any devices\u0027, task.node.uuid)"},{"line_number":977,"context_line":"            return"},{"line_number":978,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"4e885aa2_afa8ebc0","line":975,"updated":"2023-12-07 10:19:27.000000000","message":"nit: \"Eject\" might not be the right term here.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4fa44ea1d82d97b51629841878c06ed19bfaf509","unresolved":false,"context_lines":[{"line_number":1049,"context_line":"        self._clean_up(task)"},{"line_number":1050,"context_line":"        boot_mode_utils.deconfigure_secure_boot_if_needed(task)"},{"line_number":1051,"context_line":""},{"line_number":1052,"context_line":"    @classmethod"},{"line_number":1053,"context_line":"    def _set_boot_device(cls, task, device, persistent\u003dFalse,"},{"line_number":1054,"context_line":"                         http_boot_url\u003dNone):"},{"line_number":1055,"context_line":"        \"\"\"Set the boot device for a node."}],"source_content_type":"text/x-python","patch_set":12,"id":"e4cee6ac_364f8cd6","line":1052,"updated":"2024-01-15 08:26:51.000000000","message":"nit: could be just a function?","commit_id":"041a7d7064491958278725123af0c1b8fa8aefe5"}],"releasenotes/notes/add-redfish-httpboot-support-8d516158860c9d43.yaml":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c6cf60d35819f791fd023fe19e5fcb99330d4f62","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    for the next boot operation."},{"line_number":7,"context_line":"upgrade:"},{"line_number":8,"context_line":"  - |"},{"line_number":9,"context_line":"    Ironic now requires Sushy library version 4.7.0 as the minimum version,"},{"line_number":10,"context_line":"    which added support for the ``ComptuerSystem`` resource field"},{"line_number":11,"context_line":"    ``HttpBootUri``. This is now used to support Redfish based HTTPBoot."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"1b857fa7_c2ca572f","line":9,"updated":"2023-12-07 10:19:27.000000000","message":"nit: we don\u0027t normally issue release notes for trivial version bumps (unless it\u0027s major probably).","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0f6452b2340408999aeae1c0d8f0c74d7f7e2375","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    for the next boot operation."},{"line_number":7,"context_line":"upgrade:"},{"line_number":8,"context_line":"  - |"},{"line_number":9,"context_line":"    Ironic now requires Sushy library version 4.7.0 as the minimum version,"},{"line_number":10,"context_line":"    which added support for the ``ComptuerSystem`` resource field"},{"line_number":11,"context_line":"    ``HttpBootUri``. This is now used to support Redfish based HTTPBoot."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"0a372b01_58cc1ae6","line":9,"in_reply_to":"1b857fa7_c2ca572f","updated":"2023-12-13 15:55:05.000000000","message":"Sometimes we do since some folks try to track/consider requirements.txt.","commit_id":"7c74f7f238a9bf2b843ddb1384b610f848d35181"}]}
