2014-07-07 17:17:39 +00:00
|
|
|
#
|
|
|
|
# This task is the thing that creates a vm for later use
|
|
|
|
#
|
2013-05-03 16:58:47 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: get vm list
|
2013-11-25 18:37:51 +00:00
|
|
|
delegate_to: "{{ vmhost }}"
|
2013-05-03 16:56:38 +00:00
|
|
|
virt: command=list_vms
|
|
|
|
register: result
|
2013-11-25 18:41:58 +00:00
|
|
|
always_run: yes
|
2013-05-03 16:56:38 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: ensure the lv for the guest is made
|
2013-11-25 18:33:35 +00:00
|
|
|
lvol: lv={{ inventory_hostname }} vg={{ volgroup }} size={{ lvm_size }} state=present
|
2013-11-25 18:37:51 +00:00
|
|
|
delegate_to: "{{ vmhost }}"
|
2013-06-11 16:29:13 +00:00
|
|
|
when: inventory_hostname not in result.list_vms
|
2013-05-03 16:56:38 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: run the virt-install
|
2013-11-25 18:33:35 +00:00
|
|
|
shell: "{{ virt_install_command }}"
|
2013-11-25 18:37:51 +00:00
|
|
|
delegate_to: "{{ vmhost }}"
|
2013-06-11 16:29:13 +00:00
|
|
|
when: inventory_hostname not in result.list_vms
|
2013-05-03 16:56:38 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: wait for the install to finish
|
2014-07-03 16:37:35 +00:00
|
|
|
virt: command=status name={{ inventory_hostname }}
|
|
|
|
register: vmstatus
|
|
|
|
until: vmstatus.status == 'shutdown'
|
2013-11-25 18:37:51 +00:00
|
|
|
delegate_to: "{{ vmhost }}"
|
2014-07-03 16:37:35 +00:00
|
|
|
retries: 150
|
|
|
|
delay: 10
|
2013-06-11 16:46:07 +00:00
|
|
|
when: inventory_hostname not in result.list_vms
|
2013-05-03 16:56:38 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: start the vm up
|
2013-11-25 18:33:35 +00:00
|
|
|
action: virt state=running name={{ inventory_hostname }}
|
2013-11-25 18:37:51 +00:00
|
|
|
delegate_to: "{{ vmhost }}"
|
2013-06-11 16:46:07 +00:00
|
|
|
when: inventory_hostname not in result.list_vms
|
2013-05-03 16:56:38 +00:00
|
|
|
|
2014-07-07 17:17:39 +00:00
|
|
|
- name: set it to autostart
|
2014-06-27 20:08:54 +00:00
|
|
|
action: virt command=autostart name={{ inventory_hostname }}
|
|
|
|
delegate_to: "{{ vmhost }}"
|
|
|
|
when: inventory_hostname not in result.list_vms
|
|
|
|
|
2013-05-03 16:56:38 +00:00
|
|
|
- name: wait for ssh on the vm to start back
|
2013-11-25 18:33:35 +00:00
|
|
|
local_action: wait_for delay=10 host={{ inventory_hostname }} port=22 state=started timeout=1200
|
2013-06-11 16:46:07 +00:00
|
|
|
when: inventory_hostname not in result.list_vms
|