create_kvm.yml 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ---
  2. - hosts: lx-builder-host
  3. remote_user: root
  4. vars_files: [ vars.yml ]
  5. pre_tasks:
  6. - name: destroy current kvm
  7. vmadm:
  8. alias: "{{ kvm_alias }}"
  9. state: absent
  10. tasks:
  11. - name: create kvm
  12. vmadm:
  13. alias: "{{ kvm_alias }}"
  14. autoboot: false
  15. brand: kvm
  16. disks:
  17. - boot: true
  18. model: virtio
  19. size: 8192
  20. nics:
  21. - nic_tag: admin
  22. ip: dhcp
  23. primary: true
  24. model: virtio
  25. ram: 4096
  26. state: stopped
  27. vcpus: 2
  28. register: kvm
  29. - debug: var=kvm
  30. - name: copy install iso to zone
  31. copy:
  32. remote_src: true
  33. src: "{{ kvm_install_iso }}"
  34. dest: "/zones/{{ kvm.uuid }}/root/install.iso"
  35. - name: boot from iso
  36. shell: "vmadm boot {{ kvm.uuid }} order=cd,once=d cdrom=/install.iso,ide"
  37. - name: get vnc infos
  38. shell: "vmadm info {{ kvm.uuid }} | json vnc.port"
  39. register: kvm_vnc_port
  40. - debug: var=kvm_info.stdout
  41. - debug:
  42. msg: "vncviewer {{ ansible_hostname }}:{{ kvm_vnc_port.stdout }}"