)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"b74b85d95c80a38e3a098880c814f50dddfea4c5","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Partition images through the agent have the unfortunate"},{"line_number":10,"context_line":"side effect of being executed without full node context"},{"line_number":11,"context_line":"by default. Luckilly we\u0027ve had a similar problem and"},{"line_number":12,"context_line":"cache the node."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"This patch changes the lookup from a default of msdos"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"51b56a1b_d49acf80","line":11,"range":{"start_line":11,"start_character":12,"end_line":11,"end_character":20},"updated":"2020-11-23 18:07:57.000000000","message":"Nit: Luckily","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"}],"ironic_python_agent/extensions/standby.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"1da6d1e05cb48dd9075bf13ee6b9312fecf7869c","unresolved":true,"context_lines":[{"line_number":153,"context_line":"    \"\"\""},{"line_number":154,"context_line":"    # Retrieve the cached node as it has the latest information"},{"line_number":155,"context_line":"    # and allows us to also sanity check the deployment so we don\u0027t end"},{"line_number":156,"context_line":"    # up writing MBR when we\u0027re in UEFI mode."},{"line_number":157,"context_line":"    cached_node \u003d hardware.get_cached_node()"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    node_uuid \u003d image_info.get(\u0027node_uuid\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"23d600ca_0e03e550","line":156,"updated":"2020-11-24 10:32:12.000000000","message":"Maybe we should get rid of image_info eventually and just use the node.","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e2da805f036985cfe9a3d57b72f0d7ac25352a9d","unresolved":true,"context_lines":[{"line_number":153,"context_line":"    \"\"\""},{"line_number":154,"context_line":"    # Retrieve the cached node as it has the latest information"},{"line_number":155,"context_line":"    # and allows us to also sanity check the deployment so we don\u0027t end"},{"line_number":156,"context_line":"    # up writing MBR when we\u0027re in UEFI mode."},{"line_number":157,"context_line":"    cached_node \u003d hardware.get_cached_node()"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    node_uuid \u003d image_info.get(\u0027node_uuid\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"bc812c12_eed11d66","line":156,"in_reply_to":"23d600ca_0e03e550","updated":"2020-12-03 15:30:54.000000000","message":"Yeah, I think so. Just not at this moment.","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"1da6d1e05cb48dd9075bf13ee6b9312fecf7869c","unresolved":true,"context_lines":[{"line_number":154,"context_line":"    # Retrieve the cached node as it has the latest information"},{"line_number":155,"context_line":"    # and allows us to also sanity check the deployment so we don\u0027t end"},{"line_number":156,"context_line":"    # up writing MBR when we\u0027re in UEFI mode."},{"line_number":157,"context_line":"    cached_node \u003d hardware.get_cached_node()"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    node_uuid \u003d image_info.get(\u0027node_uuid\u0027)"},{"line_number":160,"context_line":"    preserve_ep \u003d image_info[\u0027preserve_ephemeral\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"0d820c8f_588907e0","line":157,"updated":"2020-11-24 10:32:12.000000000","message":"Did you mean to use wait_for_disks\u003dFalse?","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e2da805f036985cfe9a3d57b72f0d7ac25352a9d","unresolved":true,"context_lines":[{"line_number":154,"context_line":"    # Retrieve the cached node as it has the latest information"},{"line_number":155,"context_line":"    # and allows us to also sanity check the deployment so we don\u0027t end"},{"line_number":156,"context_line":"    # up writing MBR when we\u0027re in UEFI mode."},{"line_number":157,"context_line":"    cached_node \u003d hardware.get_cached_node()"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    node_uuid \u003d image_info.get(\u0027node_uuid\u0027)"},{"line_number":160,"context_line":"    preserve_ep \u003d image_info[\u0027preserve_ephemeral\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"7d7875ed_e37b0456","line":157,"in_reply_to":"0d820c8f_588907e0","updated":"2020-12-03 15:30:54.000000000","message":"I think letting that path re-execute is fine since the dispatch of anything also triggers the path and it seems to be okay?  The override was mainly for unit testing because we can\u0027t intercept the with the way the dispatch loads. :\\","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"}],"ironic_python_agent/hardware.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"1da6d1e05cb48dd9075bf13ee6b9312fecf7869c","unresolved":true,"context_lines":[{"line_number":2343,"context_line":"        return dispatch_to_managers(\u0027list_hardware_info\u0027)"},{"line_number":2344,"context_line":""},{"line_number":2345,"context_line":""},{"line_number":2346,"context_line":"def cache_node(node, wait_for_disks\u003dTrue):"},{"line_number":2347,"context_line":"    \"\"\"Store the node object in the hardware module."},{"line_number":2348,"context_line":""},{"line_number":2349,"context_line":"    Stores the node object in the hardware module to facilitate the"}],"source_content_type":"text/x-python","patch_set":2,"id":"7fb81d18_da0d693d","line":2346,"updated":"2020-11-24 10:32:12.000000000","message":"The new option seems unused","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"b74b85d95c80a38e3a098880c814f50dddfea4c5","unresolved":true,"context_lines":[{"line_number":2354,"context_line":""},{"line_number":2355,"context_line":"    :param node: Ironic node object"},{"line_number":2356,"context_line":"    :param wait_for_disks: Default True switch to wait for disk setup to be"},{"line_number":2357,"context_line":"                           completed so the node information can be asligned"},{"line_number":2358,"context_line":"                           with the physical storage devices of the host."},{"line_number":2359,"context_line":"                           This is likely to be used in unit testing."},{"line_number":2360,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"756fee8d_937905f5","line":2357,"range":{"start_line":2357,"start_character":68,"end_line":2357,"end_character":76},"updated":"2020-11-23 18:07:57.000000000","message":"Nit: aligned","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c1dd8e5b5b95b5922bdced0170065cf06fa5dab3","unresolved":false,"context_lines":[{"line_number":2356,"context_line":"    :param wait_for_disks: Default True switch to wait for disk setup to be"},{"line_number":2357,"context_line":"                           completed so the node information can be asligned"},{"line_number":2358,"context_line":"                           with the physical storage devices of the host."},{"line_number":2359,"context_line":"                           This is likely to be used in unit testing."},{"line_number":2360,"context_line":"    \"\"\""},{"line_number":2361,"context_line":"    global NODE"},{"line_number":2362,"context_line":"    new_node \u003d NODE is None or NODE[\u0027uuid\u0027] !\u003d node[\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"99e9b9f3_7ed3415f","line":2359,"updated":"2020-12-14 13:57:19.000000000","message":"Not needed, just mock dispatch_to_managers","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"2fb55f9fc26f864d1e887c3fe726ee3981da1b30","unresolved":false,"context_lines":[{"line_number":2428,"context_line":"    :param wait_for_disks: Default True switch to wait for disk setup to be"},{"line_number":2429,"context_line":"                           completed so the node information can be aligned"},{"line_number":2430,"context_line":"                           with the physical storage devices of the host."},{"line_number":2431,"context_line":"                           This is likely to be used in unit testing."},{"line_number":2432,"context_line":"    \"\"\""},{"line_number":2433,"context_line":"    global NODE"},{"line_number":2434,"context_line":"    new_node \u003d NODE is None or NODE[\u0027uuid\u0027] !\u003d node[\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"a4c0aed3_3619c28e","line":2431,"updated":"2020-12-15 16:25:25.000000000","message":"No longer present","commit_id":"cb6c0059b5f5bd428623c461bd69afc793441f7e"}],"ironic_python_agent/tests/unit/extensions/test_standby.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":"e2da805f036985cfe9a3d57b72f0d7ac25352a9d","unresolved":true,"context_lines":[{"line_number":67,"context_line":"                                     count\u003d1,"},{"line_number":68,"context_line":"                                     architecture\u003d\u0027generic\u0027,"},{"line_number":69,"context_line":"                                     flags\u003d\u0027\u0027)"},{"line_number":70,"context_line":"        hardware.cache_node("},{"line_number":71,"context_line":"            {\u0027uuid\u0027: \u00271-2-3-4\u0027,"},{"line_number":72,"context_line":"             \u0027instance_info\u0027: {}},"},{"line_number":73,"context_line":"            wait_for_disks\u003dFalse)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def test_validate_image_info_success(self):"},{"line_number":76,"context_line":"        standby._validate_image_info(None, _build_fake_image_info())"}],"source_content_type":"text/x-python","patch_set":2,"id":"87b7d1f5_01f3677a","line":73,"range":{"start_line":70,"start_character":0,"end_line":73,"end_character":33},"updated":"2020-12-03 15:30:54.000000000","message":"Dmitry, this is where it ends up getting used. To pre-populate the cache, once, here, since we can\u0027t actually really intercept the dispatch to disks. If we try to do it the CNA hardware manager fires up and throws errors that can\u0027t be intercepted because it is loaded dynamically. (I tried for like two days)","commit_id":"268ee48f1cb8e3a3e245ebfee8ff516c7777a3c7"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"2fb55f9fc26f864d1e887c3fe726ee3981da1b30","unresolved":false,"context_lines":[{"line_number":67,"context_line":"                                     count\u003d1,"},{"line_number":68,"context_line":"                                     architecture\u003d\u0027generic\u0027,"},{"line_number":69,"context_line":"                                     flags\u003d\u0027\u0027)"},{"line_number":70,"context_line":"        with mock.patch(\u0027ironic_python_agent.hardware.dispatch_to_managers\u0027,"},{"line_number":71,"context_line":"                        autospec\u003dTrue):"},{"line_number":72,"context_line":"            hardware.cache_node("},{"line_number":73,"context_line":"                {\u0027uuid\u0027: \u00271-2-3-4\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"4b8bbb6a_60061b7f","line":70,"updated":"2020-12-15 16:25:25.000000000","message":"nit: hardware is imported already","commit_id":"cb6c0059b5f5bd428623c461bd69afc793441f7e"}],"releasenotes/notes/fix-agent-determination-of-partition-table-type-3c78bf78266e8cef.yaml":[{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"b74b85d95c80a38e3a098880c814f50dddfea4c5","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    Fixes the agent process for determining what partition label type to"},{"line_number":5,"context_line":"    utilize when writing partition images. In many cases, this could fallback"},{"line_number":6,"context_line":"    to ``msdos`` if the instance flavor was not properly labeled."},{"line_number":7,"context_line":"    Now an internal helper method makes the determination using that"},{"line_number":8,"context_line":"    that determination and the running state of the node."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"d8bdf46f_bc0bc2aa","line":8,"range":{"start_line":7,"start_character":4,"end_line":8,"end_character":57},"updated":"2020-11-23 18:07:57.000000000","message":"\"Now an internal helper method makes the determination using the running state of the node.\" ?","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c1dd8e5b5b95b5922bdced0170065cf06fa5dab3","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    utilize when writing partition images. In many cases, this could fallback"},{"line_number":6,"context_line":"    to ``msdos`` if the instance flavor was not properly labeled."},{"line_number":7,"context_line":"    Now an internal helper method makes the determination using that"},{"line_number":8,"context_line":"    that determination and the running state of the node."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"c46632f6_6a480746","line":8,"updated":"2020-12-14 13:57:19.000000000","message":"Let\u0027s not even mention internal methods, just the new logic.","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b75d98464b7a2c1767d58055368fa57260a8ac98","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    utilize when writing partition images. In many cases, this could fallback"},{"line_number":6,"context_line":"    to ``msdos`` if the instance flavor was not properly labeled."},{"line_number":7,"context_line":"    Now an internal helper method makes the determination using that"},{"line_number":8,"context_line":"    that determination and the running state of the node."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"af9903d7_a64e4230","line":8,"in_reply_to":"c46632f6_6a480746","updated":"2020-12-14 14:36:34.000000000","message":"Done.","commit_id":"241950d13c9d33f9e3e504fd045916fa36cc53c6"}]}
