)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"268e360fc4f46aa8b53455608b5a2fbd3a4fb05b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"1dc22aff_fba4ea55","updated":"2023-02-22 14:16:47.000000000","message":"Upgrade checks failed:\n\n        \"| Check: Placement API                             |\",\n        \"| Result: Failure                                  |\",\n        \"| Details: Discovery for placement API URI failed. |\",","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"864ae34ebb9c1b603a592f8eeb7f08ed3907176d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"b1131041_58e3b7af","updated":"2023-03-24 10:05:35.000000000","message":"recheck to regenerate logs","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"15116745260073f716242d19d96f0489c6d836ae","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"3df9be4f_0008edb0","updated":"2023-04-19 09:44:12.000000000","message":"thx","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"}],"ansible/roles/nova/tasks/upgrade.yml":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"f3f7b9f83545161005881974f177e4ddbb8e9aa6","unresolved":true,"context_lines":[{"line_number":40,"context_line":"    first_nova_api_host: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":41,"context_line":"  when: hostvars[first_nova_api_host][\u0027nova_upgrade_check_stdout\u0027][\u0027rc\u0027] not in [0, 1]"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"- name: Fail always"},{"line_number":44,"context_line":"  fail:"},{"line_number":45,"context_line":"    msg: \"Failing to not do upgrade.\""},{"line_number":46,"context_line":"  when: True"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"- name: Stopping top level nova services"},{"line_number":49,"context_line":"  become: true"},{"line_number":50,"context_line":"  kolla_docker:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"e49fc74b_81b3b280","line":47,"range":{"start_line":43,"start_character":0,"end_line":47,"end_character":0},"updated":"2023-01-20 14:35:29.000000000","message":"Debug leftover?","commit_id":"9342b5f5cc6cfd855aaf55e74c9994c2c52be35f"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"eda505fbac4fa84caf5086dc41c35daa3e684766","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    first_nova_api_host: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":41,"context_line":"  when: hostvars[first_nova_api_host][\u0027nova_upgrade_check_stdout\u0027][\u0027rc\u0027] not in [0, 1]"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"- name: Fail always"},{"line_number":44,"context_line":"  fail:"},{"line_number":45,"context_line":"    msg: \"Failing to not do upgrade.\""},{"line_number":46,"context_line":"  when: True"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"- name: Stopping top level nova services"},{"line_number":49,"context_line":"  become: true"},{"line_number":50,"context_line":"  kolla_docker:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a6396c4c_cb2da8ab","line":47,"range":{"start_line":43,"start_character":0,"end_line":47,"end_character":0},"in_reply_to":"e49fc74b_81b3b280","updated":"2023-01-20 14:41:56.000000000","message":"Yes my bad, will remove it","commit_id":"9342b5f5cc6cfd855aaf55e74c9994c2c52be35f"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"328e1136d6c457aa6e5a0d09c9d66e8a061762c5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Run Nova API upgrade checks container"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    nova_api: \"{{ nova_services[\u0027nova-api\u0027] }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3bd8ea76_0de9b51b","line":2,"updated":"2023-02-09 13:23:57.000000000","message":"See \u0027Running Keystone fernet bootstrap container\u0027 in ansible/roles/keystone/tasks/bootstrap_service.yml for an example of how to run a specific blocking command in a container.","commit_id":"2716d2ed4f5244d22a8a52e1cc0ef8ced59efd96"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"fcb555deb1ad348b869a206c9a52f67c5d7d7f52","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Run Nova API upgrade checks container"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    nova_api: \"{{ nova_services[\u0027nova-api\u0027] }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3b5cbecc_b762df59","line":2,"in_reply_to":"3bd8ea76_0de9b51b","updated":"2023-02-13 14:51:54.000000000","message":"Done","commit_id":"2716d2ed4f5244d22a8a52e1cc0ef8ced59efd96"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"6f2c13fb4c973088c2a9c3ec77be29e19751e92c","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"},{"line_number":21,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":22,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"49572bf1_f677c0ce","line":22,"range":{"start_line":22,"start_character":1,"end_line":22,"end_character":44},"updated":"2023-02-13 16:21:12.000000000","message":"hmm, is it needed to delegate to groups[\u0027nova-api\u0027][0] ? There is run_once: True which will ensure that task will be runned only once. This can fail when api on host 0 is down (for example because of maintanance...).\n\nCould you verify and take an action based on test ?","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"81f84fffe11ca9d1685656bf275efd244f63b0c9","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"},{"line_number":21,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":22,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7e77c789_db308f04","line":22,"range":{"start_line":22,"start_character":1,"end_line":22,"end_character":44},"in_reply_to":"1d2270dc_6b5ffb2f","updated":"2023-02-14 09:31:29.000000000","message":"but is it needed to limit to host on index 0 in groups[\u0027nova-api\u0027] ? what if that host will be down ? Why to [0] ?\n\nIt is better to just delegate to groups[\u0027nova-api\u0027] and use run_once: True , isn\u0027t it ?","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"06a0b044a0a98906e9f039fc4146161c94f2579b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"},{"line_number":21,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":22,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"1d2270dc_6b5ffb2f","line":22,"range":{"start_line":22,"start_character":1,"end_line":22,"end_character":44},"in_reply_to":"49572bf1_f677c0ce","updated":"2023-02-14 09:22:00.000000000","message":"In this case we do need both, because we want the task to specifically run on nova-api as it is also using `nova_api_default_volumes`.","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"63147177a03231f2e8c778fe3841036c0a0feadf","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"},{"line_number":21,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":22,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"724e1f4d_e75d634c","line":22,"range":{"start_line":22,"start_character":1,"end_line":22,"end_character":44},"in_reply_to":"7e77c789_db308f04","updated":"2023-02-14 09:41:01.000000000","message":"You\u0027re right, this is a shortcoming in the pattern. But it\u0027s a widely used pattern, and if we fix it we should fix it everywhere (separately).\n\nI think the solution is to use groups[\u0027nova-api\u0027] | intersect(ansible_play_hosts) | first), but there may be issues with that. Is the delegate host always a target in the same play?","commit_id":"57596a47bafb67a11e05e090a52bd5bd382492dc"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":13,"context_line":"    name: \"nova_api_upgrade_checks\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    command: \u003e"},{"line_number":17,"context_line":"      bash -c \"sudo -E kolla_set_configs \u0026\u0026 sudo kolla_copy_cacerts \u0026\u0026 nova-status upgrade check\""},{"line_number":18,"context_line":"    restart_policy: no"},{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"8ede5ab6_81ff0776","line":17,"range":{"start_line":16,"start_character":0,"end_line":17,"end_character":97},"updated":"2023-03-28 08:50:19.000000000","message":"Removed the command here and replaced it with the use of KOLLA_UPGRADE_CHECK added in https://review.opendev.org/c/openstack/kolla/+/878744","commit_id":"b5696a75e9fca07a92ed3e286304438f1c40560c"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"73e1749374435c1c407fb4e68803a1d7a4dac947","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    command: \u003e"},{"line_number":17,"context_line":"      bash -c \"sudo -E kolla_set_configs \u0026\u0026 sudo kolla_copy_cacerts \u0026\u0026 nova-status upgrade check\""},{"line_number":18,"context_line":"    restart_policy: no"},{"line_number":19,"context_line":"    volumes: \"{{ nova_api_default_volumes }}\""},{"line_number":20,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"4e02c1be_ec1f4de9","line":17,"range":{"start_line":17,"start_character":44,"end_line":17,"end_character":67},"updated":"2023-03-28 08:32:23.000000000","message":"This is the fix for the checks failing on accessing Placement. The upgrade jobs use `tls_enabled: true`, but without calling this script the certificate cannot be verified, leading to the error:\n\nFailed to discover available identity versions when contacting https://192.0.2.10:5000. Attempting to parse version from URL.","commit_id":"b5696a75e9fca07a92ed3e286304438f1c40560c"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"4cf47d54341f99bbfcb2d53609f1b31f61154c5c","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Check nova upgrade status"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  command: \"{{ kolla_container_engine }} exec -t nova_api nova-status upgrade check\""},{"line_number":5,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":6,"context_line":"  when: inventory_hostname \u003d\u003d groups[\u0027nova-api\u0027][0]"},{"line_number":7,"context_line":"  failed_when: false"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"5089f24f_159a4c17","side":"PARENT","line":4,"updated":"2023-04-19 08:49:01.000000000","message":"Where is the command to run specified in your patch?","commit_id":"da48d99eefab686293ede974f1a1997c3b894ec7"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"8b996dc0d8b6f1a218f09c457bee25cf99473f01","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Check nova upgrade status"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  command: \"{{ kolla_container_engine }} exec -t nova_api nova-status upgrade check\""},{"line_number":5,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":6,"context_line":"  when: inventory_hostname \u003d\u003d groups[\u0027nova-api\u0027][0]"},{"line_number":7,"context_line":"  failed_when: false"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"c1c623cc_84daa583","side":"PARENT","line":4,"in_reply_to":"5089f24f_159a4c17","updated":"2023-04-19 08:57:43.000000000","message":"It comes from the environment flag `KOLLA_UPGRADE_CHECK`, the kolla patch this depends on is in the commit message.","commit_id":"da48d99eefab686293ede974f1a1997c3b894ec7"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"8bb5c3bb202a1604b9dcb04929dd04698330d21c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Check nova upgrade status"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  command: \"{{ kolla_container_engine }} exec -t nova_api nova-status upgrade check\""},{"line_number":5,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":6,"context_line":"  when: inventory_hostname \u003d\u003d groups[\u0027nova-api\u0027][0]"},{"line_number":7,"context_line":"  failed_when: false"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"4a439d4f_e351f9c3","side":"PARENT","line":4,"in_reply_to":"c1c623cc_84daa583","updated":"2023-04-19 09:27:58.000000000","message":"Ah, thx, I missed that dep.","commit_id":"da48d99eefab686293ede974f1a1997c3b894ec7"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Run Nova upgrade checks"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    nova_api: \"{{ nova_services[\u0027nova-api\u0027] }}\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9258f5c7_bd435061","line":2,"range":{"start_line":2,"start_character":8,"end_line":2,"end_character":31},"updated":"2023-03-28 08:50:19.000000000","message":"I changed the task name to be more similar to others.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    common_options: \"{{ docker_common_options }}\""},{"line_number":9,"context_line":"    detach: False"},{"line_number":10,"context_line":"    environment:"},{"line_number":11,"context_line":"      KOLLA_UPGRADE_CHECK:"},{"line_number":12,"context_line":"      KOLLA_CONFIG_STRATEGY: \"{{ config_strategy }}\""},{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"19ca40fe_fd2b913a","line":11,"range":{"start_line":11,"start_character":6,"end_line":11,"end_character":25},"updated":"2023-03-28 08:50:19.000000000","message":"Using this instead of a custom command will ensure we keep up to date with future changes in kolla.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"f62ea762_818f5997","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":30},"updated":"2023-03-28 08:50:19.000000000","message":"Slight change of name to make it simpler/shorter.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"b27c8fcf14b67dfa01b4f495b12101207a530fcf","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Run Nova upgrade checks"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    nova_api: \"{{ nova_services[\u0027nova-api\u0027] }}\""},{"line_number":6,"context_line":"  kolla_docker:"},{"line_number":7,"context_line":"    action: \"start_container\""},{"line_number":8,"context_line":"    common_options: \"{{ docker_common_options }}\""},{"line_number":9,"context_line":"    detach: False"},{"line_number":10,"context_line":"    environment:"},{"line_number":11,"context_line":"      KOLLA_UPGRADE_CHECK:"},{"line_number":12,"context_line":"      KOLLA_CONFIG_STRATEGY: \"{{ config_strategy }}\""},{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"dc99160d_89f2331f","line":16,"range":{"start_line":4,"start_character":0,"end_line":16,"end_character":31},"updated":"2023-04-19 10:08:52.000000000","message":"did you check if check mode is working ? if no, please check, and if it is failing .... add check_mode: false as this is registering variable which is used in task after.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"8bb5c3bb202a1604b9dcb04929dd04698330d21c","unresolved":true,"context_lines":[{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"a83ecdfd_7ab4dff2","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":30},"in_reply_to":"3018cfc6_b94ae061","updated":"2023-04-19 09:27:58.000000000","message":"From that code it looks like \"remove_on_exit\" needs to be set in addition?","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"4833f238426c6b92d88129ec14ab8592ce92b2c2","unresolved":true,"context_lines":[{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"92fbc16b_714f5c2c","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":30},"in_reply_to":"a83ecdfd_7ab4dff2","updated":"2023-04-19 09:35:27.000000000","message":"It defaults to `True` :)","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"4f1e6205201bee226ae3d6eac2526eff2618859c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Run Nova upgrade checks"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  vars:"},{"line_number":5,"context_line":"    nova_api: \"{{ nova_services[\u0027nova-api\u0027] }}\""},{"line_number":6,"context_line":"  kolla_docker:"},{"line_number":7,"context_line":"    action: \"start_container\""},{"line_number":8,"context_line":"    common_options: \"{{ docker_common_options }}\""},{"line_number":9,"context_line":"    detach: False"},{"line_number":10,"context_line":"    environment:"},{"line_number":11,"context_line":"      KOLLA_UPGRADE_CHECK:"},{"line_number":12,"context_line":"      KOLLA_CONFIG_STRATEGY: \"{{ config_strategy }}\""},{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"d6ebb235_b1d285c8","line":16,"range":{"start_line":4,"start_character":0,"end_line":16,"end_character":31},"in_reply_to":"dc99160d_89f2331f","updated":"2023-04-19 15:18:25.000000000","message":"I\u0027ve just tested this and indeed we do need to add `check_mode: false`. I\u0027ll propose a follow-up patch","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"fb63cd8d67268697ffb32831d571c174cddd40f1","unresolved":true,"context_lines":[{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3018cfc6_b94ae061","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":30},"in_reply_to":"e753d6f0_170ce5fd","updated":"2023-04-19 09:20:55.000000000","message":"The container exits after running `nova-status upgrade check` (see Depends-On patch). As we have specified `detach: False`, the container is removed on exit.\n\nRelevant code here: https://opendev.org/openstack/kolla-ansible/src/commit/f5991df02b81109cc2c3c69405c9f99279eb3f9a/ansible/module_utils/kolla_docker_worker.py#L413","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"4cf47d54341f99bbfcb2d53609f1b31f61154c5c","unresolved":true,"context_lines":[{"line_number":13,"context_line":"    image: \"{{ nova_api.image }}\""},{"line_number":14,"context_line":"    labels:"},{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"e753d6f0_170ce5fd","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":30},"in_reply_to":"f62ea762_818f5997","updated":"2023-04-19 08:49:01.000000000","message":"IIUC this will create a new container? How will this container get cleaned up after running?","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":15,"context_line":"      UPGRADE:"},{"line_number":16,"context_line":"    name: \"nova_upgrade_checks\""},{"line_number":17,"context_line":"    restart_policy: no"},{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"a50c80fe_9fbdea86","line":18,"range":{"start_line":18,"start_character":4,"end_line":18,"end_character":70},"updated":"2023-03-28 08:50:19.000000000","message":"I added nova_api_extra_volumes, this could potentially be used by operators to add a custom CA certificate to the containers.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"6a3271ed2cf21e22b964fee8819b2aecf481e6b5","unresolved":true,"context_lines":[{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"f832d224_0ca71241","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":44},"updated":"2023-04-19 08:31:43.000000000","message":"I really think that we should move from this habit to use groups[\u0027something\u0027][0] ..because host [0] can fail in previous tasks or host [0] can be in maintanence mode or something else.\n\nAs run_once: true was added, there should be enough to use when: \"\u0027nova-api\u0027 in group_names\" ... then there is certainty that task will be executed on host which is in group nova-api and it will be ran only once ..\n\nWhat do you think ?","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"15116745260073f716242d19d96f0489c6d836ae","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"69b61f02_b8acf2cc","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":44},"in_reply_to":"7f90f9ed_38504c81","updated":"2023-04-19 09:44:12.000000000","message":"Ack","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"fb63cd8d67268697ffb32831d571c174cddd40f1","unresolved":true,"context_lines":[{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"7f90f9ed_38504c81","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":44},"in_reply_to":"d83d1378_b1080036","updated":"2023-04-19 09:20:55.000000000","message":"I also agree this would be a worthwhile change, but imo it\u0027s best to leave it as is in this patch. It is a widely-used convention elsewhere in KA, so +1 for a separate patch to update this everywhere.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"4cf47d54341f99bbfcb2d53609f1b31f61154c5c","unresolved":true,"context_lines":[{"line_number":18,"context_line":"    volumes: \"{{ nova_api_default_volumes + nova_api_extra_volumes }}\""},{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"d83d1378_b1080036","line":21,"range":{"start_line":21,"start_character":2,"end_line":21,"end_character":44},"in_reply_to":"f832d224_0ca71241","updated":"2023-04-19 08:49:01.000000000","message":"I agree with that, but it is probably worth a dedicated patch.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":true,"context_lines":[{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"5b2ba3ad_8ad16c25","line":22,"range":{"start_line":22,"start_character":2,"end_line":22,"end_character":20},"updated":"2023-03-28 08:50:19.000000000","message":"I added back failed_when, so we proceed to the next task which checks the return status. This allows us to proceed even when return status is 1 (WARNING).\n\nNOTE: Nova only recently started to fail on the N-1 compute upgrade check: https://review.opendev.org/c/openstack/nova/+/845262\n\nOlder releases may need a backport of the above patch or we will need to fail on exit code 1.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"6a3271ed2cf21e22b964fee8819b2aecf481e6b5","unresolved":true,"context_lines":[{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"ff46ca48_67c5bd6c","line":22,"range":{"start_line":22,"start_character":2,"end_line":22,"end_character":20},"in_reply_to":"5b2ba3ad_8ad16c25","updated":"2023-04-19 08:31:43.000000000","message":"I don\u0027t know what return codes are returned from \"nova-status upgrade check\" , did you investigate ? \n\nMaybe we can amend failed_when to something more, not only \"false\" ?","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"15116745260073f716242d19d96f0489c6d836ae","unresolved":false,"context_lines":[{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"8aae49c2_0572f27a","line":22,"range":{"start_line":22,"start_character":2,"end_line":22,"end_character":20},"in_reply_to":"df60b337_a70c85fb","updated":"2023-04-19 09:44:12.000000000","message":"Ack","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"e9e99b162ae64a99cd67bb99f37b2031ab885f61","unresolved":true,"context_lines":[{"line_number":19,"context_line":"  run_once: True"},{"line_number":20,"context_line":"  register: nova_upgrade_check_stdout"},{"line_number":21,"context_line":"  delegate_to: \"{{ groups[\u0027nova-api\u0027][0] }}\""},{"line_number":22,"context_line":"  failed_when: false"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Upgrade status check result"},{"line_number":25,"context_line":"  fail:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"df60b337_a70c85fb","line":22,"range":{"start_line":22,"start_character":2,"end_line":22,"end_character":20},"in_reply_to":"ff46ca48_67c5bd6c","updated":"2023-04-19 08:35:37.000000000","message":"This is documented in the next task which checks the return value. See the docs URL.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"}],"releasenotes/notes/perform-nova-upgrade-checks-with-upgraded-image-dca9c515bcd89ec8.yaml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"328e1136d6c457aa6e5a0d09c9d66e8a061762c5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f482b2c1_12173253","line":2,"updated":"2023-02-09 13:23:57.000000000","message":"Someone will probably ask for a bug report since this is a bug fix.","commit_id":"2716d2ed4f5244d22a8a52e1cc0ef8ced59efd96"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"8376ee36c5f09ee21cdd9b1a162c9dcbaa388634","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f6332b25_5da84235","line":2,"in_reply_to":"f482b2c1_12173253","updated":"2023-02-13 15:02:40.000000000","message":"Done","commit_id":"2716d2ed4f5244d22a8a52e1cc0ef8ced59efd96"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"34e108fe50425679154bc7b9d2ac31d98d5af0a8","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"},{"line_number":6,"context_line":"    N-1 releases. This was performed using the current ``nova-api`` container,"},{"line_number":7,"context_line":"    so computes which will be too old after the upgrade were not caught. Now"},{"line_number":8,"context_line":"    the upgraded ``nova-api`` container image is used, so older computes are"},{"line_number":9,"context_line":"    identified correctly."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"e8fe3501_6a0d3c6f","line":9,"range":{"start_line":4,"start_character":0,"end_line":9,"end_character":25},"updated":"2023-02-13 15:05:11.000000000","message":"missing launchpad bug link - check https://docs.openstack.org/kolla-ansible/latest/contributor/release-notes.html#fixes","commit_id":"5d2a3833790bbb02b421f144c7557a82a02463d4"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"5c2d2f3f1fd5674e3d1e30602c3b598b8e8a4051","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"},{"line_number":6,"context_line":"    N-1 releases. This was performed using the current ``nova-api`` container,"},{"line_number":7,"context_line":"    so computes which will be too old after the upgrade were not caught. Now"},{"line_number":8,"context_line":"    the upgraded ``nova-api`` container image is used, so older computes are"},{"line_number":9,"context_line":"    identified correctly."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"abe83079_ecb38e6d","line":9,"range":{"start_line":4,"start_character":0,"end_line":9,"end_character":25},"in_reply_to":"e8fe3501_6a0d3c6f","updated":"2023-02-13 15:16:48.000000000","message":"Done","commit_id":"5d2a3833790bbb02b421f144c7557a82a02463d4"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"6a3271ed2cf21e22b964fee8819b2aecf481e6b5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"},{"line_number":6,"context_line":"    N-1 releases. This was performed using the current ``nova-api`` container,"},{"line_number":7,"context_line":"    so computes which will be too old after the upgrade were not caught. Now"},{"line_number":8,"context_line":"    the upgraded ``nova-api`` container image is used, so older computes are"},{"line_number":9,"context_line":"    identified correctly."},{"line_number":10,"context_line":"    `LP#1957080 \u003chttps://launchpad.net/bugs/1957080\u003e`__"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"6d8da8f0_69ac20cc","line":10,"range":{"start_line":4,"start_character":0,"end_line":10,"end_character":55},"updated":"2023-04-19 08:31:43.000000000","message":"Can u please explain upgrade procedure to just understand better ? \n\n1. upgrade check\n2. upgrade control plane\n3. upgrade compute plane\n\nSo, what is the current status ? \n\nLet say I have all components zed but one compute i forgot to upgrade before so it\u0027s yoga...\n\nCurrent : \n\n1. All zeds, one yoga \u003d N-1 - pass\n2. Upgrade - all antelope\n3. All computes zed - ok, one yoga - problem\n\nProposal:\n\n1. Checks from nova + 1 - antelope - all zeds \u003d n -1 , yoga - n -2 - fail\n2. not going to upgrade \n3. 2 fail , 3 is not going to be executed \n\nAm i right ?","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5db9a6136e25769c7dd23dc389a7055cc9289ae0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    so computes which will be too old after the upgrade were not caught. Now"},{"line_number":8,"context_line":"    the upgraded ``nova-api`` container image is used, so older computes are"},{"line_number":9,"context_line":"    identified correctly."},{"line_number":10,"context_line":"    `LP#1957080 \u003chttps://launchpad.net/bugs/1957080\u003e`__"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"20fb4a46_42b639f3","line":10,"range":{"start_line":10,"start_character":5,"end_line":10,"end_character":51},"updated":"2023-03-28 08:50:19.000000000","message":"Updated reference to original bug.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"15116745260073f716242d19d96f0489c6d836ae","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    When upgrading Nova to a new release, we use the tool ``nova-status upgrade"},{"line_number":5,"context_line":"    check`` to make sure that there are no ``nova-compute`` that are older than"},{"line_number":6,"context_line":"    N-1 releases. This was performed using the current ``nova-api`` container,"},{"line_number":7,"context_line":"    so computes which will be too old after the upgrade were not caught. Now"},{"line_number":8,"context_line":"    the upgraded ``nova-api`` container image is used, so older computes are"},{"line_number":9,"context_line":"    identified correctly."},{"line_number":10,"context_line":"    `LP#1957080 \u003chttps://launchpad.net/bugs/1957080\u003e`__"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"33d5c32c_ea21356c","line":10,"range":{"start_line":4,"start_character":0,"end_line":10,"end_character":55},"in_reply_to":"6d8da8f0_69ac20cc","updated":"2023-04-19 09:44:12.000000000","message":"Sounds like it te me.","commit_id":"e34fbb174c7042f61fc7742363ee7e81569aaba5"}]}
