X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=ansible%2Fvm-install.yml;h=c244aa95f4689cd073e1a8d3a647b2b3c1628525;hb=HEAD;hp=e0685f9d36b5c77582d51ee507caf201afed38ef;hpb=320cd6f207345a4101fe4f353d86d3a66a6eabd3;p=noc.git diff --git a/ansible/vm-install.yml b/ansible/vm-install.yml index e0685f9..c244aa9 100644 --- a/ansible/vm-install.yml +++ b/ansible/vm-install.yml @@ -1,26 +1,28 @@ --- - name: preperations and sanity checks - hosts: "{{ vmname }}" + hosts: "{{ hostname }}" gather_facts: no tasks: - name: setup variables set_fact: - vm_network_cooked: "{{ vm_network }}" - vm_install_cooked: "{{ vm_install }}" + network_cooked: "{{ network }}" + install_cooked: "{{ install }}" - name: create temporary host group for vm host add_host: - name: "{{ vm_install.host }}" + name: "{{ vm_host }}" inventory_dir: "{{inventory_dir}}" group: _vmhost_ # TODO: add some sanity checks +- import_playbook: remove_known_hosts.yml + - name: basic installation hosts: _vmhost_ roles: - role: vm/install - name: wait for new vm to start up - hosts: "{{ vmname }}" + hosts: "{{ hostname }}" gather_facts: no tasks: ## TODO: find a better way to fetch host key of new VMs @@ -35,10 +37,20 @@ set_fact: ansible_ssh_extra_args: "" -- import_playbook: "host_playbooks/{{ vmname }}.yml" +- name: Apply VM configuration roles + hosts: "{{ hostname }}" + pre_tasks: + - name: make sure to update cached facts + setup: + roles: + - role: vm/grub + - role: vm/network + - role: vm/guest + +- import_playbook: "host_playbooks/{{ hostname }}.yml" - name: reboot and wait for VM come back - hosts: "{{ vmname }}" + hosts: "{{ hostname }}" gather_facts: no roles: - role: reboot-and-wait