Change back to cloud init
This commit is contained in:
@@ -9,6 +9,14 @@
|
|||||||
- kvm_host_setup
|
- kvm_host_setup
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
|
- name: Provision each VM
|
||||||
|
include_role:
|
||||||
|
name: os_config
|
||||||
|
vars:
|
||||||
|
vm_name: "{{ item.name }}"
|
||||||
|
os_type: "{{ item.os_type }}"
|
||||||
|
loop: "{{ vms }}"
|
||||||
|
|
||||||
- name: Launch each VM
|
- name: Launch each VM
|
||||||
include_role:
|
include_role:
|
||||||
name: vm_provision
|
name: vm_provision
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
---
|
---
|
||||||
|
---
|
||||||
- name: Generate Cloud-init config
|
- name: Generate Cloud-init config
|
||||||
template:
|
template:
|
||||||
src: "{{ 'user-data-coreos.yaml.j2' if os_type in ['coreos', 'flatcar'] else 'user-data.yaml.j2' }}"
|
src: user-data.yaml.j2
|
||||||
dest: "/tmp/{{ vm_name }}_user-data"
|
dest: "/tmp/{{ vm_name }}_user-data"
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
#cloud-config
|
#cloud-config
|
||||||
users:
|
users:
|
||||||
- name: {{ vm_user }}
|
- name: {{ vm_user }}
|
||||||
passwd: {{ vm_password | password_hash('sha512') }}
|
sudo: ALL=(ALL) NOPASSWD:ALL
|
||||||
ssh_authorized_keys:
|
ssh_authorized_keys:
|
||||||
- {{ lookup('file', vm_ssh_public_key | replace('~', lookup('env', 'HOME'))) }}
|
- {{ lookup('file', vm_ssh_public_key | replace('~', lookup('env', 'HOME'))) }}
|
||||||
sudo: ALL=(ALL) NOPASSWD:ALL
|
|
||||||
lock_passwd: false
|
lock_passwd: false
|
||||||
|
|||||||
@@ -41,17 +41,6 @@
|
|||||||
args:
|
args:
|
||||||
creates: "{{ vm_images_dir }}/{{ vm_name }}.qcow2"
|
creates: "{{ vm_images_dir }}/{{ vm_name }}.qcow2"
|
||||||
|
|
||||||
- name: Customize VM image (Inject User/SSH/Sudo)
|
|
||||||
shell: |
|
|
||||||
virt-customize -a {{ vm_images_dir }}/{{ vm_name }}.qcow2 \
|
|
||||||
--run-command "useradd -m -G wheel {{ vm_user }}" \
|
|
||||||
--password {{ vm_user }}:password:{{ vm_password }} \
|
|
||||||
--ssh-inject {{ vm_user }}:file:{{ vm_ssh_public_key | replace('~', lookup('env', 'HOME')) }} && \
|
|
||||||
touch {{ vm_images_dir }}/{{ vm_name }}.customized
|
|
||||||
become: yes
|
|
||||||
args:
|
|
||||||
creates: "{{ vm_images_dir }}/{{ vm_name }}.customized"
|
|
||||||
|
|
||||||
- name: Provision VM using virt-install
|
- name: Provision VM using virt-install
|
||||||
shell: |
|
shell: |
|
||||||
virt-install \
|
virt-install \
|
||||||
@@ -64,7 +53,8 @@
|
|||||||
--network network=default \
|
--network network=default \
|
||||||
--graphics none \
|
--graphics none \
|
||||||
--noautoconsole \
|
--noautoconsole \
|
||||||
--boot uefi
|
--boot uefi \
|
||||||
|
--cloud-init user-data=/tmp/{{ vm_name }}_user-data
|
||||||
args:
|
args:
|
||||||
creates: "/etc/libvirt/qemu/{{ vm_name }}.xml"
|
creates: "/etc/libvirt/qemu/{{ vm_name }}.xml"
|
||||||
become: yes
|
become: yes
|
||||||
|
|||||||
Reference in New Issue
Block a user