blob: 7766a382a980e974e763cf822998583e91d2a3c5 (
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
65
66
67
68
69
|
- hosts: all
gather_facts: false
tasks:
- name: check initial state
assert:
that:
- "'one' in ansible_play_hosts"
- "'two' in ansible_play_hosts"
- "'three' in ansible_play_hosts"
- "'four' not in ansible_play_hosts"
run_once: true
- name: add a host
add_host:
name: yolo
parity: null
- name: group em
group_by:
key: '{{parity}}'
- hosts: all
gather_facts: false
tasks:
- name: test and ensure we restore symlink
run_once: true
block:
- name: check added host state
assert:
that:
- "'yolo' in ansible_play_hosts"
- "'even' in groups"
- "'odd' in groups"
- "'two' in groups['even']"
- "'three' in groups['odd']"
- name: change symlink
file: src=./inventory_new.yml dest=./inventory_refresh.yml state=link force=yes follow=false
delegate_to: localhost
- name: refresh the inventory to new source
meta: refresh_inventory
always:
- name: revert symlink, invenotry was already reread or failed
file: src=./inventory_old.yml dest=./inventory_refresh.yml state=link force=yes follow=false
delegate_to: localhost
- hosts: all
gather_facts: false
tasks:
- name: check refreshed state
assert:
that:
- "'one' not in ansible_play_hosts"
- "'two' in ansible_play_hosts"
- "'three' in ansible_play_hosts"
- "'four' in ansible_play_hosts"
run_once: true
- name: check added host state
assert:
that:
- "'yolo' in ansible_play_hosts"
- "'even' in groups"
- "'odd' in groups"
- "'two' in groups['even']"
- "'three' in groups['odd']"
run_once: true
|