)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db19fd93cf84e0e03c94bfb559bbbdd4365e2bad","unresolved":true,"context_lines":[{"line_number":12,"context_line":"Story: 2009160"},{"line_number":13,"context_line":"Task: 43145"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Depends-On: https://review.opendev.org/c/x/sushy-oem-idrac/+/806888"},{"line_number":16,"context_line":"Change-Id: Ifde4656b4edd387ce2db2dbfc4c5ede261fafc70"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"9e28feeb_77e46a70","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":67},"updated":"2021-09-15 14:24:16.000000000","message":"FWIW, this is redundant at this point. To backport this though, it will likely be necessary that this is performed  on other branches as the library will also need to see backports and subsequent stable branch releases.","commit_id":"50c87cf63300dfd33bcf752acac06559ceb857b3"}],"driver-requirements.txt":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ffe01b54ae68b4c8d0d5eeb22c1358c4b375d56a","unresolved":true,"context_lines":[{"line_number":20,"context_line":"python-ibmcclient\u003e\u003d0.2.2,\u003c0.3.0"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# Dell EMC iDRAC sushy OEM extension"},{"line_number":23,"context_line":"sushy-oem-idrac\u003e\u003d3.0.0,\u003c4.0.0 # TODO(ajya) update when dependency fix released"}],"source_content_type":"text/plain","patch_set":6,"id":"5cde014f_a938aaa0","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":78},"updated":"2021-09-07 13:57:57.000000000","message":"This effectively blocks this from being able to be merged if we\u0027re still waiting on a dependency to merge.\n\nOn second thought and further reviewing, ironic/drivers/modules/drac/raid.py has code to navigate this, so I think it may be okay, just the comment likey needs to be on the line before.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"cb048c80822e4b374fbaa5225234b2b9d19aa53c","unresolved":false,"context_lines":[{"line_number":20,"context_line":"python-ibmcclient\u003e\u003d0.2.2,\u003c0.3.0"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# Dell EMC iDRAC sushy OEM extension"},{"line_number":23,"context_line":"sushy-oem-idrac\u003e\u003d3.0.0,\u003c4.0.0 # TODO(ajya) update when dependency fix released"}],"source_content_type":"text/plain","patch_set":6,"id":"130c5092_eedef80f","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":78},"in_reply_to":"316dc844_f48e6e24","updated":"2021-09-13 09:52:52.000000000","message":"sushy-oem-idrac is now released and requirements updated here","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"1125c0ed748fae738a21a23cdd71f6ad211181a4","unresolved":true,"context_lines":[{"line_number":20,"context_line":"python-ibmcclient\u003e\u003d0.2.2,\u003c0.3.0"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# Dell EMC iDRAC sushy OEM extension"},{"line_number":23,"context_line":"sushy-oem-idrac\u003e\u003d3.0.0,\u003c4.0.0 # TODO(ajya) update when dependency fix released"}],"source_content_type":"text/plain","patch_set":6,"id":"316dc844_f48e6e24","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":78},"in_reply_to":"5cde014f_a938aaa0","updated":"2021-09-07 14:13:20.000000000","message":"no-one is expecting that this will merge without updating sushy-oem-idrac version. This is just a placeholder to be updated in this very same patch when version is released to allow ppl review all the other changes until this happens.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db19fd93cf84e0e03c94bfb559bbbdd4365e2bad","unresolved":true,"context_lines":[{"line_number":20,"context_line":"python-ibmcclient\u003e\u003d0.2.2,\u003c0.3.0"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# Dell EMC iDRAC sushy OEM extension"},{"line_number":23,"context_line":"sushy-oem-idrac\u003e\u003d3.0.1,\u003c4.0.0"}],"source_content_type":"text/plain","patch_set":10,"id":"f5962376_6f3cf71a","line":23,"range":{"start_line":23,"start_character":17,"end_line":23,"end_character":22},"updated":"2021-09-15 14:24:16.000000000","message":"released September 13th.","commit_id":"50c87cf63300dfd33bcf752acac06559ceb857b3"}],"ironic/drivers/modules/drac/raid.py":[{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"adfaa3b45dbd0563a235541887af72382ac235cb","unresolved":true,"context_lines":[{"line_number":1453,"context_line":"        except AttributeError as ae:"},{"line_number":1454,"context_line":"            # For backported version where libraries could be too old"},{"line_number":1455,"context_line":"            LOG.warning(\u0027Failed to find method to clear foreign config. \u0027"},{"line_number":1456,"context_line":"                        \u0027Possibly because `sushy-oem-idrac` is too old.\u0027"},{"line_number":1457,"context_line":"                        \u0027Without newer `sushy-oem-idrac` no foreign \u0027"},{"line_number":1458,"context_line":"                        \u0027configuration will be cleared if there is any. \u0027"},{"line_number":1459,"context_line":"                        \u0027To avoid that update `sushy-oem-idrac`. \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"91f61dd5_5ae65163","line":1456,"updated":"2021-09-07 13:04:53.000000000","message":"Need a space at the end of this string.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"c1214dec73a8470f74a9d2add0b60807b8e52df4","unresolved":false,"context_lines":[{"line_number":1453,"context_line":"        except AttributeError as ae:"},{"line_number":1454,"context_line":"            # For backported version where libraries could be too old"},{"line_number":1455,"context_line":"            LOG.warning(\u0027Failed to find method to clear foreign config. \u0027"},{"line_number":1456,"context_line":"                        \u0027Possibly because `sushy-oem-idrac` is too old.\u0027"},{"line_number":1457,"context_line":"                        \u0027Without newer `sushy-oem-idrac` no foreign \u0027"},{"line_number":1458,"context_line":"                        \u0027configuration will be cleared if there is any. \u0027"},{"line_number":1459,"context_line":"                        \u0027To avoid that update `sushy-oem-idrac`. \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"eb33b271_2b51add0","line":1456,"in_reply_to":"91f61dd5_5ae65163","updated":"2021-09-07 16:08:02.000000000","message":"Done","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"adfaa3b45dbd0563a235541887af72382ac235cb","unresolved":true,"context_lines":[{"line_number":1476,"context_line":"                info \u003d task.node.driver_internal_info"},{"line_number":1477,"context_line":"                info[\u0027raid_task_monitor_uris\u0027] \u003d ["},{"line_number":1478,"context_line":"                    tm.task_monitor_uri for tm in task_mons]"},{"line_number":1479,"context_line":"                task.node.driver_internal_info \u003d info"},{"line_number":1480,"context_line":"                return True"},{"line_number":1481,"context_line":"        # Wait for all jobs to finish"},{"line_number":1482,"context_line":"        for task_mon in task_mons:"}],"source_content_type":"text/x-python","patch_set":6,"id":"d73c5384_a65487bc","line":1479,"updated":"2021-09-07 13:04:53.000000000","message":"Please ensure node.save() is called.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ffe01b54ae68b4c8d0d5eeb22c1358c4b375d56a","unresolved":true,"context_lines":[{"line_number":1476,"context_line":"                info \u003d task.node.driver_internal_info"},{"line_number":1477,"context_line":"                info[\u0027raid_task_monitor_uris\u0027] \u003d ["},{"line_number":1478,"context_line":"                    tm.task_monitor_uri for tm in task_mons]"},{"line_number":1479,"context_line":"                task.node.driver_internal_info \u003d info"},{"line_number":1480,"context_line":"                return True"},{"line_number":1481,"context_line":"        # Wait for all jobs to finish"},{"line_number":1482,"context_line":"        for task_mon in task_mons:"}],"source_content_type":"text/x-python","patch_set":6,"id":"d856d43b_50fca58a","line":1479,"in_reply_to":"d73c5384_a65487bc","updated":"2021-09-07 13:57:57.000000000","message":"Concur, we need to explicitly save.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"c1214dec73a8470f74a9d2add0b60807b8e52df4","unresolved":false,"context_lines":[{"line_number":1476,"context_line":"                info \u003d task.node.driver_internal_info"},{"line_number":1477,"context_line":"                info[\u0027raid_task_monitor_uris\u0027] \u003d ["},{"line_number":1478,"context_line":"                    tm.task_monitor_uri for tm in task_mons]"},{"line_number":1479,"context_line":"                task.node.driver_internal_info \u003d info"},{"line_number":1480,"context_line":"                return True"},{"line_number":1481,"context_line":"        # Wait for all jobs to finish"},{"line_number":1482,"context_line":"        for task_mon in task_mons:"}],"source_content_type":"text/x-python","patch_set":6,"id":"a6596346_4a4d23a3","line":1479,"in_reply_to":"d856d43b_50fca58a","updated":"2021-09-07 16:08:02.000000000","message":"Done","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"adfaa3b45dbd0563a235541887af72382ac235cb","unresolved":true,"context_lines":[{"line_number":1527,"context_line":"        node \u003d task.node"},{"line_number":1528,"context_line":"        completed_task_mon_uris \u003d []"},{"line_number":1529,"context_line":"        failed_msgs \u003d []"},{"line_number":1530,"context_line":"        task.upgrade_lock()"},{"line_number":1531,"context_line":"        for task_mon_uri in task_mon_uris:"},{"line_number":1532,"context_line":"            task_mon \u003d redfish_utils.get_task_monitor(node, task_mon_uri)"},{"line_number":1533,"context_line":"            if not task_mon.is_processing:"}],"source_content_type":"text/x-python","patch_set":6,"id":"7c093666_55d375da","line":1530,"updated":"2021-09-07 13:04:53.000000000","message":"Please think about changing the lock upgrade to be more granular, so that it is not unnecessarily done.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"c1214dec73a8470f74a9d2add0b60807b8e52df4","unresolved":false,"context_lines":[{"line_number":1527,"context_line":"        node \u003d task.node"},{"line_number":1528,"context_line":"        completed_task_mon_uris \u003d []"},{"line_number":1529,"context_line":"        failed_msgs \u003d []"},{"line_number":1530,"context_line":"        task.upgrade_lock()"},{"line_number":1531,"context_line":"        for task_mon_uri in task_mon_uris:"},{"line_number":1532,"context_line":"            task_mon \u003d redfish_utils.get_task_monitor(node, task_mon_uri)"},{"line_number":1533,"context_line":"            if not task_mon.is_processing:"}],"source_content_type":"text/x-python","patch_set":6,"id":"f9cbcc54_e8fa3ff8","line":1530,"in_reply_to":"05de6697_aa7de9cd","updated":"2021-09-07 16:08:02.000000000","message":"Done","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ffe01b54ae68b4c8d0d5eeb22c1358c4b375d56a","unresolved":true,"context_lines":[{"line_number":1527,"context_line":"        node \u003d task.node"},{"line_number":1528,"context_line":"        completed_task_mon_uris \u003d []"},{"line_number":1529,"context_line":"        failed_msgs \u003d []"},{"line_number":1530,"context_line":"        task.upgrade_lock()"},{"line_number":1531,"context_line":"        for task_mon_uri in task_mon_uris:"},{"line_number":1532,"context_line":"            task_mon \u003d redfish_utils.get_task_monitor(node, task_mon_uri)"},{"line_number":1533,"context_line":"            if not task_mon.is_processing:"}],"source_content_type":"text/x-python","patch_set":6,"id":"05de6697_aa7de9cd","line":1530,"in_reply_to":"7c093666_55d375da","updated":"2021-09-07 13:57:57.000000000","message":"From a standpoint of always pulling a lock before engaging a bmc, it seems right, but also it looks like almost nothing until line 1546 actually requires a lock in terms of interacting with the DB.","commit_id":"79e3110997eb0aab1c0c4b012e4d85fe1b87c11f"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"ef142c7ed912d8efe5506b15373785cb9a9a18ad","unresolved":true,"context_lines":[{"line_number":1480,"context_line":"                task.node.driver_internal_info \u003d info"},{"line_number":1481,"context_line":"                task.node.save()"},{"line_number":1482,"context_line":"                return True"},{"line_number":1483,"context_line":"        # Wait for all jobs to finish"},{"line_number":1484,"context_line":"        for task_mon in task_mons:"},{"line_number":1485,"context_line":"            if task_mon.check_is_processing:"},{"line_number":1486,"context_line":"                task_mon.wait(CONF.drac.raid_job_timeout)"}],"source_content_type":"text/x-python","patch_set":7,"id":"017ac2cd_8f1fc86b","line":1483,"range":{"start_line":1483,"start_character":8,"end_line":1483,"end_character":37},"updated":"2021-09-09 12:59:04.000000000","message":"Please add that this applies to synchronous task processing.","commit_id":"e401a9670d3bfebd5047a3ee594d04c0cd9d7de0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"cb048c80822e4b374fbaa5225234b2b9d19aa53c","unresolved":false,"context_lines":[{"line_number":1480,"context_line":"                task.node.driver_internal_info \u003d info"},{"line_number":1481,"context_line":"                task.node.save()"},{"line_number":1482,"context_line":"                return True"},{"line_number":1483,"context_line":"        # Wait for all jobs to finish"},{"line_number":1484,"context_line":"        for task_mon in task_mons:"},{"line_number":1485,"context_line":"            if task_mon.check_is_processing:"},{"line_number":1486,"context_line":"                task_mon.wait(CONF.drac.raid_job_timeout)"}],"source_content_type":"text/x-python","patch_set":7,"id":"bb8ec0b1_975d4645","line":1483,"range":{"start_line":1483,"start_character":8,"end_line":1483,"end_character":37},"in_reply_to":"017ac2cd_8f1fc86b","updated":"2021-09-13 09:52:52.000000000","message":"Done","commit_id":"e401a9670d3bfebd5047a3ee594d04c0cd9d7de0"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"218bbafaca45e9a035de0ef0f8a2693887bf03bb","unresolved":true,"context_lines":[{"line_number":1506,"context_line":"                    if not isinstance(task.driver.raid,"},{"line_number":1507,"context_line":"                                      DracRedfishRAID):"},{"line_number":1508,"context_line":"                        continue"},{"line_number":1509,"context_line":"                    task_monitor_uris \u003d driver_internal_info.get("},{"line_number":1510,"context_line":"                        \u0027raid_task_monitor_uris\u0027)"},{"line_number":1511,"context_line":"                    if not task_monitor_uris:"},{"line_number":1512,"context_line":"                        continue"},{"line_number":1513,"context_line":"                    self._check_raid_tasks_status("},{"line_number":1514,"context_line":"                        task, task_monitor_uris)"},{"line_number":1515,"context_line":"            except exception.NodeNotFound:"}],"source_content_type":"text/x-python","patch_set":8,"id":"33475a32_552b7393","line":1512,"range":{"start_line":1509,"start_character":0,"end_line":1512,"end_character":32},"updated":"2021-09-13 15:01:10.000000000","message":"This should be before the task is triggered. That way we don\u0027t create a task needlessly to check the driver, and we get driver_internal_info upfront with greater efficency than triggering another task operation.\n\nCode wise, this may seem minimal, but pulling tasks for every node managed by the conductor is... not ideal, as this code and driver will generate hundreds of needless additional sql queries to generate the task objects on a idle cluster.\n\nAnd anywhere else where we choose to do something based upon an additional field, we should likely re-evaluate.","commit_id":"bffd7a7f2d3d768d4613654592c4f38180088602"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"d87e5f2e5373dfb47f5441cb4c60c1fbfcb6a617","unresolved":true,"context_lines":[{"line_number":1506,"context_line":"                    if not isinstance(task.driver.raid,"},{"line_number":1507,"context_line":"                                      DracRedfishRAID):"},{"line_number":1508,"context_line":"                        continue"},{"line_number":1509,"context_line":"                    task_monitor_uris \u003d driver_internal_info.get("},{"line_number":1510,"context_line":"                        \u0027raid_task_monitor_uris\u0027)"},{"line_number":1511,"context_line":"                    if not task_monitor_uris:"},{"line_number":1512,"context_line":"                        continue"},{"line_number":1513,"context_line":"                    self._check_raid_tasks_status("},{"line_number":1514,"context_line":"                        task, task_monitor_uris)"},{"line_number":1515,"context_line":"            except exception.NodeNotFound:"}],"source_content_type":"text/x-python","patch_set":8,"id":"38b10aa1_551e2934","line":1512,"range":{"start_line":1509,"start_character":0,"end_line":1512,"end_character":32},"in_reply_to":"33475a32_552b7393","updated":"2021-09-13 15:43:37.000000000","message":"wouldn\u0027t this cause some kind of race condition when the node is not locked, but more than 1 process is checking the same node -e.g., one has already started processing it, but another does not see it and starts the same?","commit_id":"bffd7a7f2d3d768d4613654592c4f38180088602"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"81cf166f11be8765e2cfa3dfbbf4054723eb406c","unresolved":true,"context_lines":[{"line_number":1506,"context_line":"                    if not isinstance(task.driver.raid,"},{"line_number":1507,"context_line":"                                      DracRedfishRAID):"},{"line_number":1508,"context_line":"                        continue"},{"line_number":1509,"context_line":"                    task_monitor_uris \u003d driver_internal_info.get("},{"line_number":1510,"context_line":"                        \u0027raid_task_monitor_uris\u0027)"},{"line_number":1511,"context_line":"                    if not task_monitor_uris:"},{"line_number":1512,"context_line":"                        continue"},{"line_number":1513,"context_line":"                    self._check_raid_tasks_status("},{"line_number":1514,"context_line":"                        task, task_monitor_uris)"},{"line_number":1515,"context_line":"            except exception.NodeNotFound:"}],"source_content_type":"text/x-python","patch_set":8,"id":"8201b24d_2f96d01b","line":1512,"range":{"start_line":1509,"start_character":0,"end_line":1512,"end_character":32},"in_reply_to":"38b10aa1_551e2934","updated":"2021-09-13 16:04:38.000000000","message":"and need to check for interface in line 1509 before moving further to not step accidentally in other interfaces using the same property name. Before acquiring task, the interface is not available, only driver\u0027s name, such as \u0027idrac\u0027.","commit_id":"bffd7a7f2d3d768d4613654592c4f38180088602"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"fccc1e941663b193af472e01e3dc1c4303ae27cd","unresolved":false,"context_lines":[{"line_number":1506,"context_line":"                    if not isinstance(task.driver.raid,"},{"line_number":1507,"context_line":"                                      DracRedfishRAID):"},{"line_number":1508,"context_line":"                        continue"},{"line_number":1509,"context_line":"                    task_monitor_uris \u003d driver_internal_info.get("},{"line_number":1510,"context_line":"                        \u0027raid_task_monitor_uris\u0027)"},{"line_number":1511,"context_line":"                    if not task_monitor_uris:"},{"line_number":1512,"context_line":"                        continue"},{"line_number":1513,"context_line":"                    self._check_raid_tasks_status("},{"line_number":1514,"context_line":"                        task, task_monitor_uris)"},{"line_number":1515,"context_line":"            except exception.NodeNotFound:"}],"source_content_type":"text/x-python","patch_set":8,"id":"22d216e8_37ce50b8","line":1512,"range":{"start_line":1509,"start_character":0,"end_line":1512,"end_character":32},"in_reply_to":"8201b24d_2f96d01b","updated":"2021-09-14 07:40:27.000000000","message":"Done","commit_id":"bffd7a7f2d3d768d4613654592c4f38180088602"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db19fd93cf84e0e03c94bfb559bbbdd4365e2bad","unresolved":true,"context_lines":[{"line_number":1498,"context_line":"        node_list \u003d manager.iter_nodes(fields\u003dfields, filters\u003dfilters)"},{"line_number":1499,"context_line":"        for (node_uuid, driver, conductor_group,"},{"line_number":1500,"context_line":"             driver_internal_info) in node_list:"},{"line_number":1501,"context_line":"            task_monitor_uris \u003d driver_internal_info.get("},{"line_number":1502,"context_line":"                \u0027raid_task_monitor_uris\u0027)"},{"line_number":1503,"context_line":"            if not task_monitor_uris:"},{"line_number":1504,"context_line":"                continue"},{"line_number":1505,"context_line":"            try:"},{"line_number":1506,"context_line":"                lock_purpose \u003d \u0027checking async RAID tasks\u0027"},{"line_number":1507,"context_line":"                with task_manager.acquire(context, node_uuid,"}],"source_content_type":"text/x-python","patch_set":10,"id":"e0031859_7a1720c1","line":1504,"range":{"start_line":1501,"start_character":0,"end_line":1504,"end_character":24},"updated":"2021-09-15 14:24:16.000000000","message":"Thanks!","commit_id":"50c87cf63300dfd33bcf752acac06559ceb857b3"}],"ironic/tests/unit/drivers/modules/drac/test_raid.py":[{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"f7f79dcc4ffd69dda84e2584fc6e32148177529f","unresolved":true,"context_lines":[{"line_number":2471,"context_line":"        # clear_foreign_config setup"},{"line_number":2472,"context_line":"        mock_oem_task3 \u003d mock.Mock("},{"line_number":2473,"context_line":"            job_type\u003dsushy_oem_idrac.JOB_TYPE_RT_NO_REBOOT_CONF)"},{"line_number":2474,"context_line":"        mock_task3 \u003d mock.Mock()"},{"line_number":2475,"context_line":"        mock_task3.get_oem_extension.return_value \u003d mock_oem_task3"},{"line_number":2476,"context_line":"        mock_task_mon3 \u003d mock.Mock(check_is_processing\u003dTrue)"},{"line_number":2477,"context_line":"        mock_task_mon3.task_monitor_uri \u003d \u0027/TaskService/3\u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"400e1b70_551f7784","line":2474,"updated":"2021-09-14 12:57:19.000000000","message":"Where are mock_task1 and mock_task2? ;-) Please renumber mock_task*, mock_eom_task*, and mock_task_mon*.","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"d4224ecbce9f680f820103e93fc4961c67f59c9b","unresolved":false,"context_lines":[{"line_number":2471,"context_line":"        # clear_foreign_config setup"},{"line_number":2472,"context_line":"        mock_oem_task3 \u003d mock.Mock("},{"line_number":2473,"context_line":"            job_type\u003dsushy_oem_idrac.JOB_TYPE_RT_NO_REBOOT_CONF)"},{"line_number":2474,"context_line":"        mock_task3 \u003d mock.Mock()"},{"line_number":2475,"context_line":"        mock_task3.get_oem_extension.return_value \u003d mock_oem_task3"},{"line_number":2476,"context_line":"        mock_task_mon3 \u003d mock.Mock(check_is_processing\u003dTrue)"},{"line_number":2477,"context_line":"        mock_task_mon3.task_monitor_uri \u003d \u0027/TaskService/3\u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"f7b96e8f_5d24f7af","line":2474,"in_reply_to":"400e1b70_551f7784","updated":"2021-09-14 13:46:13.000000000","message":"Done","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"f7f79dcc4ffd69dda84e2584fc6e32148177529f","unresolved":true,"context_lines":[{"line_number":2489,"context_line":"            task, None, return_state\u003dmock_return_state1)"},{"line_number":2490,"context_line":""},{"line_number":2491,"context_line":"        self.assertEqual(result, mock_return_state2)"},{"line_number":2492,"context_line":"        fake_oem_system.change_physical_disk_state.assert_not_called()"},{"line_number":2493,"context_line":"        fake_oem_system.clear_foreign_config.assert_called_once()"},{"line_number":2494,"context_line":"        mock_build_agent_options.assert_called_once_with(task.node)"},{"line_number":2495,"context_line":"        mock_get_async_step_return_state.assert_called_once_with(task.node)"}],"source_content_type":"text/x-python","patch_set":9,"id":"30469319_6d9fefa4","line":2492,"updated":"2021-09-14 12:57:19.000000000","message":"Please remove this line, because we decided to not change physical disk state during delete_configuration.","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"d4224ecbce9f680f820103e93fc4961c67f59c9b","unresolved":false,"context_lines":[{"line_number":2489,"context_line":"            task, None, return_state\u003dmock_return_state1)"},{"line_number":2490,"context_line":""},{"line_number":2491,"context_line":"        self.assertEqual(result, mock_return_state2)"},{"line_number":2492,"context_line":"        fake_oem_system.change_physical_disk_state.assert_not_called()"},{"line_number":2493,"context_line":"        fake_oem_system.clear_foreign_config.assert_called_once()"},{"line_number":2494,"context_line":"        mock_build_agent_options.assert_called_once_with(task.node)"},{"line_number":2495,"context_line":"        mock_get_async_step_return_state.assert_called_once_with(task.node)"}],"source_content_type":"text/x-python","patch_set":9,"id":"76d90c4f_143202b3","line":2492,"in_reply_to":"30469319_6d9fefa4","updated":"2021-09-14 13:46:13.000000000","message":"Done","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"f7f79dcc4ffd69dda84e2584fc6e32148177529f","unresolved":true,"context_lines":[{"line_number":2606,"context_line":"        node_list \u003d [(self.node.uuid, \u0027idrac\u0027, \u0027\u0027, driver_internal_info)]"},{"line_number":2607,"context_line":"        mock_manager.iter_nodes.return_value \u003d node_list"},{"line_number":2608,"context_line":"        mock_acquire.side_effect \u003d exception.NodeNotFound"},{"line_number":2609,"context_line":"        task \u003d mock.Mock(node\u003dself.node,"},{"line_number":2610,"context_line":"                         driver\u003dmock.Mock(raid\u003dself.raid))"},{"line_number":2611,"context_line":"        mock_acquire.return_value \u003d mock.MagicMock("},{"line_number":2612,"context_line":"            __enter__\u003dmock.MagicMock(return_value\u003dtask))"},{"line_number":2613,"context_line":"        self.raid._check_raid_tasks_status \u003d mock.Mock()"},{"line_number":2614,"context_line":""},{"line_number":2615,"context_line":"        self.raid._query_raid_tasks_status(mock_manager, self.context)"}],"source_content_type":"text/x-python","patch_set":9,"id":"aed1aad3_7cd28f52","line":2612,"range":{"start_line":2609,"start_character":0,"end_line":2612,"end_character":56},"updated":"2021-09-14 12:57:19.000000000","message":"Are these lines needed?","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"d4224ecbce9f680f820103e93fc4961c67f59c9b","unresolved":false,"context_lines":[{"line_number":2606,"context_line":"        node_list \u003d [(self.node.uuid, \u0027idrac\u0027, \u0027\u0027, driver_internal_info)]"},{"line_number":2607,"context_line":"        mock_manager.iter_nodes.return_value \u003d node_list"},{"line_number":2608,"context_line":"        mock_acquire.side_effect \u003d exception.NodeNotFound"},{"line_number":2609,"context_line":"        task \u003d mock.Mock(node\u003dself.node,"},{"line_number":2610,"context_line":"                         driver\u003dmock.Mock(raid\u003dself.raid))"},{"line_number":2611,"context_line":"        mock_acquire.return_value \u003d mock.MagicMock("},{"line_number":2612,"context_line":"            __enter__\u003dmock.MagicMock(return_value\u003dtask))"},{"line_number":2613,"context_line":"        self.raid._check_raid_tasks_status \u003d mock.Mock()"},{"line_number":2614,"context_line":""},{"line_number":2615,"context_line":"        self.raid._query_raid_tasks_status(mock_manager, self.context)"}],"source_content_type":"text/x-python","patch_set":9,"id":"6b16f2d1_c62bb06a","line":2612,"range":{"start_line":2609,"start_character":0,"end_line":2612,"end_character":56},"in_reply_to":"aed1aad3_7cd28f52","updated":"2021-09-14 13:46:13.000000000","message":"Done","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"f7f79dcc4ffd69dda84e2584fc6e32148177529f","unresolved":true,"context_lines":[{"line_number":2628,"context_line":"        node_list \u003d [(self.node.uuid, \u0027idrac\u0027, \u0027\u0027, driver_internal_info)]"},{"line_number":2629,"context_line":"        mock_manager.iter_nodes.return_value \u003d node_list"},{"line_number":2630,"context_line":"        mock_acquire.side_effect \u003d exception.NodeLocked"},{"line_number":2631,"context_line":"        task \u003d mock.Mock(node\u003dself.node,"},{"line_number":2632,"context_line":"                         driver\u003dmock.Mock(raid\u003dself.raid))"},{"line_number":2633,"context_line":"        mock_acquire.return_value \u003d mock.MagicMock("},{"line_number":2634,"context_line":"            __enter__\u003dmock.MagicMock(return_value\u003dtask))"},{"line_number":2635,"context_line":"        self.raid._check_raid_tasks_status \u003d mock.Mock()"},{"line_number":2636,"context_line":""},{"line_number":2637,"context_line":"        self.raid._query_raid_tasks_status(mock_manager, self.context)"}],"source_content_type":"text/x-python","patch_set":9,"id":"ebf4a02d_e3239248","line":2634,"range":{"start_line":2631,"start_character":0,"end_line":2634,"end_character":56},"updated":"2021-09-14 12:57:19.000000000","message":"Ditto.","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"d4224ecbce9f680f820103e93fc4961c67f59c9b","unresolved":false,"context_lines":[{"line_number":2628,"context_line":"        node_list \u003d [(self.node.uuid, \u0027idrac\u0027, \u0027\u0027, driver_internal_info)]"},{"line_number":2629,"context_line":"        mock_manager.iter_nodes.return_value \u003d node_list"},{"line_number":2630,"context_line":"        mock_acquire.side_effect \u003d exception.NodeLocked"},{"line_number":2631,"context_line":"        task \u003d mock.Mock(node\u003dself.node,"},{"line_number":2632,"context_line":"                         driver\u003dmock.Mock(raid\u003dself.raid))"},{"line_number":2633,"context_line":"        mock_acquire.return_value \u003d mock.MagicMock("},{"line_number":2634,"context_line":"            __enter__\u003dmock.MagicMock(return_value\u003dtask))"},{"line_number":2635,"context_line":"        self.raid._check_raid_tasks_status \u003d mock.Mock()"},{"line_number":2636,"context_line":""},{"line_number":2637,"context_line":"        self.raid._query_raid_tasks_status(mock_manager, self.context)"}],"source_content_type":"text/x-python","patch_set":9,"id":"1c26c217_5f1b820a","line":2634,"range":{"start_line":2631,"start_character":0,"end_line":2634,"end_character":56},"in_reply_to":"ebf4a02d_e3239248","updated":"2021-09-14 13:46:13.000000000","message":"Done","commit_id":"1a97c9325d9ea451e11c798c5b588ee59c47c7f8"}],"releasenotes/notes/idrac-redfish-raid-clear-foreign-config-9ce4ec35cf6d7225.yaml":[{"author":{"_account_id":23847,"name":"Richard G. Pioso","email":"richard.pioso@gmail.com","username":"richard.pioso"},"change_message_id":"ef142c7ed912d8efe5506b15373785cb9a9a18ad","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":7,"id":"5c1d81d1_b88c512e","line":6,"range":{"start_line":4,"start_character":0,"end_line":6,"end_character":0},"updated":"2021-09-09 12:59:04.000000000","message":"Please revisit this.","commit_id":"e401a9670d3bfebd5047a3ee594d04c0cd9d7de0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"cb048c80822e4b374fbaa5225234b2b9d19aa53c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"313c8d1c_05c5e555","line":6,"range":{"start_line":4,"start_character":0,"end_line":6,"end_character":0},"in_reply_to":"5c1d81d1_b88c512e","updated":"2021-09-13 09:52:52.000000000","message":"Done","commit_id":"e401a9670d3bfebd5047a3ee594d04c0cd9d7de0"}]}
