blob: 6c4aa33cfd6b837a8f86aa3a608c0188b06ec385 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# Copyright (c) 2017-2018 Intel Corporation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
- name: Include input file
include_vars:
file: "{{ rs_file }}"
name: infra_deploy_vars
- name: List virt-nets
virt_net: command=list_nets
register: virt_nets
- name: List VMs
virt: command=list_vms
register: virt_vms
- set_fact:
deploy_vms: "{{ deploy_vms | default([]) + [item.hostname] }}"
with_items: "{{ infra_deploy_vars.nodes }}"
- name: Define old disk images to delete
shell: virsh domblklist {{ item }} | awk '/\/.*/ { print $2 }'
when: clean_up | bool or item in deploy_vms
with_items: "{{ virt_vms.list_vms }}"
register: virt_img
- set_fact:
images: "{{ images | default([]) + item.stdout_lines }}"
when: item.stdout_lines is defined and item.stdout_lines | length > 0
with_items: "{{ virt_img.results }}"
- name: Destroy old VMs
include_tasks: delete_vm.yml
loop_control:
loop_var: vmhost_item
with_items: "{{ virt_vms.list_vms }}"
- set_fact:
deploy_nets: "{{ deploy_nets | default([]) + [item.name] }}"
with_items: "{{ infra_deploy_vars.networks }}"
- name: Delete old networks
include_tasks: delete_network.yml
loop_control:
loop_var: network_item
with_items: "{{ virt_nets.list_nets }}"
- name: Delete old disk images
file:
path: "{{ item }}"
state: absent
when: images is defined and images | length > 0
with_items: "{{ images }}"
|