)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"b0efc28dc565b295f7d4c8a3411d1db03d14f4c8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f2255522_15588bd3","updated":"2024-12-20 10:42:09.000000000","message":"2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh   File \"/opt/stack/tempest/tempest/lib/common/ssh.py\", line 136, in _get_ssh_connection\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh     ssh.connect(self.host, port\u003dself.port, username\u003dself.username,\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh   File \"/opt/stack/tempest/.tox/tempest/lib/python3.12/site-packages/paramiko/client.py\", line 457, in connect\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh     server_key \u003d t.get_remote_server_key()\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh                  ^^^^^^^^^^^^^^^^^^^^^^^^^\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh   File \"/opt/stack/tempest/.tox/tempest/lib/python3.12/site-packages/paramiko/transport.py\", line 953, in get_remote_server_key\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh     raise SSHException(\"No existing session\")\n2024-12-20 04:30:14.046 97947 ERROR tempest.lib.common.ssh paramiko.ssh_exception.SSHException: No existing session\n\nrecheck weird issue in paramiko","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"f68e609def51b87f81b0002059dc77d004f8ff56","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f325c102_56ec2fdf","updated":"2025-05-02 10:47:27.000000000","message":"Based on the discussions we had upstream, I\u0027ll be updating the code in `redfish/firmware.py` to handle the case of unresponsive bmc when doing updates.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"21a54f016194e4b9d5520e180fe5ecd0d3b5034c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"67c93cbe_f87c6aec","updated":"2024-12-31 06:47:47.000000000","message":"If the firmware is updated by human ironic node should put into maintenance mode and no workloads can be scheduled to it unless update finished and operator validated node is back and only than remove maintenance flag.\nIf this is done by ironic automatically than its better to add a waiter after firmware update that will check that update finished successfully and node back online and responsive.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"fb1dc643456bda63ece8193677e656d6777780b0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0afeddf6_57dee382","updated":"2024-12-20 03:23:33.000000000","message":"Looking for feedback, to see if this approach would be valid.\nStill trying to handle problem when the node fails with PowerStateFailure in node_wait_for_power_state.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"f6fa268ce19749aa54dd617da75179fe218140b6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0e1f8a11_543d8b75","updated":"2025-01-07 16:34:02.000000000","message":"Oh, add a test! \n\nOnce you figure out which path, of course.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"c59cd6aad4e97a113a91e60da59de26beef8d673","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0acd2c1a_3707bc34","updated":"2024-12-23 11:10:55.000000000","message":"recheck , seems like the previous one didn\u0027t run ...","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":35929,"name":"Mahnoor Asghar","display_name":"Mahnoor Asghar","email":"masghar@redhat.com","username":"mahnoorasghar"},"change_message_id":"78fba6342fb1592f02e5bb444b991e82276e2ead","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"84a1aa4a_7268e639","in_reply_to":"67c93cbe_f87c6aec","updated":"2025-01-02 09:42:39.000000000","message":"The firmware update is done by the user via ironic, as I understand it. \nI think there is no way to check that the update has been done successfully until the BMC comes back online. The logic waits for 120 seconds, and retries 5 times, waiting for the BMC to come back online.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"71a495b9aa95ac49080a2927418559efc8df382e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f72004bc_9deed731","in_reply_to":"84a1aa4a_7268e639","updated":"2025-01-07 14:36:42.000000000","message":"This is an ironic managed firmware upgrade as part of a workflow, not a user driven action outside of ironic where maintenance would make sense. The issue here, and the red herring created by where the patch is, that we\u0027re having to detect this at the client being created, not when we\u0027re trying to perform the action. :(","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"806331150957210790c9fdf014510c2079975e5b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0626d1ca_76574cb5","in_reply_to":"84a1aa4a_7268e639","updated":"2025-01-13 11:11:51.000000000","message":"Vasyl, I\u0027m currently testing other approaches based on the review that Julia and Dmitry provided. \nKeep in mind this approach here doesn\u0027t consider ipmi, only redfish.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"d4e25deb2f700514877622f72ad1847d0f6030bd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e47f731a_768398aa","in_reply_to":"f72004bc_9deed731","updated":"2025-01-13 08:12:13.000000000","message":"I wondered if we could add some waiter and call it right after we push new firmware. And treat firmware update as successful only when ipmi is back.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"change_message_id":"4e45981628c9ccee7850be03256f23af409d606d","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ade3eeeb_ac1a5edc","updated":"2025-05-05 15:07:22.000000000","message":"It seems like we could use a wait operation here. We\u0027ve got a few of those in the redfish side. We should likely have a generic \"wait on job\" thing and pass it a Redfish job to wait for.","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"404cbddf36a92bd30c02b9639a68eeb018dee98f","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"40a39963_59531e08","in_reply_to":"ade3eeeb_ac1a5edc","updated":"2025-05-05 15:12:44.000000000","message":"Can you share some links ? (Are you talking about Tasks?, if this is the case I remember they aren\u0027t something we can relay on, sometimes they finish too fast, and we wouldn\u0027t have information when searching about it \u003d( )","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"330c3b68cb63a2ab44c5cc459c6ff2e87867e1c9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"8b6dee2e_1dc07a48","updated":"2025-07-08 14:00:52.000000000","message":"LGTM, but please don\u0027t forget the follow-up because unconditional 5 minutes sleep is pretty sad.","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"},{"author":{"_account_id":35929,"name":"Mahnoor Asghar","display_name":"Mahnoor Asghar","email":"masghar@redhat.com","username":"mahnoorasghar"},"change_message_id":"939831145254a292951c0778b6d8e341d9e34085","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"56d3f97c_49951890","updated":"2025-07-09 11:03:01.000000000","message":"Seeing this in the metal-integration jobs:\n  - package glibc-gconv-extra-2.34-210.el9.x86_64 from baseos requires glibc(x86-64) \u003d 2.34-210.el9, but none of the providers can be installed","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"b46a5a00a6634b225f6d154fec7455fe55f6729a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d351dd83_9a6f22a1","updated":"2025-07-09 09:49:58.000000000","message":"recheck","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"d17602f274b26beac067e287dc24abeeaddeaf01","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"b75f5d45_a0f0970a","updated":"2025-07-09 11:38:37.000000000","message":"recheck issue with centos repos should be fixed, hopefully","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"10b30dafe74d8a6f8edc231494cc111bdac20630","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"9ca7729f_0be024eb","updated":"2025-07-09 12:57:33.000000000","message":"recheck metal3","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"4953685f43b7ad7ab84d385e2ef43522a284cd58","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"28bcb242_d20e2bc4","updated":"2025-07-08 20:28:54.000000000","message":"recheck metal3 issue should be ok","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"}],"ironic/drivers/modules/redfish/boot.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":"71a495b9aa95ac49080a2927418559efc8df382e","unresolved":true,"context_lines":[{"line_number":691,"context_line":"        \"\"\""},{"line_number":692,"context_line":"        # No unmanaged fallback for virtual media"},{"line_number":693,"context_line":"        self._validate_driver_info(task)"},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"    @tenacity.retry("},{"line_number":696,"context_line":"        retry\u003dtenacity.retry_if_exception_type("},{"line_number":697,"context_line":"            sushy.exceptions.BadRequestError),"},{"line_number":698,"context_line":"        stop\u003dtenacity.stop_after_attempt(5),"},{"line_number":699,"context_line":"        wait\u003dtenacity.wait_fixed(120),"},{"line_number":700,"context_line":"        reraise\u003dTrue"},{"line_number":701,"context_line":"    )"},{"line_number":702,"context_line":"    def prepare_ramdisk(self, task, ramdisk_params):"},{"line_number":703,"context_line":"        \"\"\"Prepares the boot of deploy or rescue ramdisk over virtual media."},{"line_number":704,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"88e8a815_510adf3b","line":701,"range":{"start_line":694,"start_character":0,"end_line":701,"end_character":5},"updated":"2025-01-07 14:36:42.000000000","message":"I\u0027ll be honest, this makes me super nervous as a decorator here.\n\nI\u0027d prefer tunable values as well from configuration if at all possible.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"f68e609def51b87f81b0002059dc77d004f8ff56","unresolved":false,"context_lines":[{"line_number":691,"context_line":"        \"\"\""},{"line_number":692,"context_line":"        # No unmanaged fallback for virtual media"},{"line_number":693,"context_line":"        self._validate_driver_info(task)"},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"    @tenacity.retry("},{"line_number":696,"context_line":"        retry\u003dtenacity.retry_if_exception_type("},{"line_number":697,"context_line":"            sushy.exceptions.BadRequestError),"},{"line_number":698,"context_line":"        stop\u003dtenacity.stop_after_attempt(5),"},{"line_number":699,"context_line":"        wait\u003dtenacity.wait_fixed(120),"},{"line_number":700,"context_line":"        reraise\u003dTrue"},{"line_number":701,"context_line":"    )"},{"line_number":702,"context_line":"    def prepare_ramdisk(self, task, ramdisk_params):"},{"line_number":703,"context_line":"        \"\"\"Prepares the boot of deploy or rescue ramdisk over virtual media."},{"line_number":704,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"b820a885_2bb23495","line":701,"range":{"start_line":694,"start_character":0,"end_line":701,"end_character":5},"in_reply_to":"88e8a815_510adf3b","updated":"2025-05-02 10:47:27.000000000","message":"Acknowledged","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"71a495b9aa95ac49080a2927418559efc8df382e","unresolved":true,"context_lines":[{"line_number":722,"context_line":""},{"line_number":723,"context_line":"        d_info \u003d _parse_driver_info(node)"},{"line_number":724,"context_line":"        try:"},{"line_number":725,"context_line":"            system \u003d redfish_utils.get_system(task.node)"},{"line_number":726,"context_line":"            managers \u003d system.managers"},{"line_number":727,"context_line":"            self._validate_vendor(task, managers)"},{"line_number":728,"context_line":"        except sushy.exceptions.BadRequestError as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"058d8097_c6acfb70","line":725,"updated":"2025-01-07 14:36:42.000000000","message":"So based upon this, it sounds like the the client creation is failing. At a minimum, we likely need to put some inline notes in place for future context.\n\nA cached client shouldn\u0027t be an issue here, since we end up re-calling an explicit get_system here in sushy, which in turn re-retrieves the state to re-map it. https://github.com/openstack/sushy/blob/master/sushy/resources/base.py#L554\n\nSee: https://github.com/openstack/ironic/blob/master/ironic/drivers/modules/redfish/utils.py#L421-L426 as maybe a place we should be looking instead?!\n\n----\n\nUpdate:\n\nI\u0027ve left three different version of comments as I\u0027ve thought about this, and I think it might be better to try and do this down inside of redfish_utils, generally.  Here we\u0027re just doing it as part of the workflow, which only navigates the the \"bmc is in a bad state\" for this specific case, where as we *likely* need to try and detect it when we instantiate the client object out of the cache. That way it stays a hidden detail to the higher level workflow code, and generally better protects the interaction.\n\nI... wonder.. if that might also help the other power state \"oh, the bmc is out to lunch\" issues as well since apparently some will bad request or just not show the power state change for 5-ish minutes because the update is waiting for the Power-On Self-Test to complete.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"f68e609def51b87f81b0002059dc77d004f8ff56","unresolved":false,"context_lines":[{"line_number":722,"context_line":""},{"line_number":723,"context_line":"        d_info \u003d _parse_driver_info(node)"},{"line_number":724,"context_line":"        try:"},{"line_number":725,"context_line":"            system \u003d redfish_utils.get_system(task.node)"},{"line_number":726,"context_line":"            managers \u003d system.managers"},{"line_number":727,"context_line":"            self._validate_vendor(task, managers)"},{"line_number":728,"context_line":"        except sushy.exceptions.BadRequestError as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"f3d1444d_779a82c9","line":725,"in_reply_to":"058d8097_c6acfb70","updated":"2025-05-02 10:47:27.000000000","message":"Acknowledged","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"71a495b9aa95ac49080a2927418559efc8df382e","unresolved":true,"context_lines":[{"line_number":752,"context_line":"            ramdisk_params[\u0027ipa-agent-token\u0027] \u003d \\"},{"line_number":753,"context_line":"                node.driver_internal_info[\u0027agent_secret_token\u0027]"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"        manager_utils.node_power_action(task, states.POWER_OFF)"},{"line_number":756,"context_line":""},{"line_number":757,"context_line":"        deploy_nic_mac \u003d deploy_utils.get_single_nic_with_vif_port_id(task)"},{"line_number":758,"context_line":"        if deploy_nic_mac is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"4ad7ac30_e17bc14f","line":755,"updated":"2025-01-07 14:36:42.000000000","message":"When we discussed this, I thought this was the action/issue, the actual power actions. Given the re-instantiation of a client object from the cache is always going to re-retrieve the latest state, I guess it is unlikely to hit power here, unless the BMC is still up and suddenly crashes out, or... something.","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"f68e609def51b87f81b0002059dc77d004f8ff56","unresolved":false,"context_lines":[{"line_number":752,"context_line":"            ramdisk_params[\u0027ipa-agent-token\u0027] \u003d \\"},{"line_number":753,"context_line":"                node.driver_internal_info[\u0027agent_secret_token\u0027]"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"        manager_utils.node_power_action(task, states.POWER_OFF)"},{"line_number":756,"context_line":""},{"line_number":757,"context_line":"        deploy_nic_mac \u003d deploy_utils.get_single_nic_with_vif_port_id(task)"},{"line_number":758,"context_line":"        if deploy_nic_mac is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"93b854cb_14c49fe7","line":755,"in_reply_to":"4ad7ac30_e17bc14f","updated":"2025-05-02 10:47:27.000000000","message":"Acknowledged","commit_id":"1de71e7536d5d1538bf2b76f04b74fb656384590"},{"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":"fede206278dea669bf05025c1d88f4f4b5448ab8","unresolved":true,"context_lines":[{"line_number":716,"context_line":"        d_info \u003d _parse_driver_info(node)"},{"line_number":717,"context_line":"        system \u003d redfish_utils.get_system(task.node)"},{"line_number":718,"context_line":"        managers \u003d system.managers"},{"line_number":719,"context_line":""},{"line_number":720,"context_line":"        self._validate_vendor(task, managers)"},{"line_number":721,"context_line":""},{"line_number":722,"context_line":"        if manager_utils.is_fast_track(task):"}],"source_content_type":"text/x-python","patch_set":2,"id":"d5610980_482a4ef5","side":"PARENT","line":719,"updated":"2025-05-05 22:29:55.000000000","message":"unintentional?","commit_id":"1bc466e30a27fe9cba032f9e63fbd6762ddd16df"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"fc22e7acb137aa804ac2b7df4b3c14a31ae74abe","unresolved":false,"context_lines":[{"line_number":716,"context_line":"        d_info \u003d _parse_driver_info(node)"},{"line_number":717,"context_line":"        system \u003d redfish_utils.get_system(task.node)"},{"line_number":718,"context_line":"        managers \u003d system.managers"},{"line_number":719,"context_line":""},{"line_number":720,"context_line":"        self._validate_vendor(task, managers)"},{"line_number":721,"context_line":""},{"line_number":722,"context_line":"        if manager_utils.is_fast_track(task):"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff72a04_753777f9","side":"PARENT","line":719,"in_reply_to":"d5610980_482a4ef5","updated":"2025-05-06 12:04:53.000000000","message":"yup!","commit_id":"1bc466e30a27fe9cba032f9e63fbd6762ddd16df"}],"ironic/drivers/modules/redfish/firmware.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":"fede206278dea669bf05025c1d88f4f4b5448ab8","unresolved":true,"context_lines":[{"line_number":242,"context_line":"            LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":243,"context_line":"                      \u0027seconds before proceeding to reboot the node to \u0027"},{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"cafaee24_1bc67f68","line":245,"updated":"2025-05-05 22:29:55.000000000","message":"IMO this is needs a node-level override as it can be hardware dependent.","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"d67f0c14d44fed51fa497047957ea4f8b4bdad56","unresolved":false,"context_lines":[{"line_number":242,"context_line":"            LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":243,"context_line":"                      \u0027seconds before proceeding to reboot the node to \u0027"},{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"b873ae60_b9b39869","line":245,"in_reply_to":"596d50fd_00899731","updated":"2025-05-23 11:15:38.000000000","message":"Done","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"3989e06686443a550eb45a2d434bbc305f912f92","unresolved":true,"context_lines":[{"line_number":242,"context_line":"            LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":243,"context_line":"                      \u0027seconds before proceeding to reboot the node to \u0027"},{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"d4e3eba2_4f6c150e","line":245,"in_reply_to":"a770392a_ca128c03","updated":"2025-05-11 22:59:18.000000000","message":"@jay@jvf.cc do you think we could go with a follow-up to this adding the node-level override? the way this patch is we can safely backport to old versions since we are only adding a config option to handle, but if we add a node-level override here would have changes on driver-info, thoughts?","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"fc22e7acb137aa804ac2b7df4b3c14a31ae74abe","unresolved":true,"context_lines":[{"line_number":242,"context_line":"            LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":243,"context_line":"                      \u0027seconds before proceeding to reboot the node to \u0027"},{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"a770392a_ca128c03","line":245,"in_reply_to":"cafaee24_1bc67f68","updated":"2025-05-06 12:04:53.000000000","message":"sure, I will work on it and update the patch (will probably on push things next week, since I will be out Wed-Fri this week)","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"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":"e7ff72857dceeb464d62c8560b526cf698b7d074","unresolved":true,"context_lines":[{"line_number":242,"context_line":"            LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":243,"context_line":"                      \u0027seconds before proceeding to reboot the node to \u0027"},{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"596d50fd_00899731","line":245,"in_reply_to":"d4e3eba2_4f6c150e","updated":"2025-05-12 14:32:28.000000000","message":"I mean, as long as that follow-up is immediate. This is a setting that is inherently hardware independent, so it\u0027s not very useful in heterogenous environmenst as it sits. I just don\u0027t want us to lose sight of that.","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"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":"fede206278dea669bf05025c1d88f4f4b5448ab8","unresolved":true,"context_lines":[{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":250,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":2,"id":"60254803_8438fa33","line":247,"updated":"2025-05-05 22:29:55.000000000","message":"Is the node locked during this whole process?","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"d67f0c14d44fed51fa497047957ea4f8b4bdad56","unresolved":false,"context_lines":[{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":250,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":2,"id":"453d2e86_12266369","line":247,"in_reply_to":"0a7f8dd4_cc14b437","updated":"2025-05-23 11:15:38.000000000","message":"at least from what I saw in the logs, yes","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"3989e06686443a550eb45a2d434bbc305f912f92","unresolved":true,"context_lines":[{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":250,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":2,"id":"0a7f8dd4_cc14b437","line":247,"in_reply_to":"1733632c_4d17b180","updated":"2025-05-11 22:59:18.000000000","message":"I will run some tests tomorrow and report back about this, since I was out most of the time last week.","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"fc22e7acb137aa804ac2b7df4b3c14a31ae74abe","unresolved":true,"context_lines":[{"line_number":244,"context_line":"                      \u0027complete the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":245,"context_line":"            time.sleep(CONF.redfish.firmware_update_wait_unresponsive_bmc)"},{"line_number":246,"context_line":"            LOG.debug(\u0027Wait completed. Proceeding to reboot the node to \u0027"},{"line_number":247,"context_line":"                      \u0027complete the step\u0027)"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":250,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1733632c_4d17b180","line":247,"in_reply_to":"60254803_8438fa33","updated":"2025-05-06 12:04:53.000000000","message":"let me double check that, but I do think it was.","commit_id":"ef37d5c9d6b5d6071e046cce2b33bae15ddf4cc3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39919c6fac7b8319ba99b730b81cbdbc164a368c","unresolved":false,"context_lines":[{"line_number":239,"context_line":"        # In case the node has unresponsive_bmc_wait set we give priority over"},{"line_number":240,"context_line":"        # the configuration option."},{"line_number":241,"context_line":"        wait_unres_bmc \u003d ("},{"line_number":242,"context_line":"            node.driver_info.get(\u0027unresponsive_bmc_wait\u0027)"},{"line_number":243,"context_line":"            or CONF.redfish.firmware_update_wait_unresponsive_bmc"},{"line_number":244,"context_line":"        )"},{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"6911494c_e490badc","line":242,"updated":"2025-05-28 10:14:34.000000000","message":"Why no firmware_update prefix here? The option is not applied to any operation.","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"cea403bf052bf5fce04cc2186221287675ca9156","unresolved":false,"context_lines":[{"line_number":239,"context_line":"        # In case the node has unresponsive_bmc_wait set we give priority over"},{"line_number":240,"context_line":"        # the configuration option."},{"line_number":241,"context_line":"        wait_unres_bmc \u003d ("},{"line_number":242,"context_line":"            node.driver_info.get(\u0027unresponsive_bmc_wait\u0027)"},{"line_number":243,"context_line":"            or CONF.redfish.firmware_update_wait_unresponsive_bmc"},{"line_number":244,"context_line":"        )"},{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f6c1a88_3f30f4d2","line":242,"in_reply_to":"6911494c_e490badc","updated":"2025-05-28 11:19:50.000000000","message":"I thought it would be too long","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39919c6fac7b8319ba99b730b81cbdbc164a368c","unresolved":false,"context_lines":[{"line_number":244,"context_line":"        )"},{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node to complete \u0027"},{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"faa7c0ec_c0e09ae0","line":247,"updated":"2025-05-28 10:14:34.000000000","message":"Please log the node UUID","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"cea403bf052bf5fce04cc2186221287675ca9156","unresolved":false,"context_lines":[{"line_number":244,"context_line":"        )"},{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node to complete \u0027"},{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3370f5c7_f459dc26","line":247,"in_reply_to":"faa7c0ec_c0e09ae0","updated":"2025-05-28 11:19:50.000000000","message":"ack","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39919c6fac7b8319ba99b730b81cbdbc164a368c","unresolved":false,"context_lines":[{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node to complete \u0027"},{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"f73a47a4_6776bbb5","line":248,"updated":"2025-05-28 10:14:34.000000000","message":"Rather than unconditionally wait for 5 minutes, can we somehow detect if BMC is okay? Like, by trying to read something from it?\n\nIf it does not work for some reason, it\u0027s worth explaining it in the commit message","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"cea403bf052bf5fce04cc2186221287675ca9156","unresolved":false,"context_lines":[{"line_number":245,"context_line":"        LOG.debug(\u0027BMC firmware update in progress. Waiting %(wait_time)s \u0027"},{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node to complete \u0027"},{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"},{"line_number":251,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"b7ec6d70_d5eec340","line":248,"in_reply_to":"f73a47a4_6776bbb5","updated":"2025-05-28 11:19:50.000000000","message":"I will do a test in my bifrost setup to see how it goes","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39919c6fac7b8319ba99b730b81cbdbc164a368c","unresolved":false,"context_lines":[{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":253,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":4,"id":"e311f842_01e3c1bb","line":250,"updated":"2025-05-28 10:14:34.000000000","message":"Same re node UUID","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"cea403bf052bf5fce04cc2186221287675ca9156","unresolved":false,"context_lines":[{"line_number":247,"context_line":"                  \u0027the step\u0027, {\u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":248,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":249,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node to complete \u0027"},{"line_number":250,"context_line":"                  \u0027the step.\u0027)"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"        fw_upd[\u0027task_monitor\u0027] \u003d task_monitor.task_monitor_uri"},{"line_number":253,"context_line":"        node.set_driver_internal_info(\u0027redfish_fw_updates\u0027, settings)"}],"source_content_type":"text/x-python","patch_set":4,"id":"2f818d49_5bce3deb","line":250,"in_reply_to":"e311f842_01e3c1bb","updated":"2025-05-28 11:19:50.000000000","message":"ack","commit_id":"04315989b0d4551c39883b39fb5d7d21c5b90227"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8116946308612e7bd8b5e11a1e6b4002d6cf5efe","unresolved":true,"context_lines":[{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node %(node_uuid)s \u0027"},{"line_number":247,"context_line":"                  \u0027to complete the step\u0027, {\u0027node_uuid\u0027: node.uuid,"},{"line_number":248,"context_line":"                                           \u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":249,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":250,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node \u0027"},{"line_number":251,"context_line":"                  \u0027%(node_uuid)s to complete the step.\u0027,"},{"line_number":252,"context_line":"                  {\u0027node_uuid\u0027: node.uuid})"}],"source_content_type":"text/x-python","patch_set":5,"id":"1f689cf2_d299d2ba","line":249,"updated":"2025-07-01 10:17:13.000000000","message":"Per our discussion on slack, could you leave a TODO here?","commit_id":"d2df4cbc792ec182617cf965698056a49a549b78"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"2a2c8f6952cef784a41325f0f2c0ac4e9071aeff","unresolved":false,"context_lines":[{"line_number":246,"context_line":"                  \u0027seconds before proceeding to reboot the node %(node_uuid)s \u0027"},{"line_number":247,"context_line":"                  \u0027to complete the step\u0027, {\u0027node_uuid\u0027: node.uuid,"},{"line_number":248,"context_line":"                                           \u0027wait_time\u0027: wait_unres_bmc})"},{"line_number":249,"context_line":"        time.sleep(wait_unres_bmc)"},{"line_number":250,"context_line":"        LOG.debug(\u0027Wait completed. Proceeding to reboot the node \u0027"},{"line_number":251,"context_line":"                  \u0027%(node_uuid)s to complete the step.\u0027,"},{"line_number":252,"context_line":"                  {\u0027node_uuid\u0027: node.uuid})"}],"source_content_type":"text/x-python","patch_set":5,"id":"7fcbd65f_089cd447","line":249,"in_reply_to":"1f689cf2_d299d2ba","updated":"2025-07-01 11:39:29.000000000","message":"Done","commit_id":"d2df4cbc792ec182617cf965698056a49a549b78"}],"ironic/drivers/modules/redfish/utils.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"330c3b68cb63a2ab44c5cc459c6ff2e87867e1c9","unresolved":true,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    unres_bmc_wait \u003d driver_info.get(\u0027firmware_update_unresponsive_bmc_wait\u0027)"},{"line_number":202,"context_line":"    if unres_bmc_wait:"},{"line_number":203,"context_line":"        sushy_params[\u0027firmware_update_unresponsive_bmc_wait\u0027] \u003d unres_bmc_wait"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"    return sushy_params"},{"line_number":206,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"a627bbba_dd9bba5c","line":203,"updated":"2025-07-08 14:00:52.000000000","message":"nit: I\u0027m not sure this is actually used, you seem to be taking the value from node.driver_info directly.","commit_id":"2411779ee847f68e4e73f373d8e79e264f9c2d8b"}]}
