diff --git a/roles/libvirt_manager/defaults/main.yml b/roles/libvirt_manager/defaults/main.yml index f1e9ba2e7..e71fbf9f6 100644 --- a/roles/libvirt_manager/defaults/main.yml +++ b/roles/libvirt_manager/defaults/main.yml @@ -84,6 +84,7 @@ cifmw_libvirt_manager_firewalld_zone_libvirt_forward: true cifmw_libvirt_manager_firewalld_default_zone: public cifmw_libvirt_manager_firewalld_default_zone_masquerade: true cifmw_libvirt_manager_attach_dummy_interface_on_bridges: true +cifmw_libvirt_manager_predictable_nic_names: false cifmw_libvirt_manager_extra_network_configuration: {} cifmw_libvirt_manager_vm_users: [] diff --git a/roles/libvirt_manager/tasks/create_vms.yml b/roles/libvirt_manager/tasks/create_vms.yml index a9cca3319..0bc5e8b8c 100644 --- a/roles/libvirt_manager/tasks/create_vms.yml +++ b/roles/libvirt_manager/tasks/create_vms.yml @@ -61,6 +61,14 @@ xml: "{{ lookup('template', cifmw_libvirt_manager_vm_template) }}" uri: "qemu:///system" + - name: "Disable net.ifnames=0 for {{ vm }}" + when: + - vm_data.disk_file_name != 'blank' + - cifmw_libvirt_manager_predictable_nic_names | default(false) | bool + - vm is match('^.*(compute).*$') + ansible.builtin.command: + cmd: "virt-customize -c qemu:///system --domain cifmw-{{ vm }} --run-command 'grubby --remove-args=net.ifnames=0 --update-kernel=ALL'" + - name: "Attach listed networks to the VMs {{ vm }}" vars: vm_item: "{{ vm }}"