blob: cba7372ce53e3e6082445d224ece0c8ca6547c58 (
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
---
- set_fact: testint1="{{ nxos_int1 }}"
- set_fact: testint2="{{ nxos_int2 }}"
- name: setup - remove vlan used in test
nxos_config:
lines:
- no vlan 100
provider: "{{ connection }}"
- name: setup - remove vlan from interfaces used in test(part1)
nxos_config:
lines:
- no switchport access vlan 100
parents: switchport
before: "interface {{ testint1 }}"
provider: "{{ connection }}"
- name: setup - remove vlan from interfaces used in test(part2)
nxos_config:
lines:
- no switchport access vlan 100
parents: switchport
before: "interface {{ testint2 }}"
provider: "{{ connection }}"
- name: create vlan
nxos_vlan:
vlan_id: 100
provider: "{{ connection }}"
- name: Add interfaces to vlan and check intent (config + intent)
nxos_vlan: &interfaces
vlan_id: 100
interfaces:
- "{{ testint1 }}"
- "{{ testint2 }}"
associated_interfaces:
- "{{ testint1 }}"
- "{{ testint2 }}"
provider: "{{ connection }}"
register: result
- assert:
that:
- 'result.changed == true'
- '"interface {{ testint1 }}" in result.commands'
- '"switchport" in result.commands'
- '"switchport mode access" in result.commands'
- '"switchport access vlan 100" in result.commands'
- '"interface {{ testint2 }}" in result.commands'
- '"switchport" in result.commands'
- '"switchport mode access" in result.commands'
- '"switchport access vlan 100" in result.commands'
- name: Add interfaces to vlan(idempotence)
nxos_vlan: *interfaces
register: result
- assert:
that:
- 'result.changed == false'
- name: Check interfaces intent
nxos_vlan:
vlan_id: 100
associated_interfaces:
- "{{ testint1 }}"
- "{{ testint2 }}"
provider: "{{ connection }}"
register: result
- assert:
that:
- "result.failed == false"
- name: Check interfaces intent fail
nxos_vlan:
vlan_id: 100
associated_interfaces:
- test
provider: "{{ connection }}"
register: result
ignore_errors: yes
- assert:
that:
- "result.failed == True"
- name: Remove interface from vlan
nxos_vlan: &single_int
vlan_id: 100
interfaces:
- "{{ testint2 }}"
provider: "{{ connection }}"
register: result
- assert:
that:
- 'result.changed == true'
- '"interface {{ testint1 }}" in result.commands'
- '"switchport" in result.commands'
- '"switchport mode access" in result.commands'
- '"no switchport access vlan 100" in result.commands'
- name: Remove interface from vlan(idempotence)
nxos_vlan: *single_int
register: result
- assert:
that:
- 'result.changed == false'
- name: teardown(part1)
nxos_config:
lines:
- no vlan 100
provider: "{{ connection }}"
- name: teardown - remove vlan from interfaces used in test(part1)
nxos_config:
lines:
- no switchport access vlan 100
parents: switchport
before: "interface {{ testint1 }}"
provider: "{{ connection }}"
- name: teardown - remove vlan from interfaces used in test(part2)
nxos_config:
lines:
- no switchport access vlan 100
parents: switchport
before: "interface {{ testint2 }}"
provider: "{{ connection }}"
|