From 87c997cb5a1e2cb69df06da9c155f38c7b7c38a5 Mon Sep 17 00:00:00 2001 From: "benedikt.wismans@sdw.systems" Date: Sat, 26 Nov 2022 16:40:52 +0100 Subject: [PATCH] =?UTF-8?q?Sicherstellen,=20dass=20vm=20l=C3=A4uft=20und?= =?UTF-8?q?=20Netzwerk=20oben=20ist=20bevor=20die=20ip-Adresse=20der=20vm?= =?UTF-8?q?=20gelesen=20wird?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{libvirt_restart => libvirtd_restart} | 0 roles/kvm_install/tasks/hosts_vm2ip.yml | 18 +++++++++++++++--- roles/kvm_install/tasks/packages_install.yml | 2 +- roles/kvm_install/tasks/script_upload.yml | 4 ++-- 4 files changed, 18 insertions(+), 6 deletions(-) rename roles/kvm_install/files/{libvirt_restart => libvirtd_restart} (100%) diff --git a/roles/kvm_install/files/libvirt_restart b/roles/kvm_install/files/libvirtd_restart similarity index 100% rename from roles/kvm_install/files/libvirt_restart rename to roles/kvm_install/files/libvirtd_restart diff --git a/roles/kvm_install/tasks/hosts_vm2ip.yml b/roles/kvm_install/tasks/hosts_vm2ip.yml index 6c41ef7..c137905 100644 --- a/roles/kvm_install/tasks/hosts_vm2ip.yml +++ b/roles/kvm_install/tasks/hosts_vm2ip.yml @@ -1,18 +1,30 @@ --- +- name: Ensure VM is running, otherwise arp based retrieval of ipv4 address will fail + community.libvirt.virt: + name: "{{ vm_name }}" + state: running + +# Starten der vm reicht nicht, das Netzwerk muss auch oben sein um per arp auf die ipv4-Adresse zu kommen - name: Retrieve ipv4-address for resolution in /etc/hosts on wirt machine shell: /home/core/Scripte/vhost_getIPv4 "{{ vm_name }}" register: ipv4 + until: ipv4["stdout"] | length > 0 + retries: 15 + delay: 2 + changed_when: "False" -- name: Write vmname and ipv4-address for resolution to /etc/hosts on wirt machine +- name: Debug ipv4-address for resolution to /etc/hosts on wirt machine debug: msg={{ ipv4["stdout"] }} + changed_when: "False" - -- name: Write vmname and ipv4-address for resolution to /etc/hosts on wirt machine iXXXXXXXXXXXXXXXXXXXXX +# hosts-Eintrag nur erzeugen falls die ip ermittelt werden konnte +- name: Write vmname and ipv4-address for resolution to /etc/hosts on wirt machine ansible.builtin.lineinfile: path: /etc/hosts regexp: '^{{ ipv4["stdout"] }} =' line: "{{ ipv4['stdout'] + ' ' + vm_name }}" + when: ipv4["stdout"] | length > 0 ... diff --git a/roles/kvm_install/tasks/packages_install.yml b/roles/kvm_install/tasks/packages_install.yml index 8c71f0e..ad7c9b0 100644 --- a/roles/kvm_install/tasks/packages_install.yml +++ b/roles/kvm_install/tasks/packages_install.yml @@ -24,7 +24,7 @@ - name: Debug KVM ok debug: - msg: "{{ kvmok }}" + msg: "{{ kvmok['stdout'] }}" - name: Add user core to libvirt group user: diff --git a/roles/kvm_install/tasks/script_upload.yml b/roles/kvm_install/tasks/script_upload.yml index a2cfc6c..75a9391 100644 --- a/roles/kvm_install/tasks/script_upload.yml +++ b/roles/kvm_install/tasks/script_upload.yml @@ -1,8 +1,8 @@ --- -- name: Upload libvirt_restart to core's Scripte directory +- name: Upload libvirtd_restart to core's Scripte directory copy: - src: libvirt_restart + src: libvirtd_restart dest: /home/core/Scripte/ owner: core group: users