X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=ansible%2Froles%2Fvm%2Finstall%2Ftasks%2Fmain.yml;h=034cf1db97f5121f49555756999dcdce57217879;hb=2fb00147adff89fa701ef21a4f6d0da696d27488;hp=505ec1d0342eb718f25e309e8b90a199da1a634c;hpb=782d606069d9dbeebe85a2a797a077c0c177de4b;p=noc.git diff --git a/ansible/roles/vm/install/tasks/main.yml b/ansible/roles/vm/install/tasks/main.yml index 505ec1d..034cf1d 100644 --- a/ansible/roles/vm/install/tasks/main.yml +++ b/ansible/roles/vm/install/tasks/main.yml @@ -19,12 +19,19 @@ src: "preseed_{{ vmdistro }}-{{ vmdistcodename }}.cfg.j2" dest: "{{ tmpdir }}/preseed.cfg" + - name: generate authorized_keys file + authorized_key: + user: root + path: "{{ tmpdir }}/authorized_keys" + key: "{{ hostvars[vmname].ssh_keys | default(noc_ssh_keys) | join('\n') }}" + - name: Inject files into initramfs shell: cpio -H newc -o | gzip -9 >> {{ initramfs }} args: chdir: "{{ tmpdir }}" stdin: | preseed.cfg + authorized_keys always: - name: Delete temporary directory @@ -45,23 +52,23 @@ command: info register: vmhost_info -- name: destroy exisiting vm - virt: - name: "{{ vmname }}" - state: destroyed - when: vmname in vmhost_info - -- name: wait for vm to be destroyed - wait_for_virt: - name: "{{ vmname }}" - states: shutdown,crashed - timeout: 5 - when: vmname in vmhost_info +- block: + - name: destroy exisiting vm + virt: + name: "{{ vmname }}" + state: destroyed + + - name: wait for vm to be destroyed + wait_for_virt: + name: "{{ vmname }}" + states: shutdown,crashed + timeout: 5 + + - name: undefining exisiting vm + virt: + name: "{{ vmname }}" + command: undefine -- name: undefining exisiting vm - virt: - name: "{{ vmname }}" - command: undefine when: vmname in vmhost_info - name: enable installer in VM config @@ -92,7 +99,7 @@ wait_for_virt: name: "{{ vmname }}" states: shutdown,crashed - timeout: 900 + timeout: 1800 register: installer_result failed_when: installer_result.failed or installer_result.state == "crashed"