ansible: update destroy-vms playbook

- update destroy-vms playbook to correctly reflect VM state
This commit is contained in:
2025-06-26 23:30:09 +03:00
parent 6bfb909431
commit dc1cd79217
3 changed files with 28 additions and 16 deletions

View File

@ -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"

View File

@ -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"

View File

@ -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