Skip to content

Commit 66a26d1

Browse files
committed
Add the va-multi-skmo scenario
Make sure to separate out the common bits and just inherit to avoid duplication.
1 parent 275aff4 commit 66a26d1

File tree

3 files changed

+399
-403
lines changed

3 files changed

+399
-403
lines changed
Lines changed: 390 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,390 @@
1+
---
2+
# Base configuration for multi-namespace scenarios
3+
# This file is intentionally scenario-agnostic; concrete scenario files
4+
# (va-multi.yml and va-multi-skmo.yml) set cifmw_architecture_scenario.
5+
6+
cifmw_os_must_gather_additional_namespaces: kuttl,openshift-storage,sushy-emulator,openstack2
7+
cifmw_reproducer_validate_network_host: "192.168.122.1"
8+
cifmw_libvirt_manager_default_gw_nets:
9+
- ocpbm
10+
- osptrunk2
11+
cifmw_networking_mapper_interfaces_info_translations:
12+
osp_trunk:
13+
- controlplane
14+
- ctlplane
15+
osptrunk2:
16+
- ctlplane2
17+
18+
# Override the default 3-compute VA setting, since 3 computes in both namespaces is too expensive
19+
cifmw_libvirt_manager_compute_amount: 2
20+
21+
cifmw_libvirt_manager_configuration:
22+
networks:
23+
osp_trunk: |
24+
<network>
25+
<name>osp_trunk</name>
26+
<forward mode='nat'/>
27+
<bridge name='osp_trunk' stp='on' delay='0'/>
28+
<dns enable="no"/>
29+
<ip family='ipv4'
30+
address='{{ cifmw_networking_definition.networks.ctlplane.network |
31+
ansible.utils.nthhost(1) }}'
32+
prefix='{{ cifmw_networking_definition.networks.ctlplane.network |
33+
ansible.utils.ipaddr('prefix') }}'>
34+
</ip>
35+
</network>
36+
osptrunk2: |
37+
<network>
38+
<name>osptrunk2</name>
39+
<forward mode='nat'/>
40+
<bridge name='osptrunk2' stp='on' delay='0'/>
41+
<dns enable="no"/>
42+
<ip family='ipv4'
43+
address='{{ cifmw_networking_definition.networks.ctlplane2.network |
44+
ansible.utils.nthhost(1) }}'
45+
prefix='{{ cifmw_networking_definition.networks.ctlplane2.network |
46+
ansible.utils.ipaddr('prefix') }}'>
47+
</ip>
48+
</network>
49+
ocpbm: |
50+
<network>
51+
<name>ocpbm</name>
52+
<forward mode='nat'/>
53+
<bridge name='ocpbm' stp='on' delay='0'/>
54+
<dns enable="no"/>
55+
<ip family='ipv4' address='192.168.111.1' prefix='24'>
56+
</ip>
57+
</network>
58+
ocppr: |
59+
<network>
60+
<name>ocppr</name>
61+
<forward mode='bridge'/>
62+
<bridge name='ocppr'/>
63+
</network>
64+
vms:
65+
ocp:
66+
amount: 3
67+
admin_user: core
68+
image_local_dir: "{{ cifmw_basedir }}/images/"
69+
disk_file_name: "ocp_master"
70+
disksize: "100"
71+
extra_disks_num: 3
72+
extra_disks_size: "50G"
73+
cpus: 16
74+
memory: 32
75+
root_part_id: 4
76+
uefi: true
77+
nets:
78+
- ocppr
79+
- ocpbm
80+
- osp_trunk # ctlplane and isolated networks for openstack namespace cloud
81+
- osptrunk2 # ctlplane and isolated networks for openstack2 namespace cloud
82+
- osp_trunk # OVN datacentre for openstack namespace cloud
83+
- osptrunk2 # OVN datacentre for openstack2 namespace cloud
84+
compute:
85+
uefi: "{{ cifmw_use_uefi }}"
86+
root_part_id: "{{ cifmw_root_partition_id }}"
87+
amount: "{{ [cifmw_libvirt_manager_compute_amount|int, 2] | max }}"
88+
image_url: "{{ cifmw_discovered_image_url }}"
89+
sha256_image_name: "{{ cifmw_discovered_hash }}"
90+
image_local_dir: "{{ cifmw_basedir }}/images/"
91+
disk_file_name: "base-os.qcow2"
92+
disksize: "{{ [cifmw_libvirt_manager_compute_disksize|int, 50] | max }}"
93+
memory: "{{ [cifmw_libvirt_manager_compute_memory|int, 8] | max }}"
94+
cpus: "{{ [cifmw_libvirt_manager_compute_cpus|int, 4] | max }}"
95+
nets:
96+
- ocpbm
97+
- osp_trunk
98+
compute2:
99+
uefi: "{{ cifmw_use_uefi }}"
100+
root_part_id: "{{ cifmw_root_partition_id }}"
101+
amount: "{{ [cifmw_libvirt_manager_compute_amount|int, 2] | max }}"
102+
image_url: "{{ cifmw_discovered_image_url }}"
103+
sha256_image_name: "{{ cifmw_discovered_hash }}"
104+
image_local_dir: "{{ cifmw_basedir }}/images/"
105+
disk_file_name: "base-os.qcow2"
106+
disksize: "{{ [cifmw_libvirt_manager_compute_disksize|int, 50] | max }}"
107+
memory: "{{ [cifmw_libvirt_manager_compute_memory|int, 8] | max }}"
108+
cpus: "{{ [cifmw_libvirt_manager_compute_cpus|int, 4] | max }}"
109+
nets:
110+
- ocpbm
111+
- osptrunk2
112+
controller:
113+
uefi: "{{ cifmw_use_uefi }}"
114+
root_part_id: "{{ cifmw_root_partition_id }}"
115+
image_url: "{{ cifmw_discovered_image_url }}"
116+
sha256_image_name: "{{ cifmw_discovered_hash }}"
117+
image_local_dir: "{{ cifmw_basedir }}/images/"
118+
disk_file_name: "base-os.qcow2"
119+
disksize: 50
120+
memory: 8
121+
cpus: 4
122+
nets:
123+
- ocpbm
124+
- osp_trunk
125+
- osptrunk2
126+
127+
## devscript support for OCP deploy
128+
cifmw_devscripts_config_overrides:
129+
fips_mode: "{{ cifmw_fips_enabled | default(false) | bool }}"
130+
131+
# Set Logical Volume Manager Storage by default for local storage
132+
cifmw_use_lvms: true
133+
cifmw_lvms_disk_list:
134+
- /dev/vda
135+
- /dev/vdb
136+
- /dev/vdc
137+
138+
cifmw_networking_definition:
139+
networks:
140+
ctlplane:
141+
network: "192.168.122.0/24"
142+
gateway: "192.168.122.1"
143+
dns:
144+
- "192.168.122.1"
145+
mtu: 1500
146+
tools:
147+
multus:
148+
ranges:
149+
- start: 30
150+
end: 70
151+
netconfig:
152+
ranges:
153+
- start: 100
154+
end: 120
155+
- start: 150
156+
end: 170
157+
metallb:
158+
ranges:
159+
- start: 80
160+
end: 90
161+
ctlplane2:
162+
network: "192.168.133.0/24"
163+
gateway: "192.168.133.1"
164+
dns:
165+
- "192.168.133.1"
166+
mtu: 1500
167+
tools:
168+
multus:
169+
ranges:
170+
- start: 30
171+
end: 70
172+
netconfig:
173+
ranges:
174+
- start: 100
175+
end: 120
176+
- start: 150
177+
end: 170
178+
metallb:
179+
ranges:
180+
- start: 80
181+
end: 90
182+
internalapi:
183+
network: "172.17.0.0/24"
184+
vlan: 20
185+
mtu: 1496
186+
tools:
187+
metallb:
188+
ranges:
189+
- start: 80
190+
end: 90
191+
netconfig:
192+
ranges:
193+
- start: 100
194+
end: 250
195+
multus:
196+
ranges:
197+
- start: 30
198+
end: 70
199+
internalapi2:
200+
network: "172.17.10.0/24"
201+
vlan: 30
202+
mtu: 1496
203+
tools:
204+
metallb:
205+
ranges:
206+
- start: 80
207+
end: 90
208+
netconfig:
209+
ranges:
210+
- start: 100
211+
end: 250
212+
multus:
213+
ranges:
214+
- start: 30
215+
end: 70
216+
storage:
217+
network: "172.18.0.0/24"
218+
vlan: 21
219+
mtu: 1496
220+
tools:
221+
metallb:
222+
ranges:
223+
- start: 80
224+
end: 90
225+
netconfig:
226+
ranges:
227+
- start: 100
228+
end: 250
229+
multus:
230+
ranges:
231+
- start: 30
232+
end: 70
233+
storage2:
234+
network: "172.18.10.0/24"
235+
vlan: 31
236+
mtu: 1496
237+
tools:
238+
metallb:
239+
ranges:
240+
- start: 80
241+
end: 90
242+
netconfig:
243+
ranges:
244+
- start: 100
245+
end: 250
246+
multus:
247+
ranges:
248+
- start: 30
249+
end: 70
250+
tenant:
251+
network: "172.19.0.0/24"
252+
tools:
253+
metallb:
254+
ranges:
255+
- start: 80
256+
end: 90
257+
netconfig:
258+
ranges:
259+
- start: 100
260+
end: 250
261+
multus:
262+
ranges:
263+
- start: 30
264+
end: 70
265+
vlan: 22
266+
mtu: 1496
267+
tenant2:
268+
network: "172.19.10.0/24"
269+
tools:
270+
metallb:
271+
ranges:
272+
- start: 80
273+
end: 90
274+
netconfig:
275+
ranges:
276+
- start: 100
277+
end: 250
278+
multus:
279+
ranges:
280+
- start: 30
281+
end: 70
282+
vlan: 32
283+
mtu: 1496
284+
external:
285+
network: "10.0.0.0/24"
286+
tools:
287+
netconfig:
288+
ranges:
289+
- start: 100
290+
end: 250
291+
vlan: 22
292+
mtu: 1500
293+
external2:
294+
network: "10.10.0.0/24"
295+
tools:
296+
netconfig:
297+
ranges:
298+
- start: 100
299+
end: 250
300+
vlan: 32
301+
mtu: 1500
302+
303+
group-templates:
304+
ocps:
305+
network-template:
306+
range:
307+
start: 10
308+
length: 10
309+
networks: &ocps_nets
310+
ctlplane: {}
311+
internalapi:
312+
trunk-parent: ctlplane
313+
tenant:
314+
trunk-parent: ctlplane
315+
storage:
316+
trunk-parent: ctlplane
317+
ctlplane2: {}
318+
internalapi2:
319+
trunk-parent: ctlplane2
320+
tenant2:
321+
trunk-parent: ctlplane2
322+
storage2:
323+
trunk-parent: ctlplane2
324+
ocp_workers:
325+
network-template:
326+
range:
327+
start: 20
328+
length: 10
329+
networks: *ocps_nets
330+
computes:
331+
network-template:
332+
range:
333+
start: 100
334+
length: 21
335+
networks:
336+
ctlplane: {}
337+
internalapi:
338+
trunk-parent: ctlplane
339+
tenant:
340+
trunk-parent: ctlplane
341+
storage:
342+
trunk-parent: ctlplane
343+
compute2s:
344+
network-template:
345+
range:
346+
start: 200
347+
length: 21
348+
networks:
349+
ctlplane2: {}
350+
internalapi2:
351+
trunk-parent: ctlplane2
352+
tenant2:
353+
trunk-parent: ctlplane2
354+
storage2:
355+
trunk-parent: ctlplane2
356+
instances:
357+
controller-0:
358+
networks:
359+
ctlplane:
360+
ip: "192.168.122.9"
361+
ctlplane2:
362+
ip: "192.168.133.9"
363+
364+
# Hooks
365+
post_deploy:
366+
- name: Discover hypervisors for openstack2 namespace
367+
type: playbook
368+
source: "{{ ansible_user_dir }}/src/github.com/openstack-k8s-operators/ci-framework/hooks/playbooks/nova_manage_discover_hosts.yml"
369+
extra_vars:
370+
namespace: openstack2
371+
_cell_conductors: nova-cell0-conductor-0
372+
373+
pre_admin_setup:
374+
- name: Prepare OSP networks in openstack2 namespace
375+
type: playbook
376+
source: "{{ ansible_user_dir }}/src/github.com/openstack-k8s-operators/ci-framework/playbooks/multi-namespace/ns2_osp_networks.yaml"
377+
extra_vars:
378+
cifmw_os_net_setup_namespace: openstack2
379+
cifmw_os_net_setup_public_cidr: "192.168.133.0/24"
380+
cifmw_os_net_setup_public_start: "192.168.133.230"
381+
cifmw_os_net_setup_public_end: "192.168.133.250"
382+
cifmw_os_net_setup_public_gateway: "192.168.133.1"
383+
384+
post_tests:
385+
- name: Run tempest against openstack2 namespace
386+
type: playbook
387+
source: "{{ ansible_user_dir }}/src/github.com/openstack-k8s-operators/ci-framework/playbooks/multi-namespace/ns2_validation.yaml"
388+
extra_vars:
389+
cifmw_test_operator_tempest_name: tempest-tests2
390+
cifmw_test_operator_namespace: openstack2
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
cifmw_parent_scenario:
3+
- "scenarios/reproducers/va-common.yml"
4+
- "scenarios/reproducers/va-multi-base.yml"
5+
cifmw_architecture_scenario: multi-namespace-skmo
6+
cifmw_arch_automation_file: multi-namespace-skmo.yaml

0 commit comments

Comments
 (0)