2016-07-24 01:57:37 +02:00
|
|
|
#!/usr/bin/ansible-playbook
|
|
|
|
---
|
|
|
|
# localhost (aka 127.0.0.1) is the hypervisor (hard-coded)
|
|
|
|
|
|
|
|
- hosts: test-vms
|
|
|
|
#- hosts: local-test-vm.ffmwu.local
|
|
|
|
gather_facts: False
|
|
|
|
# remote_user: root
|
|
|
|
|
|
|
|
vars:
|
|
|
|
- vm_path: "{{ lookup('env','HOME') }}/tmp/ffmwu-loctevm"
|
|
|
|
|
|
|
|
tasks:
|
|
|
|
- name: ensure VM dir and vm image dir
|
2016-07-26 17:32:47 +02:00
|
|
|
file: path={{ vm_path }} state=directory mode=0755
|
2016-07-24 01:57:37 +02:00
|
|
|
delegate_to: 127.0.0.1 # local action
|
|
|
|
|
2016-07-26 17:32:47 +02:00
|
|
|
- name: ensure image file # FIXME: change to rm + recreate
|
2016-08-12 00:39:25 +02:00
|
|
|
command: fallocate -l 5G {{ vm_path }}/loctevm.img # 15G? size?
|
2016-07-24 01:57:37 +02:00
|
|
|
args:
|
|
|
|
creates: "{{ vm_path }}/loctevm.img"
|
|
|
|
delegate_to: 127.0.0.1 # local action
|
|
|
|
|
2016-07-26 17:32:47 +02:00
|
|
|
- name: correct access rights of image file
|
|
|
|
file: mode=0666 path={{ vm_path }}/loctevm.img state=file
|
|
|
|
delegate_to: 127.0.0.1 # local action
|
|
|
|
|
2016-07-24 01:57:37 +02:00
|
|
|
- name: get and prepare debian image file
|
|
|
|
include: loctevm-reset-iso.inc.yml
|
|
|
|
|
2016-08-06 02:12:55 +02:00
|
|
|
- name: define Vnd activate Vnet (if not already)
|
|
|
|
include: loctevm-reset-net.inc.yml
|
|
|
|
|
2016-07-26 17:32:47 +02:00
|
|
|
- name: define VM (if not already)
|
|
|
|
include: loctevm-reset-vm.inc.yml
|
|
|
|
|
|
|
|
- name: create VM - should start OS installation
|
2016-07-24 01:57:37 +02:00
|
|
|
virt:
|
|
|
|
state: running
|
|
|
|
name: "{{ inventory_hostname }}"
|
|
|
|
delegate_to: 127.0.0.1 # local action
|
2016-07-26 17:32:47 +02:00
|
|
|
|
2016-08-06 02:12:55 +02:00
|
|
|
- name: wait for port 80 to appear (after reboot after OS installation)
|
2016-08-12 00:39:25 +02:00
|
|
|
wait_for: host={{ansible_host}} port=80 state=started timeout=900
|
2016-08-06 02:12:55 +02:00
|
|
|
delegate_to: 127.0.0.1 # local action
|
|
|
|
|
2016-07-26 17:32:47 +02:00
|
|
|
- hosts: test-vms
|
|
|
|
remote_user: hein
|
2016-08-06 02:12:55 +02:00
|
|
|
gather_facts: False
|
2016-07-26 17:32:47 +02:00
|
|
|
# become: True
|
|
|
|
|
2016-08-06 02:12:55 +02:00
|
|
|
tasks:
|
2016-07-26 17:32:47 +02:00
|
|
|
- name: prepare VM (if not already)
|
|
|
|
include: loctevm-reset-prereq.inc.yml
|