Hypervisor statistics check has been dropped entirely, as it relies on API deprecated by I515e484ade6c6455f82a3067940a418a0d7d965a[0] Since reliable and standard compliant installation of ansible modules is only possible using a collection, or system package manager, the ansible-lint settings were adjusted to mock newly introduced modules. Note about necessary dependencies was added to validation description. Explanation of the mocks was added to other, previously mocked, modules, in order to facilitate future development. [0]1f67ce2496Resolves: rhbz#2149177 Depends-On: https://review.opendev.org/c/openstack/tripleo-ansible/+/862150 Signed-off-by: Jiri Podivin <jpodivin@redhat.com> Change-Id: I70765bfbe3f319fef8112ac633b1b3c38fb1488c (cherry picked from commit560ac96739)
54 lines
1.7 KiB
YAML
54 lines
1.7 KiB
YAML
---
|
|
- name: Get list of baremetal nodes
|
|
openstack.cloud.baremetal_node_info:
|
|
cloud: undercloud
|
|
register: baremetal_nodes
|
|
|
|
- name: Get baremetal node details
|
|
openstack.cloud.baremetal_node_info:
|
|
cloud: undercloud
|
|
node: "{{ item }}"
|
|
with_items: "{{ baremetal_nodes | community.general.json_query('baremetal_nodes[*].name') }}"
|
|
register: node_details
|
|
|
|
- name: Get clean node list
|
|
set_fact:
|
|
baremetal_nodes_details: "{{ [item] + baremetal_nodes_details }}"
|
|
with_items: "{{ node_details | community.general.json_query('results[*].baremetal_nodes') }}"
|
|
|
|
- name: Get active node count
|
|
set_fact:
|
|
active_nodes: "{{ baremetal_nodes_details | community.general.json_query('[?provision_state==`available`]') | count() }}"
|
|
|
|
- name: Get associated node count
|
|
set_fact:
|
|
associated_nodes: "{{ baremetal_nodes_details | community.general.json_query('[*].associated') | count() }}"
|
|
|
|
- name: Set total available node count
|
|
set_fact:
|
|
available_count: "{{ active_nodes | int + associated_nodes | int }}"
|
|
|
|
- name: Get overcloud role list
|
|
tripleo_overcloud_role_list:
|
|
register: role_list
|
|
|
|
- name: Get details for each role
|
|
tripleo_overcloud_role_show:
|
|
role_name: "{{ item }}"
|
|
default_values:
|
|
CountDefault: 0
|
|
FlavorDefault: 'baremetal'
|
|
with_items: "{{ role_list.role_list }}"
|
|
register: role_details
|
|
|
|
- name: Get requested node count
|
|
set_fact:
|
|
requested_node_count: "{{ role_details | community.general.json_query('results[*].role_detail.CountDefault') | sum() }}"
|
|
|
|
- name: Fail when requested is more than available
|
|
fail:
|
|
msg: >
|
|
Not enough baremetal nodes - available: {{ available_count }},
|
|
requested: {{ requested_node_count }}
|
|
failed_when: requested_node_count|int > available_count|int
|