Skip to content

Commit 158a393

Browse files
committed
add router
1 parent ae8a023 commit 158a393

File tree

3 files changed

+188
-0
lines changed

3 files changed

+188
-0
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
cloud/cs
2+
cs/group2
3+
cs/group3
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
dependencies:
3+
- cs_common
Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
---
2+
- name: setup network
3+
ngine_io.cloudstack.network:
4+
name: "net_router"
5+
zone: "{{ cs_common_zone_adv }}"
6+
network_offering: DefaultSharedNetworkOffering
7+
network_domain: example.com
8+
vlan: 1234
9+
start_ip: 10.100.12.11
10+
end_ip: 10.100.12.250
11+
gateway: 10.100.12.1
12+
netmask: 255.255.255.0
13+
register: net
14+
- name: verify setup network
15+
assert:
16+
that:
17+
- net.name == "net_router"
18+
19+
- name: setup instance
20+
ngine_io.cloudstack.instance:
21+
name: "instance-vm"
22+
template: "{{ cs_common_template }}"
23+
service_offering: "{{ cs_common_service_offering }}"
24+
zone: "{{ cs_common_zone_adv }}"
25+
network: "net_router"
26+
state: started
27+
register: instance
28+
- name: verify setup instance
29+
assert:
30+
that:
31+
- instance is successful
32+
- instance.name == "instance-vm"
33+
- instance.state == "Running"
34+
35+
- name: setup instance starts a router
36+
ngine_io.cloudstack.instance:
37+
name: "instance-vm"
38+
template: "{{ cs_common_template }}"
39+
service_offering: "{{ cs_common_service_offering }}"
40+
zone: "{{ cs_common_zone_adv }}"
41+
network: "net_router"
42+
state: started
43+
register: instance
44+
- name: verify setup instance
45+
assert:
46+
that:
47+
- instance is successful
48+
- instance.name == "instance-vm"
49+
- instance.state == "Running"
50+
51+
- name: setup find the routers name
52+
shell: cs listRouters listall=true networkid="{{ net.id }}" zone="{{ cs_common_zone_adv }}"
53+
args:
54+
chdir: "{{ playbook_dir }}"
55+
register: router
56+
57+
- debug:
58+
var: router.stdout
59+
60+
- set_fact:
61+
router_json: "{{ router.stdout | from_json }}"
62+
63+
- set_fact:
64+
router_name: "{{ router_json.router[0].name }}"
65+
66+
- name: test router started
67+
ngine_io.cloudstack.router:
68+
name: "{{ router_name }}"
69+
zone: "{{ cs_common_zone_adv }}"
70+
state: started
71+
register: router
72+
- name: verify test router started
73+
assert:
74+
that:
75+
- router is successful
76+
77+
- name: test stop router in check mode
78+
ngine_io.cloudstack.router:
79+
name: "{{ router_name }}"
80+
zone: "{{ cs_common_zone_adv }}"
81+
state: stopped
82+
check_mode: true
83+
register: router
84+
- name: verify test stop router in check mode
85+
assert:
86+
that:
87+
- router is changed
88+
- router.state == "Running"
89+
- router.service_offering == "System Offering For Software Router"
90+
91+
- name: test stop router
92+
ngine_io.cloudstack.router:
93+
name: "{{ router_name }}"
94+
zone: "{{ cs_common_zone_adv }}"
95+
state: stopped
96+
register: router
97+
- name: verify test stop router
98+
assert:
99+
that:
100+
- router is changed
101+
- router.state == "Stopped"
102+
- router.service_offering == "System Offering For Software Router"
103+
104+
- name: test stop router idempotence
105+
ngine_io.cloudstack.router:
106+
name: "{{ router_name }}"
107+
zone: "{{ cs_common_zone_adv }}"
108+
state: stopped
109+
register: router
110+
- name: verify test stop router idempotence
111+
assert:
112+
that:
113+
- router is not changed
114+
- router.state == "Stopped"
115+
- router.service_offering == "System Offering For Software Router"
116+
117+
- name: test start router in check mode
118+
ngine_io.cloudstack.router:
119+
name: "{{ router_name }}"
120+
zone: "{{ cs_common_zone_adv }}"
121+
state: started
122+
register: router
123+
check_mode: true
124+
- name: verify test start router in check mode
125+
assert:
126+
that:
127+
- router is changed
128+
- router.state == "Stopped"
129+
- router.service_offering == "System Offering For Software Router"
130+
131+
- name: test start router
132+
ngine_io.cloudstack.router:
133+
name: "{{ router_name }}"
134+
zone: "{{ cs_common_zone_adv }}"
135+
state: started
136+
register: router
137+
- name: verify test start router
138+
assert:
139+
that:
140+
- router is changed
141+
- router.state == "Running"
142+
- router.service_offering == "System Offering For Software Router"
143+
144+
- name: test start router idempotence
145+
ngine_io.cloudstack.router:
146+
name: "{{ router_name }}"
147+
zone: "{{ cs_common_zone_adv }}"
148+
state: started
149+
register: router
150+
- name: verify test start router idempotence
151+
assert:
152+
that:
153+
- router is not changed
154+
- router.state == "Running"
155+
- router.service_offering == "System Offering For Software Router"
156+
157+
- name: test restart router in check mode
158+
ngine_io.cloudstack.router:
159+
name: "{{ router_name }}"
160+
zone: "{{ cs_common_zone_adv }}"
161+
state: restarted
162+
register: router
163+
check_mode: true
164+
- name: verify test restart router in check mode
165+
assert:
166+
that:
167+
- router is changed
168+
- router.state == "Running"
169+
- router.service_offering == "System Offering For Software Router"
170+
171+
- name: test restart router
172+
ngine_io.cloudstack.router:
173+
name: "{{ router_name }}"
174+
zone: "{{ cs_common_zone_adv }}"
175+
state: restarted
176+
register: router
177+
- name: verify test restart router
178+
assert:
179+
that:
180+
- router is changed
181+
- router.state == "Running"
182+
- router.service_offering == "System Offering For Software Router"

0 commit comments

Comments
 (0)