)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7c90fbce50298540233257ba4bd47ededbf2b6f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c257ec2d_df3ad6bc","updated":"2023-04-12 17:28:20.000000000","message":"Please add a release note and a single unit test so we don\u0027t inadvertently break this at some point.","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"6f3f785f311885bd0181c96fc08decbb5ed4f644","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"09ba0128_6d177083","updated":"2023-04-12 18:01:23.000000000","message":"fixed comment, have question on dbl quotes, Still need to write a unit test","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"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":"7c5cab52c592223244ee778acb3a6701db01232f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"cf891d47_4705baa3","updated":"2023-04-21 18:55:10.000000000","message":"Code itself seems fine. Concept is fine. We just need to document a caveat...\n\nI know the reason we originally left nodes powered on in this state was because we didn\u0027t want to bake in assumptions about why something failed -- e.g. a node that failed to clean because a firmware upgrade was partially completed could be bricked by a restart.\n\nObviously, this is opt-in, so it\u0027s less of a concern, but I\u0027d suggest we specifically document in the release note, and probably in the config, that the option may be unsafe when using Cleaning to perform hardware-transformative actions such as firmware upgrade.","commit_id":"4706c88bfdafc42eeae5bef675a962e89a1a7b38"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"d78c669caa65fd8e5c914facd5a626894e02cd7c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"84c985f6_d3461ac5","updated":"2023-04-14 15:20:10.000000000","message":"recheck","commit_id":"4706c88bfdafc42eeae5bef675a962e89a1a7b38"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"0b2680d8a0b918150284c4d2d3ea4f745d672fc3","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":7,"id":"fd32ba85_d3caab3b","in_reply_to":"cf891d47_4705baa3","updated":"2023-04-24 18:44:29.000000000","message":"Thank you for the Review, I will push up a new rev shortly.","commit_id":"4706c88bfdafc42eeae5bef675a962e89a1a7b38"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"b8db6a74029ab061f1507b3c8c047f202bac85bd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"98857b23_7d429fda","in_reply_to":"fd32ba85_d3caab3b","updated":"2023-04-24 19:12:41.000000000","message":"updated.","commit_id":"4706c88bfdafc42eeae5bef675a962e89a1a7b38"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"d72420f4ed6a7256a9263e58b6e30cac628af75c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"24400021_f42454bc","updated":"2023-04-24 22:35:53.000000000","message":"recheck","commit_id":"66ca9804c10d8acc4fe9b48b1d0093bf928baa3d"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"565d94c519bb1bc08cdc1a9367cfef519efe5200","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"4765bb9b_b7c0b7f7","updated":"2023-04-25 15:28:18.000000000","message":"recheck","commit_id":"510a612eed6dc6e893d6101574b5f84ca5757762"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"1163887daa328c6f38e95184b58fe02082d8eec5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"9151c622_6620d298","updated":"2023-04-26 18:43:31.000000000","message":"recheck","commit_id":"510a612eed6dc6e893d6101574b5f84ca5757762"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"bc1c6cb0fcc90eed1ece8c68679ada33e4d0fb02","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"a5e0e5bb_c81f95cd","updated":"2023-04-26 15:19:51.000000000","message":"recheck","commit_id":"510a612eed6dc6e893d6101574b5f84ca5757762"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"28f8dd958d00b6ab788e9868f96121395c16df00","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"b9f5fb68_d6f5fe89","updated":"2023-04-27 12:50:20.000000000","message":"recheck grenade shenanigans","commit_id":"510a612eed6dc6e893d6101574b5f84ca5757762"}],"ironic/conductor/utils.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":"7c90fbce50298540233257ba4bd47ededbf2b6f3","unresolved":true,"context_lines":[{"line_number":501,"context_line":"        node.maintenance_reason \u003d errmsg"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"    if CONF.conductor.poweroff_in_cleanfail is True:"},{"line_number":504,"context_line":"        # cjk power off node in clean fail"},{"line_number":505,"context_line":"        node_power_action(task, states.POWER_OFF)"},{"line_number":506,"context_line":""},{"line_number":507,"context_line":"    node.save()"}],"source_content_type":"text/x-python","patch_set":3,"id":"d671771d_848716ee","line":504,"updated":"2023-04-12 17:28:20.000000000","message":"s/cjk/NOTE(NobodyCAM):/ ? :)","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"6f3f785f311885bd0181c96fc08decbb5ed4f644","unresolved":false,"context_lines":[{"line_number":501,"context_line":"        node.maintenance_reason \u003d errmsg"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"    if CONF.conductor.poweroff_in_cleanfail is True:"},{"line_number":504,"context_line":"        # cjk power off node in clean fail"},{"line_number":505,"context_line":"        node_power_action(task, states.POWER_OFF)"},{"line_number":506,"context_line":""},{"line_number":507,"context_line":"    node.save()"}],"source_content_type":"text/x-python","patch_set":3,"id":"e58041d4_09f2bd7e","line":504,"in_reply_to":"d671771d_848716ee","updated":"2023-04-12 18:01:23.000000000","message":"Done","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5fd61db60a86aa351fe34b23dda68b30b8b60bb1","unresolved":true,"context_lines":[{"line_number":500,"context_line":"    if not node.maintenance_reason and set_maintenance:"},{"line_number":501,"context_line":"        node.maintenance_reason \u003d errmsg"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"    if CONF.conductor.poweroff_in_cleanfail is True:"},{"line_number":504,"context_line":"        # NOTE(NobodyCam): Power off node in clean fail"},{"line_number":505,"context_line":"        node_power_action(task, states.POWER_OFF)"},{"line_number":506,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3f675af7_8a176db1","line":503,"updated":"2023-04-24 23:09:05.000000000","message":"is True is redundant here.","commit_id":"66ca9804c10d8acc4fe9b48b1d0093bf928baa3d"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"5fde8fcdda0e899143c50078f6b8ebfc7e0c3cc4","unresolved":false,"context_lines":[{"line_number":500,"context_line":"    if not node.maintenance_reason and set_maintenance:"},{"line_number":501,"context_line":"        node.maintenance_reason \u003d errmsg"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"    if CONF.conductor.poweroff_in_cleanfail is True:"},{"line_number":504,"context_line":"        # NOTE(NobodyCam): Power off node in clean fail"},{"line_number":505,"context_line":"        node_power_action(task, states.POWER_OFF)"},{"line_number":506,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"067ec5ca_e0d9e099","line":503,"in_reply_to":"3f675af7_8a176db1","updated":"2023-04-24 23:21:31.000000000","message":"Done","commit_id":"66ca9804c10d8acc4fe9b48b1d0093bf928baa3d"}],"ironic/conf/conductor.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":"7c90fbce50298540233257ba4bd47ededbf2b6f3","unresolved":true,"context_lines":[{"line_number":352,"context_line":""},{"line_number":353,"context_line":"    cfg.BoolOpt(\u0027poweroff_in_cleanfail\u0027,"},{"line_number":354,"context_line":"                default\u003dFalse,"},{"line_number":355,"context_line":"                help\u003d_(\u0027If True power off nodes in the \"clean failed\" \u0027"},{"line_number":356,"context_line":"                       \u0027state. Default False.\u0027)),"},{"line_number":357,"context_line":"]"},{"line_number":358,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"17faf3dd_0b72c99d","line":355,"range":{"start_line":355,"start_character":55,"end_line":355,"end_character":56},"updated":"2023-04-12 17:28:20.000000000","message":"nit: style wise we use 2x ` characters, instead of \" because it can be rendered into bold.","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"6f3f785f311885bd0181c96fc08decbb5ed4f644","unresolved":true,"context_lines":[{"line_number":352,"context_line":""},{"line_number":353,"context_line":"    cfg.BoolOpt(\u0027poweroff_in_cleanfail\u0027,"},{"line_number":354,"context_line":"                default\u003dFalse,"},{"line_number":355,"context_line":"                help\u003d_(\u0027If True power off nodes in the \"clean failed\" \u0027"},{"line_number":356,"context_line":"                       \u0027state. Default False.\u0027)),"},{"line_number":357,"context_line":"]"},{"line_number":358,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"992ab00e_afb92174","line":355,"range":{"start_line":355,"start_character":55,"end_line":355,"end_character":56},"in_reply_to":"17faf3dd_0b72c99d","updated":"2023-04-12 18:01:23.000000000","message":"I saw several double quotes used in the conductor.py file see:\nsync_local_state_interval\nautomated_clean\nclean_callback_timeout\nrescue_callback_timeout\nconductor_group\n\nI\u0027m happy to fix, Should I address the others as part of this?","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5fd61db60a86aa351fe34b23dda68b30b8b60bb1","unresolved":false,"context_lines":[{"line_number":352,"context_line":""},{"line_number":353,"context_line":"    cfg.BoolOpt(\u0027poweroff_in_cleanfail\u0027,"},{"line_number":354,"context_line":"                default\u003dFalse,"},{"line_number":355,"context_line":"                help\u003d_(\u0027If True power off nodes in the \"clean failed\" \u0027"},{"line_number":356,"context_line":"                       \u0027state. Default False.\u0027)),"},{"line_number":357,"context_line":"]"},{"line_number":358,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"12060aa6_ea98ec3f","line":355,"range":{"start_line":355,"start_character":55,"end_line":355,"end_character":56},"in_reply_to":"992ab00e_afb92174","updated":"2023-04-24 23:09:05.000000000","message":"shrug, it is a nit. we can always clean it up at some other time.","commit_id":"5a9dd54058b0ec1707862f155336eff85bae5b44"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5fd61db60a86aa351fe34b23dda68b30b8b60bb1","unresolved":true,"context_lines":[{"line_number":353,"context_line":"    cfg.BoolOpt(\u0027poweroff_in_cleanfail\u0027,"},{"line_number":354,"context_line":"                default\u003dFalse,"},{"line_number":355,"context_line":"                help\u003d_(\u0027If True power off nodes in the \"clean failed\" \u0027"},{"line_number":356,"context_line":"                       \u0027state. Default False. option may be unsafe \u0027"},{"line_number":357,"context_line":"                       \u0027when using Cleaning to perform \u0027"},{"line_number":358,"context_line":"                       \u0027hardware-transformative actions such as \u0027"},{"line_number":359,"context_line":"                       \u0027firmware upgrade.\u0027)),"}],"source_content_type":"text/x-python","patch_set":8,"id":"c41098ac_bb4df967","line":356,"range":{"start_line":356,"start_character":46,"end_line":356,"end_character":47},"updated":"2023-04-24 23:09:05.000000000","message":"nit, s/o/O/","commit_id":"66ca9804c10d8acc4fe9b48b1d0093bf928baa3d"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"5fde8fcdda0e899143c50078f6b8ebfc7e0c3cc4","unresolved":false,"context_lines":[{"line_number":353,"context_line":"    cfg.BoolOpt(\u0027poweroff_in_cleanfail\u0027,"},{"line_number":354,"context_line":"                default\u003dFalse,"},{"line_number":355,"context_line":"                help\u003d_(\u0027If True power off nodes in the \"clean failed\" \u0027"},{"line_number":356,"context_line":"                       \u0027state. Default False. option may be unsafe \u0027"},{"line_number":357,"context_line":"                       \u0027when using Cleaning to perform \u0027"},{"line_number":358,"context_line":"                       \u0027hardware-transformative actions such as \u0027"},{"line_number":359,"context_line":"                       \u0027firmware upgrade.\u0027)),"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba6bb533_94324162","line":356,"range":{"start_line":356,"start_character":46,"end_line":356,"end_character":47},"in_reply_to":"c41098ac_bb4df967","updated":"2023-04-24 23:21:31.000000000","message":"Done","commit_id":"66ca9804c10d8acc4fe9b48b1d0093bf928baa3d"}]}
