aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2026-03-19 10:24:53 +0000
committerGerrit Code Review <review@openstack.org>2026-03-19 10:24:53 +0000
commit545699daaa752de92d388796ce9bb7fdac1adb17 (patch)
tree892481016beffa801277aa41f09d541d007bd046
parent97e6c9ef856cbab19318678664296bbf2d3e6732 (diff)
parentcd7e86503020f653369258c7b450ae9f1b7c0074 (diff)
downloadkolla-ansible-545699daaa752de92d388796ce9bb7fdac1adb17.tar.gz
kolla-ansible-545699daaa752de92d388796ce9bb7fdac1adb17.zip
Merge "nova-cell: parallelize libvirt version check"
-rw-r--r--ansible/roles/nova-cell/tasks/version-check.yml27
1 files changed, 8 insertions, 19 deletions
diff --git a/ansible/roles/nova-cell/tasks/version-check.yml b/ansible/roles/nova-cell/tasks/version-check.yml
index 2626aada7..8b9461451 100644
--- a/ansible/roles/nova-cell/tasks/version-check.yml
+++ b/ansible/roles/nova-cell/tasks/version-check.yml
@@ -46,32 +46,25 @@
name:
- "{{ service.container_name }}"
register: container_facts_per_host
- run_once: true
- delegate_to: "{{ item }}"
- loop: "{{ groups[service.group] }}"
- loop_control:
- label: "{{ item }}"
+ when: inventory_hostname in groups[service.group]
- name: Get current Libvirt version
+ any_errors_fatal: true
become: true
command: "{{ kolla_container_engine }} exec {{ service.container_name }} libvirtd --version"
register: libvirt_version_current_results
changed_when: false
- run_once: true
- delegate_to: "{{ item.item }}"
- loop: "{{ container_facts_per_host.results }}"
- loop_control:
- label: "{{ item.item }}"
when:
- - item.containers[service.container_name] is defined
- - item.containers[service.container_name].State.Running
+ - container_facts_per_host is not skipped
+ - container_facts_per_host.containers[service.container_name] is defined
- (hostvars[groups[service.group] | first].service_image_info.images | default([]) | length) > 0
- - item.containers[service.container_name].Image
+ - container_facts_per_host.containers[service.container_name].Image
!= hostvars[groups[service.group] | first].service_image_info.images[0].Id
- name: Check that the new Libvirt version is >= current
+ any_errors_fatal: true
vars:
- current_version: "{{ item.stdout | regex_search('[0-9]+\\.[0-9]+\\.[0-9]+') }}"
+ current_version: "{{ libvirt_version_current_results.stdout | regex_search('[0-9]+\\.[0-9]+\\.[0-9]+') }}"
new_version: "{{ hostvars[groups[service.group] | first].libvirt_new_version }}"
assert:
that: "{{ new_version is version(current_version, '>=', strict=true) }}"
@@ -81,8 +74,4 @@
that you want to do this, please skip the tag `nova-libvirt-version-check`.
success_msg: >
Libvirt version check successful: target {{ new_version }} >= current {{ current_version }}.
- run_once: true
- loop: "{{ libvirt_version_current_results.results }}"
- loop_control:
- label: "{{ item.item }}"
- when: item.stdout is defined
+ when: libvirt_version_current_results is not skipped