)]}'
{"/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":"7a1fedac0046c4c7dba900bcbf3eca28fb97b36b","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This change adds a generic method of configuring clean step"},{"line_number":10,"context_line":"priorities instead of making changes in Ironic code every time a new"},{"line_number":11,"context_line":"clean step is introduced."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I56b9a878724d27af2ac05232a1680017de4d8df5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"9f560f44_8f9344a3","line":12,"updated":"2020-09-08 21:02:19.000000000","message":"I thought there was a story/task for this? If not, it is okay.","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"ff3e1598375670a1ec4d4a77b413775fa2e9384c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This change adds a generic method of configuring clean step"},{"line_number":10,"context_line":"priorities instead of making changes in Ironic code every time a new"},{"line_number":11,"context_line":"clean step is introduced."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I56b9a878724d27af2ac05232a1680017de4d8df5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"9f560f44_647a4a88","line":12,"in_reply_to":"9f560f44_8f9344a3","updated":"2020-09-09 12:42:56.000000000","message":"Thank you for your comments Julia. I added reference to the story.","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"}],"doc/source/admin/cleaning.rst":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"cddb95c4b14126951e27c823685d6227aa7548a2","unresolved":false,"context_lines":[{"line_number":282,"context_line":"  [deploy]"},{"line_number":283,"context_line":"  erase_devices_iterations\u003d1"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"Alternative option -  ``clean_step_priority_overrides``."},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"clean_step_priority_overrides is a new feature which allows specifying"},{"line_number":288,"context_line":"priority of each step using MultiOpt configuration values::"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f560f44_03bfb1aa","line":285,"range":{"start_line":285,"start_character":0,"end_line":285,"end_character":21},"updated":"2020-09-14 13:59:36.000000000","message":"Maybe make this a sub-header?\n\nAnd the purpose is overrides, it may just make more sense to say \"overriding step priority\"","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"e07a8bf79b5ab487a25bb6b2e49a6320ead57bf1","unresolved":false,"context_lines":[{"line_number":282,"context_line":"  [deploy]"},{"line_number":283,"context_line":"  erase_devices_iterations\u003d1"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"Alternative option -  ``clean_step_priority_overrides``."},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"clean_step_priority_overrides is a new feature which allows specifying"},{"line_number":288,"context_line":"priority of each step using MultiOpt configuration values::"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f560f44_41217db5","line":285,"range":{"start_line":285,"start_character":0,"end_line":285,"end_character":21},"in_reply_to":"9f560f44_03bfb1aa","updated":"2020-09-28 00:06:00.000000000","message":"Thank you for your feedback Julia, all valid points.\nDone.","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"cddb95c4b14126951e27c823685d6227aa7548a2","unresolved":false,"context_lines":[{"line_number":284,"context_line":""},{"line_number":285,"context_line":"Alternative option -  ``clean_step_priority_overrides``."},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"clean_step_priority_overrides is a new feature which allows specifying"},{"line_number":288,"context_line":"priority of each step using MultiOpt configuration values::"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"  [conductor]"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f560f44_e33a7d33","line":287,"range":{"start_line":287,"start_character":0,"end_line":287,"end_character":29},"updated":"2020-09-14 13:59:36.000000000","message":"Since this is a setting, we typically wrap it in `` and indiate which section it is in. so ``[conductor]clean_step_priority_overrides``\n\nAlso, It may make sense to start the sentence with word that is being spoken about.","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"e07a8bf79b5ab487a25bb6b2e49a6320ead57bf1","unresolved":false,"context_lines":[{"line_number":284,"context_line":""},{"line_number":285,"context_line":"Alternative option -  ``clean_step_priority_overrides``."},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"clean_step_priority_overrides is a new feature which allows specifying"},{"line_number":288,"context_line":"priority of each step using MultiOpt configuration values::"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"  [conductor]"}],"source_content_type":"text/x-rst","patch_set":14,"id":"9f560f44_211e0974","line":287,"range":{"start_line":287,"start_character":0,"end_line":287,"end_character":29},"in_reply_to":"9f560f44_e33a7d33","updated":"2020-09-28 00:06:00.000000000","message":"Done.","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":285,"context_line":"Overriding step priority"},{"line_number":286,"context_line":"------------------------"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"}],"source_content_type":"text/x-rst","patch_set":18,"id":"ec5a54b7_e37b5158","line":288,"updated":"2021-03-22 11:04:32.000000000","message":"nit: s/feature/configuration options/","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":285,"context_line":"Overriding step priority"},{"line_number":286,"context_line":"------------------------"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"}],"source_content_type":"text/x-rst","patch_set":18,"id":"a648fe46_214c2aa5","line":288,"in_reply_to":"ec5a54b7_e37b5158","updated":"2021-03-22 11:54:31.000000000","message":"Done (and renamed clean_step_priority_overrides to clean_step_priority_override across the entire change)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":286,"context_line":"------------------------"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"}],"source_content_type":"text/x-rst","patch_set":18,"id":"84302e22_f642406e","line":289,"updated":"2021-03-22 11:04:32.000000000","message":"s/MultiOpt/multiple/ (operators don\u0027t necessary know oslo.config terminology)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":286,"context_line":"------------------------"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"}],"source_content_type":"text/x-rst","patch_set":18,"id":"e94b3497_746ae73d","line":289,"in_reply_to":"84302e22_f642406e","updated":"2021-03-22 11:54:31.000000000","message":"You are absolutely right :)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"}],"source_content_type":"text/x-rst","patch_set":18,"id":"6f111fe8_11b83903","line":290,"updated":"2021-03-22 11:04:32.000000000","message":"nit: instead of :: use : and\n\n .. code-block:: ini\n\n(see examples around the docs)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":287,"context_line":""},{"line_number":288,"context_line":"``[conductor]clean_step_priority_overrides`` is a new feature which allows"},{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"}],"source_content_type":"text/x-rst","patch_set":18,"id":"b68e76c1_ccab8ca2","line":290,"in_reply_to":"6f111fe8_11b83903","updated":"2021-03-22 11:54:31.000000000","message":"Yeah that\u0027s much neater. Done!","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"68d3ca79_d4716e65","line":292,"updated":"2021-03-22 11:04:32.000000000","message":"very nit: since each option override one priority, I\u0027d use singular \"override\"","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":289,"context_line":"specifying priority of each step using MultiOpt configuration values::"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"  [conductor]"},{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"f8dd1020_b8ae3f28","line":292,"in_reply_to":"68d3ca79_d4716e65","updated":"2021-03-22 11:54:31.000000000","message":"Very good point, it reads better in singular and using singular makes it more obvious the option takes only one key value pair at a time (instead of a list). Done across the entire change.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"52922236f07eba3836c8265c1f87a754a7e951f3","unresolved":true,"context_lines":[{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"This parameter can be specified as many times as required to define priorities"},{"line_number":297,"context_line":"for several cleaning steps - the values will be combined."},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"abc08dc1_3535f38c","line":295,"updated":"2021-03-22 01:11:43.000000000","message":"Are we considering the case where the user will set\n\n```\n[conductor]\nclean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123,management.reset_bios_to_default:234\nclean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345\n```\n\n?","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"This parameter can be specified as many times as required to define priorities"},{"line_number":297,"context_line":"for several cleaning steps - the values will be combined."},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"392d0f1b_a4ee9527","line":295,"updated":"2021-03-22 11:04:32.000000000","message":"Let\u0027s avoid having two ways to express the same thing","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"This parameter can be specified as many times as required to define priorities"},{"line_number":297,"context_line":"for several cleaning steps - the values will be combined."},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"c424a000_da57e03a","line":295,"in_reply_to":"392d0f1b_a4ee9527","updated":"2021-03-22 11:54:31.000000000","message":"Thanks for your insights!","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"03f3d0eb7aa29733030677062fcac59dcadd12c7","unresolved":true,"context_lines":[{"line_number":292,"context_line":"  clean_step_priority_overrides\u003ddeploy.erase_devices_metadata:123"},{"line_number":293,"context_line":"  clean_step_priority_overrides\u003dmanagement.reset_bios_to_default:234"},{"line_number":294,"context_line":"  clean_step_priority_overrides\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"This parameter can be specified as many times as required to define priorities"},{"line_number":297,"context_line":"for several cleaning steps - the values will be combined."},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"e5a5661f_1477bbbd","line":295,"in_reply_to":"abc08dc1_3535f38c","updated":"2021-03-22 04:23:21.000000000","message":"This is a very good question. I\u0027d be inclined to say we shouldn\u0027t support such syntax (and document this clearly) - it seems to me it can lead to confusion. What are your thoughts? Another thing is whether it would work (I\u0027d have to refresh my understanding of MultiOpt and test this in the lab to comment on this with full confidence)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"50601be579e9a9cac515e43a06ef471a6d27e19b","unresolved":true,"context_lines":[{"line_number":292,"context_line":".. code-block:: ini"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"2cd44dd3_3856934f","line":295,"range":{"start_line":295,"start_character":1,"end_line":295,"end_character":64},"updated":"2021-03-23 04:06:59.000000000","message":"Some of the clean steps have a config defined to set the priority [1]. Which priority will take effect if the that config (Ex: [deploy]/erase_devices_metadata_priority) is defined along with \u0027deploy.erase_devices_metadata:123\u0027 ?\n\n[1] https://github.com/openstack/ironic/blob/4a3bbf6d28eeede0bab36cf7ed412192c2300a1f/ironic/conf/deploy.py#L43-L57","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"4733a79edb35d54ad28e54a69f95b4e5018b5332","unresolved":true,"context_lines":[{"line_number":292,"context_line":".. code-block:: ini"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"cdb0527b_20985c93","line":295,"range":{"start_line":295,"start_character":1,"end_line":295,"end_character":64},"in_reply_to":"2cd44dd3_3856934f","updated":"2021-03-24 04:57:52.000000000","message":"Good question, I\u0027m setting up a lab to validate another recently merged change and will test this out of curiosity too. Having said that I think it would be better if there is only one, clear way of setting priorities. I propose we deprecate [deploy]/erase_devices_metadata_priority and [deploy]/erase_devices_priority in a follow-up change.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"4c777370040928251d28633392cd3d4b550b02ce","unresolved":false,"context_lines":[{"line_number":292,"context_line":".. code-block:: ini"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"aab0dec7_5b25a23a","line":295,"range":{"start_line":295,"start_character":1,"end_line":295,"end_character":64},"in_reply_to":"cdb0527b_20985c93","updated":"2021-03-25 06:17:12.000000000","message":"I tested this in the lab, the priority set with clean_step_priority_override will take precedence as expected.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"50601be579e9a9cac515e43a06ef471a6d27e19b","unresolved":true,"context_lines":[{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"This parameter can be specified as many times as required to define priorities"}],"source_content_type":"text/x-rst","patch_set":19,"id":"cea9d54b_1092e77a","line":296,"range":{"start_line":296,"start_character":2,"end_line":296,"end_character":67},"updated":"2021-03-23 04:06:59.000000000","message":"Different hardware types may have same clean step name (Ex: update_firmware is present in \u0027ilo\u0027 and \u0027redfish\u0027 hardware type [1]). The given config would apply the same given priority to clean steps of both the hardware types. \nFor certain hardware it may be necessary to execute the various clean steps in a particular order to make it work. Such ordering for one hardware type may conflict with the ordering required for another hardware type. This config naming takes away the flexibility of having different priority values for same clean step defined across hardware types.\n\n[1] https://github.com/openstack/ironic/blob/4a3bbf6d28eeede0bab36cf7ed412192c2300a1f/ironic/drivers/modules/ilo/management.py#L435-L440\n[2] https://github.com/openstack/ironic/blob/4a3bbf6d28eeede0bab36cf7ed412192c2300a1f/ironic/drivers/modules/redfish/management.py#L709-L717","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8f6d66fecc077957a498f1bd64c6791f3223b063","unresolved":true,"context_lines":[{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"This parameter can be specified as many times as required to define priorities"}],"source_content_type":"text/x-rst","patch_set":19,"id":"c87a02c1_4cc35be9","line":296,"range":{"start_line":296,"start_character":2,"end_line":296,"end_character":67},"in_reply_to":"58546c83_5169dc4d","updated":"2021-03-23 11:58:05.000000000","message":"Note that update_firmware requires arguments and thus cannot be used in automated cleaning.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"4733a79edb35d54ad28e54a69f95b4e5018b5332","unresolved":true,"context_lines":[{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"This parameter can be specified as many times as required to define priorities"}],"source_content_type":"text/x-rst","patch_set":19,"id":"a2bc6176_15bc7c1d","line":296,"range":{"start_line":296,"start_character":2,"end_line":296,"end_character":67},"in_reply_to":"9385dd38_7ddcc7ad","updated":"2021-03-24 04:57:52.000000000","message":"I propose we leave this out of the scope of this particular change, as the original story / RFE did not mention differentiating hardware types and I think this needs further discussion.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"1cf8ed6dbb9ebac7e7b0a076db2a7c4c0302b12b","unresolved":true,"context_lines":[{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"This parameter can be specified as many times as required to define priorities"}],"source_content_type":"text/x-rst","patch_set":19,"id":"9385dd38_7ddcc7ad","line":296,"range":{"start_line":296,"start_character":2,"end_line":296,"end_character":67},"in_reply_to":"c87a02c1_4cc35be9","updated":"2021-03-24 04:44:18.000000000","message":"Update_firmware is a bad example, but the point I wanted to convey was different hardware types can have a clean step operations needing different ordering and that could be achieved by tweaking priority.\nCan \u0027driver\u0027 name be added to key part of the config like ilo.management.clean_priority_reset_ilo:345? Or will it lead to too many configs for the same method supported across hardware types?","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"83c1fe46d3c4ce812a2161f87a2e96b2740a79e4","unresolved":true,"context_lines":[{"line_number":293,"context_line":""},{"line_number":294,"context_line":"  [conductor]"},{"line_number":295,"context_line":"  clean_step_priority_override\u003ddeploy.erase_devices_metadata:123"},{"line_number":296,"context_line":"  clean_step_priority_override\u003dmanagement.reset_bios_to_default:234"},{"line_number":297,"context_line":"  clean_step_priority_override\u003dmanagement.clean_priority_reset_ilo:345"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"This parameter can be specified as many times as required to define priorities"}],"source_content_type":"text/x-rst","patch_set":19,"id":"58546c83_5169dc4d","line":296,"range":{"start_line":296,"start_character":2,"end_line":296,"end_character":67},"in_reply_to":"cea9d54b_1092e77a","updated":"2021-03-23 11:55:15.000000000","message":"The problem is, what we do now does not scale. We cannot keep adding specific options for clean steps, especially with different interfaces.\n\nCan you provide a real world example when someone would want different priorities for the same step in iLO and Redfish?","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"}],"ironic/conductor/steps.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        for interface in interfaces:"},{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_703fe824","line":122,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: W291 trailing whitespace","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"},{"line_number":126,"context_line":"    else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_503aa433","line":123,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E127 continuation line over-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"},{"line_number":126,"context_line":"    else:"},{"line_number":127,"context_line":"        all_steps \u003d task.node."},{"line_number":128,"context_line":"        driver_internal_info[\u0027agent_cached_clean_steps\u0027]"},{"line_number":129,"context_line":"        steps \u003d [step.copy() for step_list in all_steps.values()"},{"line_number":130,"context_line":"                 for step in step_list]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_b04980d1","line":127,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E999 SyntaxError: invalid syntax","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":133,"context_line":"            new_priority \u003d (value for x, value in CONF.conductor."},{"line_number":134,"context_line":"                            clean_step_priority_overrides.items()"},{"line_number":135,"context_line":"                            if x.split(\u0027.\u0027)[1] \u003d\u003d step.get(\u0027step\u0027))."},{"line_number":136,"context_line":"                            next()"},{"line_number":137,"context_line":"            if new_priority is not None:"},{"line_number":138,"context_line":"                step[\u0027priority\u0027] \u003d new_priority"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_90443cb9","line":136,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E113 unexpected indentation","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        for interface in interfaces:"},{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_a1d92258","line":122,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: W291 trailing whitespace","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"},{"line_number":126,"context_line":"    else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_01dbae4e","line":123,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E127 continuation line over-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":129,"context_line":"                 for step in step_list]"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"        for step in steps:"},{"line_number":132,"context_line":"            new_priority \u003d (value for x, value in CONF.conductor.clean_step_priority_overrides.items()"},{"line_number":133,"context_line":"                            if x.split(\u0027.\u0027)[1] \u003d\u003d step.get(\u0027step\u0027)).next()"},{"line_number":134,"context_line":"            if new_priority is not None:"},{"line_number":135,"context_line":"                step[\u0027priority\u0027] \u003d new_priority"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_e1df9a37","line":132,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E501 line too long (102 \u003e 79 characters)","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        for interface in interfaces:"},{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_1c3af1ca","line":122,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: W291 trailing whitespace","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            interface \u003d getattr(task.driver, interface)"},{"line_number":121,"context_line":"            if interface:"},{"line_number":122,"context_line":"                interface_steps \u003d [x for x in "},{"line_number":123,"context_line":"                                    getattr(interface, get_method)(task)"},{"line_number":124,"context_line":"                                   if not enabled or x[\u0027priority\u0027] \u003e 0]"},{"line_number":125,"context_line":"                steps.extend(interface_steps)"},{"line_number":126,"context_line":"    else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_7c332df7","line":123,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E127 continuation line over-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":129,"context_line":"                 for step in step_list]"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"        for step in steps:"},{"line_number":132,"context_line":"            new_priority \u003d (value for x, value in CONF.conductor.clean_step_priority_overrides.items()"},{"line_number":133,"context_line":"                            if x.split(\u0027.\u0027)[1] \u003d\u003d step.get(\u0027step\u0027)).next()"},{"line_number":134,"context_line":"            if new_priority is not None:"},{"line_number":135,"context_line":"                step[\u0027priority\u0027] \u003d new_priority"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_5c30e9e8","line":132,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E501 line too long (102 \u003e 79 characters)","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7a1fedac0046c4c7dba900bcbf3eca28fb97b36b","unresolved":false,"context_lines":[{"line_number":143,"context_line":"                                \u0027get_clean_steps\u0027, enabled\u003denabled,"},{"line_number":144,"context_line":"                                sort_step_key\u003dsort_key)"},{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_overrides:"},{"line_number":146,"context_line":"        LOG.debug(\"CONF.conductor.clean_step_priority_overrides is set\")"},{"line_number":147,"context_line":"        LOG.debug(\"cleaning_steps prior to applying \""},{"line_number":148,"context_line":"                  \"clean_step_priority_overrides: %s\","},{"line_number":149,"context_line":"                  str(cleaning_steps))"},{"line_number":150,"context_line":"        clean_step_priority_overrides_dict \u003d dict()"},{"line_number":151,"context_line":"        for element in CONF.conductor.clean_step_priority_overrides:"},{"line_number":152,"context_line":"            for k, v in element.items():"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f560f44_cf5b7c1f","line":149,"range":{"start_line":146,"start_character":0,"end_line":149,"end_character":38},"updated":"2020-09-08 21:02:19.000000000","message":"Any chance we can wrap these together into a single log entry?","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7a1fedac0046c4c7dba900bcbf3eca28fb97b36b","unresolved":false,"context_lines":[{"line_number":158,"context_line":"                cleaning_steps[iteration][\"priority\"] \u003d \\"},{"line_number":159,"context_line":"                    clean_step_priority_overrides_dict[csp_overrides_key]"},{"line_number":160,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":161,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    else:"},{"line_number":164,"context_line":"        LOG.debug(\"CONF.conductor.clean_step_priority_overrides not set\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f560f44_cfb09c43","line":161,"updated":"2020-09-08 21:02:19.000000000","message":"Or maybe just a single one logging both before/after?","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7a1fedac0046c4c7dba900bcbf3eca28fb97b36b","unresolved":false,"context_lines":[{"line_number":161,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    else:"},{"line_number":164,"context_line":"        LOG.debug(\"CONF.conductor.clean_step_priority_overrides not set\")"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    return cleaning_steps"},{"line_number":167,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9f560f44_afad68eb","line":164,"range":{"start_line":164,"start_character":0,"end_line":164,"end_character":73},"updated":"2020-09-08 21:02:19.000000000","message":"Do we absolutely need to log that an override is not set? Especially if we log at the beginning of when an override *does* exist?","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"ff3e1598375670a1ec4d4a77b413775fa2e9384c","unresolved":false,"context_lines":[{"line_number":161,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    else:"},{"line_number":164,"context_line":"        LOG.debug(\"CONF.conductor.clean_step_priority_overrides not set\")"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    return cleaning_steps"},{"line_number":167,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9f560f44_84831e56","line":164,"range":{"start_line":164,"start_character":0,"end_line":164,"end_character":73},"in_reply_to":"9f560f44_afad68eb","updated":"2020-09-09 12:42:56.000000000","message":"All good points - I applied your recommendations.","commit_id":"ef9b30eb086a49081276c1e4f70be551cd722d24"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"15c5a39e2c6f7fc74e44447e3282925b38865c45","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        LOG.debug(\"clean_step_priority_overrides is set; cleaning_steps\""},{"line_number":147,"context_line":"                  \"prior to applying it: %s\","},{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d dict()"},{"line_number":150,"context_line":"        for element in CONF.conductor.clean_step_priority_overrides:"},{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_13ee5f20","line":149,"range":{"start_line":149,"start_character":45,"end_line":149,"end_character":51},"updated":"2020-09-21 22:21:20.000000000","message":"My fingers are lazy so I just {} :)","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"566e901461894e008e51629b2f3c5c1f6aab9afa","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        LOG.debug(\"clean_step_priority_overrides is set; cleaning_steps\""},{"line_number":147,"context_line":"                  \"prior to applying it: %s\","},{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d dict()"},{"line_number":150,"context_line":"        for element in CONF.conductor.clean_step_priority_overrides:"},{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_32f21070","line":149,"range":{"start_line":149,"start_character":45,"end_line":149,"end_character":51},"in_reply_to":"9f560f44_13ee5f20","updated":"2020-09-28 00:10:53.000000000","message":"Done","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"15c5a39e2c6f7fc74e44447e3282925b38865c45","unresolved":false,"context_lines":[{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d dict()"},{"line_number":150,"context_line":"        for element in CONF.conductor.clean_step_priority_overrides:"},{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_708a31bc","line":152,"range":{"start_line":151,"start_character":0,"end_line":152,"end_character":57},"updated":"2020-09-21 22:21:20.000000000","message":"you could do this with just:\n\n    clean_step_priority_overrides_dict.update(element)","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"566e901461894e008e51629b2f3c5c1f6aab9afa","unresolved":false,"context_lines":[{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d dict()"},{"line_number":150,"context_line":"        for element in CONF.conductor.clean_step_priority_overrides:"},{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_92e5dca6","line":152,"range":{"start_line":151,"start_character":0,"end_line":152,"end_character":57},"in_reply_to":"9f560f44_708a31bc","updated":"2020-09-28 00:10:53.000000000","message":"Done","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"15c5a39e2c6f7fc74e44447e3282925b38865c45","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":156,"context_line":"            if csp_overrides_key in clean_step_priority_overrides_dict:"},{"line_number":157,"context_line":"                cleaning_steps[iteration][\"priority\"] \u003d \\"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_d04a1d81","line":154,"updated":"2020-09-21 22:21:20.000000000","message":"It is not really ideomatic python to use enumerate when `iteration` is only used to index back into the original list. I\u0027d suggest:\n\n    for step in cleaning_steps:","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"566e901461894e008e51629b2f3c5c1f6aab9afa","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            for k, v in element.items():"},{"line_number":152,"context_line":"                clean_step_priority_overrides_dict[k] \u003d v"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":156,"context_line":"            if csp_overrides_key in clean_step_priority_overrides_dict:"},{"line_number":157,"context_line":"                cleaning_steps[iteration][\"priority\"] \u003d \\"}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_72e8087a","line":154,"in_reply_to":"9f560f44_d04a1d81","updated":"2020-09-28 00:10:53.000000000","message":"Done","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"15c5a39e2c6f7fc74e44447e3282925b38865c45","unresolved":false,"context_lines":[{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":156,"context_line":"            if csp_overrides_key in clean_step_priority_overrides_dict:"},{"line_number":157,"context_line":"                cleaning_steps[iteration][\"priority\"] \u003d \\"},{"line_number":158,"context_line":"                    clean_step_priority_overrides_dict[csp_overrides_key]"},{"line_number":159,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":160,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":161,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_d3fd0709","line":158,"range":{"start_line":156,"start_character":0,"end_line":158,"end_character":73},"updated":"2020-09-21 22:21:20.000000000","message":"You could replace these 3 lines with:\n\n    step[\u0027priority\u0027] \u003d clean_step_priority_overrides_dict.get(\n        csp_overrides_key, step[\u0027priority\u0027])","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"566e901461894e008e51629b2f3c5c1f6aab9afa","unresolved":false,"context_lines":[{"line_number":153,"context_line":""},{"line_number":154,"context_line":"        for iteration, step in enumerate(cleaning_steps):"},{"line_number":155,"context_line":"            csp_overrides_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":156,"context_line":"            if csp_overrides_key in clean_step_priority_overrides_dict:"},{"line_number":157,"context_line":"                cleaning_steps[iteration][\"priority\"] \u003d \\"},{"line_number":158,"context_line":"                    clean_step_priority_overrides_dict[csp_overrides_key]"},{"line_number":159,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":160,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":161,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_d202b43d","line":158,"range":{"start_line":156,"start_character":0,"end_line":158,"end_character":73},"in_reply_to":"9f560f44_d3fd0709","updated":"2020-09-28 00:10:53.000000000","message":"Done","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":143,"context_line":"                                \u0027get_clean_steps\u0027, enabled\u003denabled,"},{"line_number":144,"context_line":"                                sort_step_key\u003dsort_key)"},{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_overrides:"},{"line_number":146,"context_line":"        LOG.debug(\"clean_step_priority_overrides is set; cleaning_steps \""},{"line_number":147,"context_line":"                  \"prior to applying it: %s\","},{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d {}"}],"source_content_type":"text/x-python","patch_set":18,"id":"c7cec911_b45b9fe4","line":146,"updated":"2021-03-22 11:04:32.000000000","message":"Let\u0027s probably remove this, all configuration options are logged anyway","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":143,"context_line":"                                \u0027get_clean_steps\u0027, enabled\u003denabled,"},{"line_number":144,"context_line":"                                sort_step_key\u003dsort_key)"},{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_overrides:"},{"line_number":146,"context_line":"        LOG.debug(\"clean_step_priority_overrides is set; cleaning_steps \""},{"line_number":147,"context_line":"                  \"prior to applying it: %s\","},{"line_number":148,"context_line":"                  str(cleaning_steps))"},{"line_number":149,"context_line":"        clean_step_priority_overrides_dict \u003d {}"}],"source_content_type":"text/x-python","patch_set":18,"id":"00506513_b86e2cac","line":146,"in_reply_to":"c7cec911_b45b9fe4","updated":"2021-03-22 11:54:31.000000000","message":"Done.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":155,"context_line":"            step[\"priority\"] \u003d clean_step_priority_overrides_dict.get("},{"line_number":156,"context_line":"                csp_overrides_key, step[\"priority\"])"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":159,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    return cleaning_steps"}],"source_content_type":"text/x-python","patch_set":18,"id":"11286668_cdcfb3f8","line":158,"updated":"2021-03-22 11:04:32.000000000","message":"nit: \"Clean step priorities after applying overrides for node %(node)s: %(step)s\"","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":155,"context_line":"            step[\"priority\"] \u003d clean_step_priority_overrides_dict.get("},{"line_number":156,"context_line":"                csp_overrides_key, step[\"priority\"])"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":159,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    return cleaning_steps"}],"source_content_type":"text/x-python","patch_set":18,"id":"3ffd3bd6_4bfab514","line":158,"in_reply_to":"11286668_cdcfb3f8","updated":"2021-03-22 11:54:31.000000000","message":"Done.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":156,"context_line":"                csp_overrides_key, step[\"priority\"])"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":159,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    return cleaning_steps"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"136af6a9_8061a144","line":159,"updated":"2021-03-22 11:04:32.000000000","message":"nit: usually we use \", \".join(something) instead of str() (also str() is never needed with %s).","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":156,"context_line":"                csp_overrides_key, step[\"priority\"])"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        LOG.debug(\"cleaning_steps after applying \""},{"line_number":159,"context_line":"                  \"clean_step_priority_overrides: %s\", str(cleaning_steps))"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    return cleaning_steps"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"9fd9c820_df0037e9","line":159,"in_reply_to":"136af6a9_8061a144","updated":"2021-03-22 11:54:31.000000000","message":"Done.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"0d9cb51e292857348cea6df7723ef8f0abdb4eb1","unresolved":true,"context_lines":[{"line_number":141,"context_line":"    sort_key \u003d _clean_step_key if sort else None"},{"line_number":142,"context_line":"    cleaning_steps \u003d _get_steps(task, CLEANING_INTERFACE_PRIORITY,"},{"line_number":143,"context_line":"                                \u0027get_clean_steps\u0027, enabled\u003denabled,"},{"line_number":144,"context_line":"                                sort_step_key\u003dsort_key)"},{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_override:"},{"line_number":146,"context_line":"        clean_step_priority_override_dict \u003d {}"},{"line_number":147,"context_line":"        for element in CONF.conductor.clean_step_priority_override:"}],"source_content_type":"text/x-python","patch_set":20,"id":"08e5d059_3ead4b74","line":144,"updated":"2021-03-26 02:31:04.000000000","message":"At this point cleaning_steps is sorted by priority, but if the priority is overridden below its now out of order. How about this logic gets moved to _get_steps? Then steps will only be sorted correctly once, and if deployment steps ever need a priority override feature its basically already done.\n\nSo _get_steps would get a new argument like priority_override, and you\u0027d pass in clean_step_priority_override_dict.\n\nOr alternatively just call _sorted_steps again at the end of this function ;)","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f28db1d0bc89f7ce9da1849c37693d1dae2ee521","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    sort_key \u003d _clean_step_key if sort else None"},{"line_number":142,"context_line":"    cleaning_steps \u003d _get_steps(task, CLEANING_INTERFACE_PRIORITY,"},{"line_number":143,"context_line":"                                \u0027get_clean_steps\u0027, enabled\u003denabled,"},{"line_number":144,"context_line":"                                sort_step_key\u003dsort_key)"},{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_override:"},{"line_number":146,"context_line":"        clean_step_priority_override_dict \u003d {}"},{"line_number":147,"context_line":"        for element in CONF.conductor.clean_step_priority_override:"}],"source_content_type":"text/x-python","patch_set":20,"id":"1fa86c3d_df357ff5","line":144,"in_reply_to":"08e5d059_3ead4b74","updated":"2021-03-29 13:06:14.000000000","message":"Well spotted Steve, I missed this. Thank you for pointing out this problem. Uploading a revised patch with workflow -1 to lab test it prior to moving further.","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"0d9cb51e292857348cea6df7723ef8f0abdb4eb1","unresolved":true,"context_lines":[{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_override:"},{"line_number":146,"context_line":"        clean_step_priority_override_dict \u003d {}"},{"line_number":147,"context_line":"        for element in CONF.conductor.clean_step_priority_override:"},{"line_number":148,"context_line":"            clean_step_priority_override_dict.update(element)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"        for step in cleaning_steps:"},{"line_number":151,"context_line":"            csp_override_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"}],"source_content_type":"text/x-python","patch_set":20,"id":"91319012_308bb377","line":148,"updated":"2021-03-26 02:31:04.000000000","message":"I\u0027m not quite sure what format is in CONF.conductor.clean_step_priority_override, but I think these 3 lines can be replaced with:\n\n    clean_step_priority_override_dict \u003d {s[0]: s[1] for s in\n                                         CONF.conductor.clean_step_priority_override}\n\nor if its a dict and you just want to copy it:\n\n    clean_step_priority_override_dict \u003d dict(CONF.conductor.clean_step_priority_override)","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"69ccf03f0e95ec68e41f6f03b78c7222550ee587","unresolved":true,"context_lines":[{"line_number":145,"context_line":"    if CONF.conductor.clean_step_priority_override:"},{"line_number":146,"context_line":"        clean_step_priority_override_dict \u003d {}"},{"line_number":147,"context_line":"        for element in CONF.conductor.clean_step_priority_override:"},{"line_number":148,"context_line":"            clean_step_priority_override_dict.update(element)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"        for step in cleaning_steps:"},{"line_number":151,"context_line":"            csp_override_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"}],"source_content_type":"text/x-python","patch_set":20,"id":"f004443d_fd3c9f3b","line":148,"in_reply_to":"91319012_308bb377","updated":"2021-03-30 06:24:57.000000000","message":"CONF.conductor.clean_step_priority_override is a list of dictionaries, so the first option would apply. However I\u0027m running into issues with unit tests while trying to use this syntax so I will leave it as-is for now, hope that\u0027s okay.","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"0d9cb51e292857348cea6df7723ef8f0abdb4eb1","unresolved":true,"context_lines":[{"line_number":148,"context_line":"            clean_step_priority_override_dict.update(element)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"        for step in cleaning_steps:"},{"line_number":151,"context_line":"            csp_override_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":152,"context_line":"            step[\"priority\"] \u003d clean_step_priority_override_dict.get("},{"line_number":153,"context_line":"                csp_override_key, step[\"priority\"])"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"c8977e24_0f0b668f","line":151,"updated":"2021-03-26 02:31:04.000000000","message":"this would be more pythonic than appending strings:\n\n    csp_override_key \u003d \u0027%(interface)s.%(step)s\u0027 % step","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f28db1d0bc89f7ce9da1849c37693d1dae2ee521","unresolved":false,"context_lines":[{"line_number":148,"context_line":"            clean_step_priority_override_dict.update(element)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"        for step in cleaning_steps:"},{"line_number":151,"context_line":"            csp_override_key \u003d step[\"interface\"] + \".\" + step[\"step\"]"},{"line_number":152,"context_line":"            step[\"priority\"] \u003d clean_step_priority_override_dict.get("},{"line_number":153,"context_line":"                csp_override_key, step[\"priority\"])"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"aa73dc6c_d7e13431","line":151,"in_reply_to":"c8977e24_0f0b668f","updated":"2021-03-29 13:06:14.000000000","message":"Thanks Steve. Done.","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"ca014d69f3449a417b616ecabb998055585dcaa2","unresolved":true,"context_lines":[{"line_number":129,"context_line":"            override_key \u003d \u0027%(interface)s.%(step)s\u0027 % step"},{"line_number":130,"context_line":"            override_value \u003d prio_overrides.get(override_key, step[\"priority\"])"},{"line_number":131,"context_line":"            if override_value:"},{"line_number":132,"context_line":"                step[\"priority\"] \u003d override_value"},{"line_number":133,"context_line":"    if sort_step_key:"},{"line_number":134,"context_line":"        steps \u003d _sorted_steps(steps, sort_step_key)"},{"line_number":135,"context_line":"    return steps"}],"source_content_type":"text/x-python","patch_set":23,"id":"d48bce3f_64e6f2f2","line":132,"updated":"2021-03-30 10:09:46.000000000","message":"types.Dict() automatically set the value to String https://opendev.org/openstack/oslo.config/src/branch/master/oslo_config/types.py#L620\nwe should probably convert this to int for proper ordering","commit_id":"db1f67b640258fc3430b90ebefa008b8f92315f2"}],"ironic/conf/conductor.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_f01498a2","line":274,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_d017d4a2","line":275,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_300f308a","line":276,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_1012ecb1","line":277,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_702888e1","line":278,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_5023c405","line":279,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"6c914063fe2abf7a63b0b654ed1986fba2719b10","unresolved":false,"context_lines":[{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"},{"line_number":283,"context_line":"               help\u003d_(\u0027Priority to run automated clean steps for both inband \u0027"},{"line_number":284,"context_line":"                      \u0027and out of band clean steps. It defaults out to be the\u0027"},{"line_number":285,"context_line":"                      \u0027 list of automated clean steps available and its \u0027"},{"line_number":286,"context_line":"                      \u0027default priority If set to 0, will not run during \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_b02220ff","line":283,"updated":"2020-07-31 12:08:35.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"68891077fe34e6cfeda7a08dd21e2d80e23ed227"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_41e806e1","line":274,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_21e5120a","line":275,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_81ee9eea","line":276,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_61eb8adb","line":277,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_c1bd36d9","line":278,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_a1c2c257","line":279,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"a5561046508bcbc98f0528900a11b6c0670090ce","unresolved":false,"context_lines":[{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"},{"line_number":283,"context_line":"               help\u003d_(\u0027Priority to run automated clean steps for both inband \u0027"},{"line_number":284,"context_line":"                      \u0027and out of band clean steps. It defaults out to be the\u0027"},{"line_number":285,"context_line":"                      \u0027 list of automated clean steps available and its \u0027"},{"line_number":286,"context_line":"                      \u0027default priority If set to 0, will not run during \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_01b44ef1","line":283,"updated":"2020-08-03 01:51:31.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ed8df4cb1b6c0fd40594fd37cd2650c8dea13d08"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_3c42553f","line":274,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_1c3f91b4","line":275,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_7c484d5b","line":276,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":274,"context_line":"               default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_5c458942","line":277,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":275,"context_line":"                      \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_bc7785a0","line":278,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                      \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                      \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                      (\u0027management.\u0027"},{"line_number":279,"context_line":"                      \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_9c7c4184","line":279,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":280,"context_line":"                          20,"},{"line_number":281,"context_line":"                      \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                      \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"},{"line_number":283,"context_line":"               help\u003d_(\u0027Priority to run automated clean steps for both inband \u0027"},{"line_number":284,"context_line":"                      \u0027and out of band clean steps. It defaults out to be the\u0027"},{"line_number":285,"context_line":"                      \u0027 list of automated clean steps available and its \u0027"},{"line_number":286,"context_line":"                      \u0027default priority If set to 0, will not run during \u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_fc6d7dcc","line":283,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a9c7dfdbf00c35d70589f96e6e07b0f0613dab52","unresolved":false,"context_lines":[{"line_number":270,"context_line":"                      \u0027will be used by ironic when building UEFI-bootable ISO \u0027"},{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"                default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                         \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                         \u0027management.clean_priority_reset_ilo\u0027: 0,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_48918b99","line":273,"updated":"2020-08-17 10:04:19.000000000","message":"I think the latest version of the RFE uses a MultiOpt which is going to be a bit harder to code but a bit easier to use","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f441cc60fbcb823ab3c6e7457998d41c8b1a5ef9","unresolved":false,"context_lines":[{"line_number":270,"context_line":"                      \u0027will be used by ironic when building UEFI-bootable ISO \u0027"},{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"                default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                         \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                         \u0027management.clean_priority_reset_ilo\u0027: 0,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_3aba8bbf","line":273,"in_reply_to":"9f560f44_48918b99","updated":"2020-08-18 05:06:33.000000000","message":"Thank you for your feedback Dmitry. I uploaded a new version of the patch which is using MultiOpt instead.","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a9c7dfdbf00c35d70589f96e6e07b0f0613dab52","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"                default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                         \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                         \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                         \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                         (\u0027management.\u0027"},{"line_number":279,"context_line":"                          \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                         20,"},{"line_number":281,"context_line":"                         \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                         \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"},{"line_number":283,"context_line":"                help\u003d_(\u0027Priority to run automated clean steps for both inband \u0027"},{"line_number":284,"context_line":"                       \u0027and out of band clean steps. It defaults out to be the\u0027"},{"line_number":285,"context_line":"                       \u0027 list of automated clean steps available and its \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_e8917f9c","line":282,"range":{"start_line":274,"start_character":25,"end_line":282,"end_character":77},"updated":"2020-08-17 10:04:19.000000000","message":"Let\u0027s not have the defaults here to avoid duplicating the same thing twice","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f441cc60fbcb823ab3c6e7457998d41c8b1a5ef9","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                      \u0027out of kernel and ramdisk. Required for UEFI boot from \u0027"},{"line_number":272,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":273,"context_line":"    cfg.DictOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":274,"context_line":"                default\u003d{\u0027deploy.erase_devices\u0027: 10,"},{"line_number":275,"context_line":"                         \u0027management.reset_bios_to_default\u0027: 10,"},{"line_number":276,"context_line":"                         \u0027management.clean_priority_reset_ilo\u0027: 0,"},{"line_number":277,"context_line":"                         \u0027management.clean_priority_reset_bios_to_default\u0027: 10,"},{"line_number":278,"context_line":"                         (\u0027management.\u0027"},{"line_number":279,"context_line":"                          \u0027clean_priority_reset_secure_boot_keys_to_default\u0027):"},{"line_number":280,"context_line":"                         20,"},{"line_number":281,"context_line":"                         \u0027management.clean_priority_clear_secure_boot_keys\u0027: 0,"},{"line_number":282,"context_line":"                         \u0027management.clean_priority_reset_ilo_credential\u0027: 30},"},{"line_number":283,"context_line":"                help\u003d_(\u0027Priority to run automated clean steps for both inband \u0027"},{"line_number":284,"context_line":"                       \u0027and out of band clean steps. It defaults out to be the\u0027"},{"line_number":285,"context_line":"                       \u0027 list of automated clean steps available and its \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_5adc9f17","line":282,"range":{"start_line":274,"start_character":25,"end_line":282,"end_character":77},"in_reply_to":"9f560f44_e8917f9c","updated":"2020-08-18 05:06:33.000000000","message":"I removed the defaults from this file in the new revision as advised. Do I need to add default configuration to the config file template?","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"4b1fb7112edfab368c6d0d7f60f46867ffc0454e","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":274,"context_line":"    cfg.MultiOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003dNone,"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for for \u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_ab380f3b","line":276,"range":{"start_line":276,"start_character":25,"end_line":276,"end_character":29},"updated":"2020-08-18 08:57:40.000000000","message":"I think it makes sense to use empty dict here, not sure what others think about it \u003d)","commit_id":"23497f566a3a094f6935375e975d1c54e1d0273c"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"cffe3e10499404d4b4456f48f3630d47310fae96","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                      \u0027partition images.\u0027)),"},{"line_number":274,"context_line":"    cfg.MultiOpt(\u0027clean_step_priority_overrides\u0027,"},{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003dNone,"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for for \u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_4b617339","line":276,"range":{"start_line":276,"start_character":25,"end_line":276,"end_character":29},"in_reply_to":"9f560f44_ab380f3b","updated":"2020-08-18 09:06:14.000000000","message":"Thank you for your feedback Iury. Agreed, just fixed this.","commit_id":"23497f566a3a094f6935375e975d1c54e1d0273c"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"626d8e62fc0a9e75233125c11a8abd3cb88ac039","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for for \u0027"},{"line_number":280,"context_line":"                        \u0027inband clean step, will use the priority set in \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":13,"id":"9f560f44_b884870c","line":279,"range":{"start_line":279,"start_character":64,"end_line":279,"end_character":71},"updated":"2020-09-09 08:55:49.000000000","message":"Nit: double \"for\"","commit_id":"e15dd9b197e489a2923dcf98fab916d677a8f765"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"ff3e1598375670a1ec4d4a77b413775fa2e9384c","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for for \u0027"},{"line_number":280,"context_line":"                        \u0027inband clean step, will use the priority set in \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":13,"id":"9f560f44_29c2eb53","line":279,"range":{"start_line":279,"start_character":64,"end_line":279,"end_character":71},"in_reply_to":"9f560f44_b884870c","updated":"2020-09-09 12:42:56.000000000","message":"oops! thank you Arne, fixing this now along with the other one :)","commit_id":"e15dd9b197e489a2923dcf98fab916d677a8f765"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"15c5a39e2c6f7fc74e44447e3282925b38865c45","unresolved":false,"context_lines":[{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband\u0027"},{"line_number":280,"context_line":"                        \u0027 clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"},{"line_number":283,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_b32b3380","line":280,"range":{"start_line":280,"start_character":25,"end_line":280,"end_character":26},"updated":"2020-09-21 22:21:20.000000000","message":"nit, move this space to the end of the previous line","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"566e901461894e008e51629b2f3c5c1f6aab9afa","unresolved":false,"context_lines":[{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband\u0027"},{"line_number":280,"context_line":"                        \u0027 clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"},{"line_number":283,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9f560f44_b2fd803c","line":280,"range":{"start_line":280,"start_character":25,"end_line":280,"end_character":26},"in_reply_to":"9f560f44_b32b3380","updated":"2020-09-28 00:10:53.000000000","message":"Done","commit_id":"8054ce719434b5069afb90849c4a2848871876fd"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband \u0027"},{"line_number":280,"context_line":"                        \u0027clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"}],"source_content_type":"text/x-python","patch_set":18,"id":"ca39b2dc_d4ac787c","line":278,"updated":"2021-03-22 11:04:32.000000000","message":"nit: in-band (I think)","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027inband and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband \u0027"},{"line_number":280,"context_line":"                        \u0027clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"}],"source_content_type":"text/x-python","patch_set":18,"id":"e4c4a873_d695af44","line":278,"in_reply_to":"ca39b2dc_d4ac787c","updated":"2021-03-22 11:54:31.000000000","message":"Done.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"50601be579e9a9cac515e43a06ef471a6d27e19b","unresolved":true,"context_lines":[{"line_number":274,"context_line":"    cfg.MultiOpt(\u0027clean_step_priority_override\u0027,"},{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027in-band and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband \u0027"},{"line_number":280,"context_line":"                        \u0027clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"},{"line_number":283,"context_line":""},{"line_number":284,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"5ccca670_7a71aef8","line":281,"range":{"start_line":277,"start_character":25,"end_line":281,"end_character":33},"updated":"2021-03-23 04:06:59.000000000","message":"Need to mention the format of the dictionary keys. It should be \u0027interface\u0027.\u0027step_name\u0027","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"c3608633b2b6ffa8d93736f3b7fa6c2e3760258e","unresolved":false,"context_lines":[{"line_number":274,"context_line":"    cfg.MultiOpt(\u0027clean_step_priority_override\u0027,"},{"line_number":275,"context_line":"                 item_type\u003dtypes.Dict(),"},{"line_number":276,"context_line":"                 default\u003d{},"},{"line_number":277,"context_line":"                 help\u003d_(\u0027Priority to run automated clean steps for both \u0027"},{"line_number":278,"context_line":"                        \u0027in-band and out of band clean steps. If set to 0, \u0027"},{"line_number":279,"context_line":"                        \u0027will not run during cleaning. If unset for an inband \u0027"},{"line_number":280,"context_line":"                        \u0027clean step, will use the priority set in the \u0027"},{"line_number":281,"context_line":"                        \u0027ramdisk.\u0027)),"},{"line_number":282,"context_line":"]"},{"line_number":283,"context_line":""},{"line_number":284,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"2e91654b_81261720","line":281,"range":{"start_line":277,"start_character":25,"end_line":281,"end_character":33},"in_reply_to":"5ccca670_7a71aef8","updated":"2021-03-24 05:03:38.000000000","message":"Thanks Shivanand. Done.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"}],"ironic/conf/deploy.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                mutable\u003dTrue,"},{"line_number":78,"context_line":"                deprecated_for_removal\u003dTrue,"},{"line_number":79,"context_line":"                deprecated_reason\u003d_(\u0027This configuration option is moved to \u0027"},{"line_number":80,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":81,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":82,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":83,"context_line":"                                   \u0027please use that instead.\u0027),"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_bc4e656c","line":80,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                deprecated_for_removal\u003dTrue,"},{"line_number":79,"context_line":"                deprecated_reason\u003d_(\u0027This configuration option is moved to \u0027"},{"line_number":80,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":81,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":82,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":83,"context_line":"                                   \u0027please use that instead.\u0027),"},{"line_number":84,"context_line":"                help\u003d_(\"Whether to write zeros to a node\u0027s block devices \""}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_9c53a117","line":81,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                deprecated_reason\u003d_(\u0027This configuration option is moved to \u0027"},{"line_number":80,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":81,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":82,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":83,"context_line":"                                   \u0027please use that instead.\u0027),"},{"line_number":84,"context_line":"                help\u003d_(\"Whether to write zeros to a node\u0027s block devices \""},{"line_number":85,"context_line":"                       \"after writing random data. This will write zeros to \""}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_fc545d00","line":82,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d86b29ba3d729e1c759548c27dd9803113b18efb","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":81,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":82,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":83,"context_line":"                                   \u0027please use that instead.\u0027),"},{"line_number":84,"context_line":"                help\u003d_(\"Whether to write zeros to a node\u0027s block devices \""},{"line_number":85,"context_line":"                       \"after writing random data. This will write zeros to \""},{"line_number":86,"context_line":"                       \"the device even when \""}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_dc599935","line":83,"updated":"2020-08-03 04:25:05.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"ce217d013e0f6397f0aa3453e049d15babd7b079"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a9c7dfdbf00c35d70589f96e6e07b0f0613dab52","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":69,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":70,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":71,"context_line":"                                   \u0027please use that instead.\u0027),"},{"line_number":72,"context_line":"               help\u003d_(\u0027During shred, overwrite all block devices N times with \u0027"},{"line_number":73,"context_line":"                      \u0027random data. This is only used if a device could not \u0027"},{"line_number":74,"context_line":"                      \u0027be ATA Secure Erased. Defaults to 1.\u0027)),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_88e8c316","line":71,"updated":"2020-08-17 10:04:19.000000000","message":"I think this is for another patch","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f441cc60fbcb823ab3c6e7457998d41c8b1a5ef9","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                                   \u0027dictionary of [conductor] \u0027"},{"line_number":69,"context_line":"                                   \u0027clean_step_add_params along with other \u0027"},{"line_number":70,"context_line":"                                   \u0027clean step parameters and its values\u0027"},{"line_number":71,"context_line":"                                   \u0027please use that instead.\u0027),"},{"line_number":72,"context_line":"               help\u003d_(\u0027During shred, overwrite all block devices N times with \u0027"},{"line_number":73,"context_line":"                      \u0027random data. This is only used if a device could not \u0027"},{"line_number":74,"context_line":"                      \u0027be ATA Secure Erased. Defaults to 1.\u0027)),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_baca1b43","line":71,"in_reply_to":"9f560f44_88e8c316","updated":"2020-08-18 05:06:33.000000000","message":"I agree - I carried this over from the abandoned patch however in hindsight I think this would be a better fit for a separate change. I removed this in the new revision.","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"}],"ironic/drivers/modules/ilo/management.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a9c7dfdbf00c35d70589f96e6e07b0f0613dab52","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    @METRICS.timer(\u0027IloManagement.reset_ilo\u0027)"},{"line_number":310,"context_line":"    @base.deploy_step(priority\u003d0)"},{"line_number":311,"context_line":"    @base.clean_step("},{"line_number":312,"context_line":"        priority\u003dint(CONF.conductor.clean_step_priority_overrides["},{"line_number":313,"context_line":"                     \u0027management.clean_priority_reset_ilo\u0027]))"},{"line_number":314,"context_line":"    def reset_ilo(self, task):"},{"line_number":315,"context_line":"        \"\"\"Resets the iLO."}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_08dcb372","line":312,"updated":"2020-08-17 10:04:19.000000000","message":"Let\u0027s maybe allow missing priority here and only handle it in the conductor code where we handle overrides?","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f441cc60fbcb823ab3c6e7457998d41c8b1a5ef9","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    @METRICS.timer(\u0027IloManagement.reset_ilo\u0027)"},{"line_number":310,"context_line":"    @base.deploy_step(priority\u003d0)"},{"line_number":311,"context_line":"    @base.clean_step("},{"line_number":312,"context_line":"        priority\u003dint(CONF.conductor.clean_step_priority_overrides["},{"line_number":313,"context_line":"                     \u0027management.clean_priority_reset_ilo\u0027]))"},{"line_number":314,"context_line":"    def reset_ilo(self, task):"},{"line_number":315,"context_line":"        \"\"\"Resets the iLO."}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_fad493eb","line":312,"in_reply_to":"9f560f44_08dcb372","updated":"2020-08-18 05:06:33.000000000","message":"Understood. To make sure I get it right, do I need to just revert this change, or are further modifications needed to this code? I reverted it for now.","commit_id":"a2fc2ac526350b2ed4412ac30680b84326fd649f"}],"ironic/tests/unit/conductor/test_steps.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":596,"context_line":"        mock_power_steps.return_value \u003d [self.power_update]"},{"line_number":597,"context_line":"        mock_deploy_steps.return_value \u003d [self.deploy_erase,"},{"line_number":598,"context_line":"                                          self.deploy_update,"},{"line_number":599,"context_line":"                                          self.deploy_raid]"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        with task_manager.acquire("},{"line_number":602,"context_line":"                self.context, node.uuid, shared\u003dTrue) as task:"}],"source_content_type":"text/x-python","patch_set":18,"id":"ed7b1865_5b0ebbab","line":599,"updated":"2021-03-22 11:04:32.000000000","message":"I think you need to make a copy of each step and assign the expected priority. Otherwise you\u0027re checking that a dict equals itself.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":596,"context_line":"        mock_power_steps.return_value \u003d [self.power_update]"},{"line_number":597,"context_line":"        mock_deploy_steps.return_value \u003d [self.deploy_erase,"},{"line_number":598,"context_line":"                                          self.deploy_update,"},{"line_number":599,"context_line":"                                          self.deploy_raid]"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        with task_manager.acquire("},{"line_number":602,"context_line":"                self.context, node.uuid, shared\u003dTrue) as task:"}],"source_content_type":"text/x-python","patch_set":18,"id":"afe50bf5_40b45c23","line":599,"in_reply_to":"ed7b1865_5b0ebbab","updated":"2021-03-22 11:54:31.000000000","message":"Doh! Fixed this (and added the _fail test as well to protect against silly mistakes like this).  Thank you for pointing this out!","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"0d9cb51e292857348cea6df7723ef8f0abdb4eb1","unresolved":true,"context_lines":[{"line_number":584,"context_line":"        # Test clean_step_priority_override"},{"line_number":585,"context_line":"        cfg.CONF.set_override(\u0027clean_step_priority_override\u0027,"},{"line_number":586,"context_line":"                              [\"deploy.erase_disks:123\","},{"line_number":587,"context_line":"                               \"power.update_firmware:234\","},{"line_number":588,"context_line":"                               \"deploy.update_firmware:456\", ],"},{"line_number":589,"context_line":"                              \u0027conductor\u0027)"},{"line_number":590,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"ece93b5c_30a7ba6d","line":587,"updated":"2021-03-26 02:31:04.000000000","message":"If you swapped 123 and 234 then the test would need to assert that the order of steps had changed","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"f28db1d0bc89f7ce9da1849c37693d1dae2ee521","unresolved":false,"context_lines":[{"line_number":584,"context_line":"        # Test clean_step_priority_override"},{"line_number":585,"context_line":"        cfg.CONF.set_override(\u0027clean_step_priority_override\u0027,"},{"line_number":586,"context_line":"                              [\"deploy.erase_disks:123\","},{"line_number":587,"context_line":"                               \"power.update_firmware:234\","},{"line_number":588,"context_line":"                               \"deploy.update_firmware:456\", ],"},{"line_number":589,"context_line":"                              \u0027conductor\u0027)"},{"line_number":590,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"453064ea_c55fcbb9","line":587,"in_reply_to":"ece93b5c_30a7ba6d","updated":"2021-03-29 13:06:14.000000000","message":"After fixing the sorting bug this broke indeed - reversed the order now 😊","commit_id":"dc44a75ea0f7b547a06536cd7f042e34e77c64c4"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"54a4c7d0d782a172a578a889340ae606945c198c","unresolved":true,"context_lines":[{"line_number":609,"context_line":"                                    {\u0027abortable\u0027: True,"},{"line_number":610,"context_line":"                                     \u0027interface\u0027: \u0027deploy\u0027,"},{"line_number":611,"context_line":"                                     \u0027priority\u0027: 123,"},{"line_number":612,"context_line":"                                     \u0027step\u0027: \u0027erase_disks\u0027}]"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"        self.assertEqual(expected_step_priorities, steps)"},{"line_number":615,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"5b4aabec_ec3868ed","line":612,"updated":"2021-03-31 03:50:51.000000000","message":"The priority sort is descending in this test, but ascending in the next one. Also the priority is an int in this test and a string in the next. I feel like these two differences need to be reconciled.\n\nCan we also have a test__get_cleaning_steps_no_priority_override which asserts the order and priority so we can have a baseline to compare these tests to?","commit_id":"81af77b0e9c48736f6355c8f8d91a9f19b1c63b1"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"42b6511555275ba477f16fad5c115b7b440709f5","unresolved":false,"context_lines":[{"line_number":609,"context_line":"                                    {\u0027abortable\u0027: True,"},{"line_number":610,"context_line":"                                     \u0027interface\u0027: \u0027deploy\u0027,"},{"line_number":611,"context_line":"                                     \u0027priority\u0027: 123,"},{"line_number":612,"context_line":"                                     \u0027step\u0027: \u0027erase_disks\u0027}]"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"        self.assertEqual(expected_step_priorities, steps)"},{"line_number":615,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"44cdaab1_daaeb770","line":612,"in_reply_to":"1cd37e15_a7ee087e","updated":"2021-03-31 04:12:59.000000000","message":"Done","commit_id":"81af77b0e9c48736f6355c8f8d91a9f19b1c63b1"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"d173cb9399ff1d1332218fe63161b0fffc66dc9f","unresolved":true,"context_lines":[{"line_number":609,"context_line":"                                    {\u0027abortable\u0027: True,"},{"line_number":610,"context_line":"                                     \u0027interface\u0027: \u0027deploy\u0027,"},{"line_number":611,"context_line":"                                     \u0027priority\u0027: 123,"},{"line_number":612,"context_line":"                                     \u0027step\u0027: \u0027erase_disks\u0027}]"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"        self.assertEqual(expected_step_priorities, steps)"},{"line_number":615,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"1cd37e15_a7ee087e","line":612,"in_reply_to":"5b4aabec_ec3868ed","updated":"2021-03-31 03:55:56.000000000","message":"Good pickup Steve. They diverged when I moved priority overrides from _get_cleaning_steps to _get_steps as per your earlier recommendation. The override_ok test broke after that so I updated it but I missed it for the override_fail. \n\nGood idea with the third one, will upload a revised change shortly.","commit_id":"81af77b0e9c48736f6355c8f8d91a9f19b1c63b1"}],"releasenotes/notes/releasenote-b3b25c13ea1e2844.yaml":[{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"626d8e62fc0a9e75233125c11a8abd3cb88ac039","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in in which"},{"line_number":7,"context_line":"    the cleaning steps are to run."}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9f560f44_788e6f2e","line":6,"range":{"start_line":6,"start_character":57,"end_line":6,"end_character":59},"updated":"2020-09-09 08:55:49.000000000","message":"Nit: double \"in\"","commit_id":"e15dd9b197e489a2923dcf98fab916d677a8f765"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"cddb95c4b14126951e27c823685d6227aa7548a2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in which the cleaning"},{"line_number":7,"context_line":"    steps are to run."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f560f44_e3239d05","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":15},"updated":"2020-09-14 13:59:36.000000000","message":"In the context of reading the release note, nobody knows what \"this change\" is. We typically try to say \"Adds xyz\"","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"cddb95c4b14126951e27c823685d6227aa7548a2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in which the cleaning"},{"line_number":7,"context_line":"    steps are to run."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f560f44_6375cd00","line":4,"range":{"start_line":4,"start_character":58,"end_line":4,"end_character":69},"updated":"2020-09-14 13:59:36.000000000","message":"Indicating the option type is not needed for a release note. Instead maybe indicate it is for the ironic.conf file?","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"cddb95c4b14126951e27c823685d6227aa7548a2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in which the cleaning"},{"line_number":7,"context_line":"    steps are to run."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f560f44_4315299b","line":4,"range":{"start_line":4,"start_character":27,"end_line":4,"end_character":58},"updated":"2020-09-14 13:59:36.000000000","message":"``[conductor]clean_step_priority_override``","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"e07a8bf79b5ab487a25bb6b2e49a6320ead57bf1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in which the cleaning"},{"line_number":7,"context_line":"    steps are to run."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f560f44_812b9593","line":4,"range":{"start_line":4,"start_character":27,"end_line":4,"end_character":58},"in_reply_to":"9f560f44_4315299b","updated":"2020-09-28 00:06:00.000000000","message":"Done","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"e07a8bf79b5ab487a25bb6b2e49a6320ead57bf1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This change introduces \"clean_step_priority_overrides\" (MultiOpt)"},{"line_number":5,"context_line":"    configuration parameter for conductor which allows the operator to specify"},{"line_number":6,"context_line":"    one or more of key:value pairs defining custom order in which the cleaning"},{"line_number":7,"context_line":"    steps are to run."}],"source_content_type":"text/x-yaml","patch_set":14,"id":"9f560f44_410a1d27","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":15},"in_reply_to":"9f560f44_e3239d05","updated":"2020-09-28 00:06:00.000000000","message":"Done","commit_id":"5be5779337930422fcd0dd89e12cdcebbea1a810"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a851476156c63ecfae1ebdf126c447b37b6fb690","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``[conductor]clean_step_priority_overrides`` configuration parameter"},{"line_number":5,"context_line":"    to ironic.conf which allows the operator to specify one or more of"},{"line_number":6,"context_line":"    key:value pairs defining custom order in which the cleaning steps are to"},{"line_number":7,"context_line":"    run."}],"source_content_type":"text/x-yaml","patch_set":18,"id":"af0e5b3a_d3256fb5","line":5,"updated":"2021-03-22 11:04:32.000000000","message":"nit: s/to ironic.conf//","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"9cfbfea1a2e678e47e2228a64ec1fe7c0b0397f7","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``[conductor]clean_step_priority_overrides`` configuration parameter"},{"line_number":5,"context_line":"    to ironic.conf which allows the operator to specify one or more of"},{"line_number":6,"context_line":"    key:value pairs defining custom order in which the cleaning steps are to"},{"line_number":7,"context_line":"    run."}],"source_content_type":"text/x-yaml","patch_set":18,"id":"1629c60a_86f79d50","line":5,"in_reply_to":"af0e5b3a_d3256fb5","updated":"2021-03-22 11:54:31.000000000","message":"Done.","commit_id":"d5d560e34b6638391f4d8ed8d860d31428d108b8"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"50601be579e9a9cac515e43a06ef471a6d27e19b","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``[conductor]clean_step_priority_override`` configuration parameter"},{"line_number":5,"context_line":"    which allows the operator to specify one or more of key:value pairs"},{"line_number":6,"context_line":"    defining custom order in which the cleaning steps are to run."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"eb5160d6_f251a300","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":65},"updated":"2021-03-23 04:06:59.000000000","message":"Elaborate on the \u0027key\u0027 naming convention.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"},{"author":{"_account_id":32177,"name":"Jacob Anders","email":"jacob-anders-dev@proton.me","username":"janders"},"change_message_id":"c3608633b2b6ffa8d93736f3b7fa6c2e3760258e","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds ``[conductor]clean_step_priority_override`` configuration parameter"},{"line_number":5,"context_line":"    which allows the operator to specify one or more of key:value pairs"},{"line_number":6,"context_line":"    defining custom order in which the cleaning steps are to run."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"2c7a754c_7aee3168","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":65},"in_reply_to":"eb5160d6_f251a300","updated":"2021-03-24 05:03:38.000000000","message":"I re-phrased this sentence as this is better explained conf/conductor.py.","commit_id":"9b2b930317c29a76df6f2b02c1460a83a2d62082"}]}
