)]}'
{"deployment/cinder/cinder-api-container-puppet.yaml":[{"author":{"_account_id":26343,"name":"Jose Luis Franco","email":"jfrancoa@redhat.com","username":"jfrancoa"},"change_message_id":"a30bc82cb84875de3bba7471c6ce2ac32e4e9ec4","unresolved":true,"context_lines":[{"line_number":483,"context_line":"        - when: step|int \u003d\u003d 1"},{"line_number":484,"context_line":"          block: *cinder_online_db_migration"},{"line_number":485,"context_line":"      external_deploy_tasks:"},{"line_number":486,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":487,"context_line":"          become: true"},{"line_number":488,"context_line":"          os_keystone_service:"},{"line_number":489,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"53efc707_a95591a1","side":"PARENT","line":486,"updated":"2021-05-17 10:20:41.000000000","message":"Why do we remove it from external_deploy_tasks? isn\u0027t it still needed here?","commit_id":"c1ee7ccddb025dc7bb1c3214b5018ca714bae0e7"},{"author":{"_account_id":11166,"name":"Lukas Bezdicka","email":"social@v3.sk","username":"xbezdick"},"change_message_id":"232afc5f770acae43e807104a8ae06e96ab052ab","unresolved":true,"context_lines":[{"line_number":483,"context_line":"        - when: step|int \u003d\u003d 1"},{"line_number":484,"context_line":"          block: *cinder_online_db_migration"},{"line_number":485,"context_line":"      external_deploy_tasks:"},{"line_number":486,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":487,"context_line":"          become: true"},{"line_number":488,"context_line":"          os_keystone_service:"},{"line_number":489,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"84d015d0_0103f71c","side":"PARENT","line":486,"in_reply_to":"53efc707_a95591a1","updated":"2021-05-17 12:54:15.000000000","message":"No it isn\u0027t if it runs in upgrade there is no need to run it anywhere else as it\u0027s just for compatibility with queens","commit_id":"c1ee7ccddb025dc7bb1c3214b5018ca714bae0e7"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"d984ada0c27c1aac244c46a42b8145b66e04badf","unresolved":true,"context_lines":[{"line_number":483,"context_line":"        - when: step|int \u003d\u003d 1"},{"line_number":484,"context_line":"          block: *cinder_online_db_migration"},{"line_number":485,"context_line":"      external_deploy_tasks:"},{"line_number":486,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":487,"context_line":"          become: true"},{"line_number":488,"context_line":"          os_keystone_service:"},{"line_number":489,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"63d80a63_6b94f56c","side":"PARENT","line":486,"in_reply_to":"84d015d0_0103f71c","updated":"2021-05-17 15:44:09.000000000","message":"There\u0027s a reason why the code used external_deploy_tasks and not an upgrade task. See https://review.opendev.org/c/openstack/tripleo-heat-templates/+/757414/1//COMMIT_MSG#L26","commit_id":"c1ee7ccddb025dc7bb1c3214b5018ca714bae0e7"}],"deployment/keystone/keystone-container-puppet.yaml":[{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"d984ada0c27c1aac244c46a42b8145b66e04badf","unresolved":true,"context_lines":[{"line_number":855,"context_line":"            - keystone_short_bootstrap_node_name|lower \u003d\u003d ansible_facts[\u0027hostname\u0027]|lower"},{"line_number":856,"context_line":"          delegate_to: undercloud"},{"line_number":857,"context_line":"          block: *keystone_generate_clouds"},{"line_number":858,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":859,"context_line":"          delegate_to: undercloud"},{"line_number":860,"context_line":"          os_keystone_service:"},{"line_number":861,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9aab3d40_52fade76","line":858,"updated":"2021-05-17 15:44:09.000000000","message":"Doing this in post_upgrade_tasks is fine for systems undergoing FFU, just bear in mind [1] explains why the original code used external_deploy_tasks. The issue is the bug [2] doesn\u0027t get triggered until *after* FFU, so there was a need for the patch to \"fix\" systems that had already undergone FFU and were now broken.\n\n[1] https://review.opendev.org/c/openstack/tripleo-heat-templates/+/757414/1//COMMIT_MSG#L26\n[2] https://bugs.launchpad.net/tripleo/+bug/1897761","commit_id":"382085d77a080b9be1830abb176d648a105c4094"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"6fac669e911d084ce1a69b1416a7f61152fb1716","unresolved":true,"context_lines":[{"line_number":855,"context_line":"            - keystone_short_bootstrap_node_name|lower \u003d\u003d ansible_facts[\u0027hostname\u0027]|lower"},{"line_number":856,"context_line":"          delegate_to: undercloud"},{"line_number":857,"context_line":"          block: *keystone_generate_clouds"},{"line_number":858,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":859,"context_line":"          delegate_to: undercloud"},{"line_number":860,"context_line":"          os_keystone_service:"},{"line_number":861,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"8c0bc1c9_393042e5","line":858,"in_reply_to":"35dfbc0a_e89d8a91","updated":"2021-05-19 13:50:51.000000000","message":"os_keystone_service _is_ idempotent, so using it in both places should work. It\u0027s unfortunate the task needs to be done in two places, but I understand the logical place is here (post_upgrade_tasks) and the other (external_deploy_tasks) is required just to fix broken upgrades.","commit_id":"382085d77a080b9be1830abb176d648a105c4094"},{"author":{"_account_id":26343,"name":"Jose Luis Franco","email":"jfrancoa@redhat.com","username":"jfrancoa"},"change_message_id":"958c0fde4ffb9bfbbcf0df40cdaeed29a8d9beaf","unresolved":true,"context_lines":[{"line_number":855,"context_line":"            - keystone_short_bootstrap_node_name|lower \u003d\u003d ansible_facts[\u0027hostname\u0027]|lower"},{"line_number":856,"context_line":"          delegate_to: undercloud"},{"line_number":857,"context_line":"          block: *keystone_generate_clouds"},{"line_number":858,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":859,"context_line":"          delegate_to: undercloud"},{"line_number":860,"context_line":"          os_keystone_service:"},{"line_number":861,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9fbfcd86_4aa9c749","line":858,"in_reply_to":"8c0bc1c9_393042e5","updated":"2021-05-24 08:28:07.000000000","message":"Thanks a lot for clarifying Alan","commit_id":"382085d77a080b9be1830abb176d648a105c4094"},{"author":{"_account_id":26343,"name":"Jose Luis Franco","email":"jfrancoa@redhat.com","username":"jfrancoa"},"change_message_id":"532f1ea59fc9ead060c55a8b895cc47dadbf7073","unresolved":true,"context_lines":[{"line_number":855,"context_line":"            - keystone_short_bootstrap_node_name|lower \u003d\u003d ansible_facts[\u0027hostname\u0027]|lower"},{"line_number":856,"context_line":"          delegate_to: undercloud"},{"line_number":857,"context_line":"          block: *keystone_generate_clouds"},{"line_number":858,"context_line":"        - name: Clean up legacy Cinder keystone catalog entries"},{"line_number":859,"context_line":"          delegate_to: undercloud"},{"line_number":860,"context_line":"          os_keystone_service:"},{"line_number":861,"context_line":"            cloud: {get_param: RootStackName}"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"35dfbc0a_e89d8a91","line":858,"in_reply_to":"9aab3d40_52fade76","updated":"2021-05-19 05:53:46.000000000","message":"I wonder, if the os_keystone_service is idempotent, then it should be fine to leave it as an external_deploy_task and an post_upgrade_task, shouldn\u0027t it? This way we cover both scenarios, when the system is undergoing FFU and systems that already went through it.","commit_id":"382085d77a080b9be1830abb176d648a105c4094"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"d984ada0c27c1aac244c46a42b8145b66e04badf","unresolved":true,"context_lines":[{"line_number":864,"context_line":"            state: absent"},{"line_number":865,"context_line":"          when:"},{"line_number":866,"context_line":"            - step|int \u003d\u003d 1"},{"line_number":867,"context_line":"            - keystone_short_bootstrap_node_name|lower \u003d\u003d ansible_facts[\u0027hostname\u0027]|lower"},{"line_number":868,"context_line":"        - name: Run the keystone endpoint creation"},{"line_number":869,"context_line":"          when:"},{"line_number":870,"context_line":"            - step|int \u003d\u003d 1"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"62626e47_534169ac","line":867,"updated":"2021-05-17 15:44:09.000000000","message":"Could this be replaced with \"run_once: true\" above L865?","commit_id":"382085d77a080b9be1830abb176d648a105c4094"}]}
