ansible: update destroy-vms playbook
- update destroy-vms playbook to correctly reflect VM state
This commit is contained in:
@ -7,8 +7,8 @@ vm_list:
|
|||||||
disk_size: 30G
|
disk_size: 30G
|
||||||
ip: "192.168.1.151/24"
|
ip: "192.168.1.151/24"
|
||||||
gateway: "192.168.1.1"
|
gateway: "192.168.1.1"
|
||||||
nameserver1: "1.1.1.1"
|
nameserver1: "192.168.1.145"
|
||||||
nameserver2: "8.8.8.8"
|
nameserver2: "1.1.1.1"
|
||||||
- id: 107
|
- id: 107
|
||||||
name: "vm7"
|
name: "vm7"
|
||||||
memory: 4096
|
memory: 4096
|
||||||
@ -16,7 +16,7 @@ vm_list:
|
|||||||
disk_size: 30G
|
disk_size: 30G
|
||||||
ip: "192.168.1.152/24"
|
ip: "192.168.1.152/24"
|
||||||
gateway: "192.168.1.1"
|
gateway: "192.168.1.1"
|
||||||
nameserver1: "1.1.1.1"
|
nameserver1: "192.168.1.145"
|
||||||
nameserver2: "8.8.8.8"
|
nameserver2: "8.8.8.8"
|
||||||
|
|
||||||
# cloud-init variables
|
# cloud-init variables
|
||||||
@ -26,4 +26,4 @@ net0: "virtio,bridge=vmbr0"
|
|||||||
disk_path: "/var/lib/vz/images/1000"
|
disk_path: "/var/lib/vz/images/1000"
|
||||||
ide2: "local:cloudinit,format=qcow2"
|
ide2: "local:cloudinit,format=qcow2"
|
||||||
boot_order: "order=scsi0"
|
boot_order: "order=scsi0"
|
||||||
scsi_hw: "virtio-scsi-pci"
|
scsi_hw: "virtio-scsi-pci"
|
||||||
|
|||||||
@ -7,8 +7,8 @@ vm_list:
|
|||||||
disk_size: 30G
|
disk_size: 30G
|
||||||
ip: "192.168.1.161/24"
|
ip: "192.168.1.161/24"
|
||||||
gateway: "192.168.1.1"
|
gateway: "192.168.1.1"
|
||||||
nameserver1: "1.1.1.1"
|
nameserver1: "192.168.1.145"
|
||||||
nameserver2: "8.8.8.8"
|
nameserver2: "1.1.1.1"
|
||||||
- id: 207
|
- id: 207
|
||||||
name: "vm9"
|
name: "vm9"
|
||||||
memory: 4096
|
memory: 4096
|
||||||
@ -16,9 +16,8 @@ vm_list:
|
|||||||
disk_size: 30G
|
disk_size: 30G
|
||||||
ip: "192.168.1.162/24"
|
ip: "192.168.1.162/24"
|
||||||
gateway: "192.168.1.1"
|
gateway: "192.168.1.1"
|
||||||
nameserver1: "1.1.1.1"
|
nameserver1: "192.168.1.145"
|
||||||
nameserver2: "8.8.8.8"
|
nameserver2: "1.1.1.1"
|
||||||
|
|
||||||
|
|
||||||
# cloud-init template variables
|
# cloud-init template variables
|
||||||
node: "homeserver2"
|
node: "homeserver2"
|
||||||
@ -27,4 +26,4 @@ net0: "virtio,bridge=vmbr0"
|
|||||||
disk_path: "/var/lib/vz/images/2000"
|
disk_path: "/var/lib/vz/images/2000"
|
||||||
ide2: "local:cloudinit,format=qcow2"
|
ide2: "local:cloudinit,format=qcow2"
|
||||||
boot_order: "order=scsi0"
|
boot_order: "order=scsi0"
|
||||||
scsi_hw: "virtio-scsi-pci"
|
scsi_hw: "virtio-scsi-pci"
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
---
|
|
||||||
- name: Get VM current state
|
- name: Get VM current state
|
||||||
delegate_to: localhost
|
delegate_to: localhost
|
||||||
vars:
|
vars:
|
||||||
@ -14,14 +13,18 @@
|
|||||||
register: vm_state
|
register: vm_state
|
||||||
ignore_errors: yes
|
ignore_errors: yes
|
||||||
loop: "{{ vm_list }}"
|
loop: "{{ vm_list }}"
|
||||||
|
loop_control:
|
||||||
|
index_var: vm_index
|
||||||
tags:
|
tags:
|
||||||
- vm_delete
|
- vm_delete
|
||||||
|
|
||||||
- name: Debug VM state
|
- name: Debug VM state
|
||||||
debug:
|
debug:
|
||||||
msg: "VM state: {{ vm_state.results[0].status }}"
|
msg: "VM {{ item.name }} state: {{ vm_state.results[vm_index].status }}"
|
||||||
when: vm_state is succeeded
|
when: vm_state.results[vm_index] is defined and vm_state.results[vm_index] is succeeded
|
||||||
loop: "{{ vm_list }}"
|
loop: "{{ vm_list }}"
|
||||||
|
loop_control:
|
||||||
|
index_var: vm_index
|
||||||
|
|
||||||
- name: Stop VM
|
- name: Stop VM
|
||||||
delegate_to: localhost
|
delegate_to: localhost
|
||||||
@ -36,8 +39,13 @@
|
|||||||
node: "{{ node }}"
|
node: "{{ node }}"
|
||||||
state: stopped
|
state: stopped
|
||||||
force: true
|
force: true
|
||||||
when: vm_state is succeeded and vm_state.results[0].status != 'absent'
|
when: >
|
||||||
|
vm_state.results[vm_index] is defined and
|
||||||
|
vm_state.results[vm_index] is succeeded and
|
||||||
|
vm_state.results[vm_index].status != 'absent'
|
||||||
loop: "{{ vm_list }}"
|
loop: "{{ vm_list }}"
|
||||||
|
loop_control:
|
||||||
|
index_var: vm_index
|
||||||
tags:
|
tags:
|
||||||
- vm_delete
|
- vm_delete
|
||||||
|
|
||||||
@ -53,7 +61,12 @@
|
|||||||
name: "{{ item.name }}"
|
name: "{{ item.name }}"
|
||||||
node: "{{ node }}"
|
node: "{{ node }}"
|
||||||
state: absent
|
state: absent
|
||||||
when: vm_state is succeeded and vm_state.results[0].status != 'absent'
|
when: >
|
||||||
|
vm_state.results[vm_index] is defined and
|
||||||
|
vm_state.results[vm_index] is succeeded and
|
||||||
|
vm_state.results[vm_index].status != 'absent'
|
||||||
loop: "{{ vm_list }}"
|
loop: "{{ vm_list }}"
|
||||||
|
loop_control:
|
||||||
|
index_var: vm_index
|
||||||
tags:
|
tags:
|
||||||
- vm_delete
|
- vm_delete
|
||||||
|
|||||||
Reference in New Issue
Block a user