From 226b5e508f11b127672a39085c91cb2c543d0cd9 Mon Sep 17 00:00:00 2001 From: Eduardo Olivares Date: Thu, 30 Jan 2025 12:44:25 +0100 Subject: [PATCH] [libvirt_manager] Allow to override VM groups in cifmw_libvirt_manager_layout --- roles/libvirt_manager/tasks/deploy_layout.yml | 20 ++++++++++++++++++- .../tasks/generate_networking_data.yml | 3 ++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/roles/libvirt_manager/tasks/deploy_layout.yml b/roles/libvirt_manager/tasks/deploy_layout.yml index fc590981e8..f2ada03af1 100644 --- a/roles/libvirt_manager/tasks/deploy_layout.yml +++ b/roles/libvirt_manager/tasks/deploy_layout.yml @@ -192,9 +192,27 @@ vars: vm_type: "{{ _vm.value }}" vm: "{{ _vm.key }}" + _run_id: >- + {{ + '-' + (cifmw_run_id | lower) + if ( + cifmw_architecture_scenario is defined and + cifmw_architecture_scenario | length > 0 and + cifmw_run_id | default('') | length > 0 + ) else '' + }} + _suffix_name: >- + {{ + _run_id + '-' + + vm | ansible.builtin.split('-') | last + }} + _vm_key: >- + {% set _suffix_name = _run_id + '-' + (vm | ansible.builtin.split('-') | last) -%} + {% set _use_len = (vm | len) - (_suffix_name | len) -%} + {{ vm[:_use_len] }} vm_data: >- {{ - _cifmw_libvirt_manager_layout.vms[vm_type] + _cifmw_libvirt_manager_layout.vms[vm_type] | default(_cifmw_libvirt_manager_layout.vms[_vm_key]) }} pub_key: "{{ pub_ssh_key.content | b64decode }}" priv_key: "{{ priv_ssh_key.content | b64decode }}" diff --git a/roles/libvirt_manager/tasks/generate_networking_data.yml b/roles/libvirt_manager/tasks/generate_networking_data.yml index 77fb0dc5ea..f261160f60 100644 --- a/roles/libvirt_manager/tasks/generate_networking_data.yml +++ b/roles/libvirt_manager/tasks/generate_networking_data.yml @@ -65,7 +65,8 @@ {% set _vms = [_name | replace('_', '-')] | product(_range) | map('join', '-') -%} - {% set _map = dict(_vms | zip([_type] * _amount)) -%} + {% set _group = _type if _cifmw_libvirt_manager_layout.vms[_type].ansible_group is not defined else _cifmw_libvirt_manager_layout.vms[_type].ansible_group -%} + {% set _map = dict(_vms | zip([_group] * _amount)) -%} {% set _ = _vm_list.update(_map) -%} {% endfor -%} {{ _vm_list }}