Skip to content

Commit a5ff7dd

Browse files
committed
WIP: rework testcases
Signed-off-by: Matthias Büchse <[email protected]>
1 parent 0764e98 commit a5ff7dd

File tree

13 files changed

+719
-272
lines changed

13 files changed

+719
-272
lines changed

Tests/scs-compatible-iaas.yaml

Lines changed: 74 additions & 272 deletions
Original file line numberDiff line numberDiff line change
@@ -10,228 +10,23 @@ modules:
1010
- id: opc-v2022.11
1111
name: OpenStack Powered Compute v2022.11
1212
url: https://opendev.org/openinfra/interop/src/branch/master/guidelines/2022.11.json
13-
- id: scs-0100-v1
14-
name: Flavor naming v1
15-
url: https://docs.scs.community/standards/scs-0100-v1-flavor-naming
13+
- id: scs-standards
1614
run:
17-
- executable: ./iaas/flavor-naming/flavor-names-openstack.py
18-
args: -c {os_cloud} --v1prefer
19-
testcases:
20-
- id: flavor-name-check
21-
tags: [mandatory]
22-
description: >
23-
Must fulfill all requirements of
24-
<https://docs.scs.community/standards/scs-0100-v1-flavor-naming>
25-
- id: scs-0100-v2
26-
name: Flavor naming v2
27-
url: https://docs.scs.community/standards/scs-0100-v2-flavor-naming
28-
run:
29-
- executable: ./iaas/flavor-naming/flavor-names-openstack.py
30-
args: -c {os_cloud}
31-
testcases:
32-
- id: flavor-name-check
33-
tags: [mandatory]
34-
description: >
35-
Must fulfill all requirements of
36-
<https://docs.scs.community/standards/scs-0100-v2-flavor-naming>
37-
- id: scs-0100-v3.0
38-
name: Flavor naming v3.0
39-
url: https://docs.scs.community/standards/scs-0100-v3-flavor-naming
40-
run:
41-
- executable: ./iaas/flavor-naming/flavor-names-openstack.py
42-
args: --v3 -c {os_cloud}
43-
# Note: "--v3 --v2plus" would outlaw the v1 flavor names. Don't do this yet.
44-
testcases:
45-
- id: flavor-name-check
46-
tags: [mandatory]
47-
description: >
48-
Must fulfill all requirements of
49-
<https://docs.scs.community/standards/scs-0100-v3-flavor-naming> -- plus the list of mandatory
50-
and recommended flavors found in <https://docs.scs.community/standards/scs-0100-v2-flavor-naming#standard-scs-flavors>
51-
- id: scs-0100-v3.1
52-
name: Flavor naming v3.1
53-
url: https://docs.scs.community/standards/scs-0100-v3-flavor-naming
54-
run:
55-
- executable: ./iaas/flavor-naming/flavor-names-openstack.py
56-
args: -c {os_cloud} --mand=./iaas/scs-0100-v3-flavors.yaml
57-
# Note: --v2plus would outlaw the v1 flavor names. Don't do this yet.
58-
testcases:
59-
- id: flavor-name-check
60-
tags: [mandatory]
61-
description: >
62-
Must fulfill all requirements of
63-
<https://docs.scs.community/standards/scs-0100-v3-flavor-naming>
64-
- id: scs-0101-v1
65-
name: Entropy v1
66-
url: https://docs.scs.community/standards/scs-0101-v1-entropy
67-
run:
68-
- executable: ./iaas/entropy/entropy-check.py
69-
args: -c {os_cloud} -d
70-
testcases:
71-
- id: entropy-check-flavor-properties
72-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
73-
- id: entropy-check-image-properties
74-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
75-
- id: entropy-check-rngd
76-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
77-
- id: entropy-check-entropy-avail
78-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
79-
- id: entropy-check-fips-test
80-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
81-
- id: entropy-check
82-
tags: [mandatory]
83-
description: >
84-
Must fulfill all requirements of
85-
<https://docs.scs.community/standards/scs-0101-v1-entropy>
86-
- id: scs-0101-v1.1
87-
name: Entropy v1
88-
url: https://docs.scs.community/standards/scs-0101-v1-entropy
89-
run:
90-
- executable: ./iaas/entropy/entropy-check.py
91-
args: -c {os_cloud} -d
92-
testcases:
93-
- id: entropy-check-flavor-properties
94-
tags: [recommended]
95-
description: >
96-
Must have all flavor properties recommended in
97-
<https://docs.scs.community/standards/scs-0101-w1-entropy-implementation-testing#warnings>
98-
- id: entropy-check-image-properties
99-
tags: [recommended]
100-
description: >
101-
Must have all image properties recommended in
102-
<https://docs.scs.community/standards/scs-0101-w1-entropy-implementation-testing#warnings>
103-
- id: entropy-check-rngd
104-
tags: [mandatory]
105-
description: >
106-
Images of the test sample must have the service `rngd`; see
107-
<https://docs.scs.community/standards/scs-0101-w1-entropy-implementation-testing#errors>
108-
- id: entropy-check-entropy-avail
109-
tags: [mandatory]
110-
description: >
111-
A test instance must have the correct `entropy_avail`; see
112-
<https://docs.scs.community/standards/scs-0101-w1-entropy-implementation-testing#errors>
113-
- id: entropy-check-fips-test
114-
tags: [mandatory]
115-
description: >
116-
A test instance must pass the "FIPS test"; see
117-
<https://docs.scs.community/standards/scs-0101-w1-entropy-implementation-testing#errors>
118-
- id: entropy-check
119-
tags: [] # don't use this testcase, but list it anyway because the script will output a result
120-
- id: scs-0102-v1
121-
name: Image metadata v1
122-
url: https://docs.scs.community/standards/scs-0102-v1-image-metadata
123-
run:
124-
- executable: ./iaas/image-metadata/image-md-check.py
125-
args: -c {os_cloud} -v -s
126-
# skip check of mand/recc/sugg images, for these were never authoritative, and they have been
127-
# superseded by scs-0104-v1
128-
testcases:
129-
- id: image-metadata-check
130-
tags: [mandatory]
131-
description: >
132-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0102-v1-image-metadata>
133-
- id: scs-0103-v1
134-
name: Standard flavors
135-
url: https://docs.scs.community/standards/scs-0103-v1-standard-flavors
136-
run:
137-
- executable: ./iaas/standard-flavors/flavors-openstack.py
138-
args: -c {os_cloud} -d ./iaas/scs-0103-v1-flavors.yaml
139-
testcases:
140-
- id: standard-flavors-check
141-
tags: [mandatory]
142-
description: >
143-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0103-v1-standard-flavors>
144-
- id: scs-0104-v1
145-
name: Standard images
146-
url: https://docs.scs.community/standards/scs-0104-v1-standard-images
147-
parameters:
148-
image_spec: address (URL) of an image-spec (YAML) file
149-
run:
150-
- executable: ./iaas/standard-images/images-openstack.py
151-
args: -c {os_cloud} -d {image_spec}
152-
testcases:
153-
- id: standard-images-check
154-
tags: [mandatory]
155-
description: >
156-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0104-v1-standard-images>
157-
- id: scs-0114-v1
158-
name: Volume Types
159-
url: https://docs.scs.community/standards/scs-0114-v1-volume-type-standard
160-
run:
161-
- executable: ./iaas/volume-types/volume-types-check.py
162-
args: -c {os_cloud} -d
163-
testcases:
164-
- id: volume-types-check
165-
tags: [mandatory]
166-
description: >
167-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0114-v1-volume-type-standard>
168-
- id: scs-0115-v1
169-
name: Default rules for security groups
170-
url: https://docs.scs.community/standards/scs-0115-v1-default-rules-for-security-groups
171-
run:
172-
- executable: ./iaas/security-groups/default-security-group-rules.py
173-
args: --os-cloud {os_cloud} --debug
174-
testcases:
175-
- id: security-groups-default-rules-check
176-
tags: [mandatory]
177-
description: >
178-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0115-v1-default-rules-for-security-groups>
179-
- id: scs-0116-v1
180-
name: Key manager
181-
url: https://docs.scs.community/standards/scs-0116-v1-key-manager-standard
182-
run:
183-
- executable: ./iaas/key-manager/check-for-key-manager.py
184-
args: --os-cloud {os_cloud} --debug
185-
testcases:
186-
- id: key-manager-check
187-
tags: [mandatory]
188-
description: >
189-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0116-v1-key-manager-standard>
190-
- id: scs-0117-v1
191-
name: Volume backup
192-
url: https://docs.scs.community/standards/scs-0117-v1-volume-backup-service
193-
run:
194-
- executable: ./iaas/volume-backup/volume-backup-tester.py
195-
args: --os-cloud {os_cloud} --debug
196-
testcases:
197-
- id: volume-backup-check
198-
tags: [mandatory]
199-
description: >
200-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0117-v1-volume-backup-service>
201-
- id: scs-0121-v1
202-
name: Availability Zones
203-
url: https://docs.scs.community/standards/scs-0121-v1-Availability-Zones-Standard
204-
testcases:
205-
- id: availability-zones-check
206-
tags: [availability-zones]
207-
description: >
208-
Note: manual check! Must fulfill all requirements of <https://docs.scs.community/standards/scs-0121-v1-Availability-Zones-Standard>
209-
- id: scs-0123-v1
210-
name: Mandatory and Supported IaaS Services
211-
url: https://docs.scs.community/standards/scs-0123-v1-mandatory-and-supported-IaaS-services
212-
run:
213-
- executable: ./iaas/mandatory-services/mandatory-iaas-services.py
214-
args: --os-cloud {os_cloud} --debug
215-
testcases:
216-
- id: service-apis-check
217-
tags: [mandatory]
218-
description: >
219-
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0123-v1-mandatory-and-supported-IaaS-services> (except for documentation requirements, which are tested manually with service-apis-docs-check).
220-
- id: service-apis-docs-check
221-
tags: [service-apis-docs]
222-
description: >
223-
Note: manual check! Must fulfill documentation requirements of <https://docs.scs.community/standards/scs-0123-v1-mandatory-and-supported-IaaS-services>.
224-
- id: scs-0302-v1
225-
name: Domain Manager Role
226-
url: https://docs.scs.community/standards/scs-0302-v1-domain-manager-role
227-
# run:
228-
# - executable: ./iam/domain-manager/domain-manager-check.py
229-
# args: --os-cloud {os_cloud} --debug --domain-config ...
230-
testcases:
231-
- id: domain-manager-check
232-
tags: [domain-manager]
233-
description: >
234-
Note: manual check! Must fulfill all requirements of <https://docs.scs.community/standards/scs-0302-v1-domain-manager-role>
15+
- executable: ./iaas/run_scs.py
16+
args: -c {os_cloud} -t {testcases_file}
17+
testcases:
18+
- include: testcases/scs-0100.yaml
19+
- include: testcases/scs-0101.yaml
20+
- include: testcases/scs-0102.yaml
21+
- include: testcases/scs-0103.yaml
22+
- include: testcases/scs-0104.yaml
23+
- include: testcases/scs-0114.yaml
24+
- include: testcases/scs-0115.yaml
25+
- include: testcases/scs-0116.yaml
26+
- include: testcases/scs-0117.yaml
27+
- include: testcases/scs-0121.yaml
28+
- include: testcases/scs-0123.yaml
29+
- include: testcases/scs-0302.yaml
23530
timeline:
23631
- date: 2025-02-01
23732
versions:
@@ -294,88 +89,95 @@ versions:
29489
stabilized_at: 2024-12-19
29590
include:
29691
- opc-v2022.11
297-
- scs-0100-v3.1
298-
- scs-0101-v1
299-
- scs-0102-v1
300-
- scs-0103-v1
301-
- ref: scs-0104-v1
302-
parameters:
303-
image_spec: https://raw.githubusercontent.com/SovereignCloudStack/standards/main/Tests/iaas/scs-0104-v1-images-v5.yaml
304-
- scs-0114-v1
305-
- scs-0115-v1
306-
- scs-0116-v1
307-
- scs-0117-v1
308-
- scs-0121-v1
309-
- scs-0123-v1
310-
- scs-0302-v1
92+
- scs-standards
31193
targets:
312-
main: mandatory
313-
preview: domain-manager/availability-zones/service-apis-docs
94+
main: >
95+
scs-0100-v3.1,
96+
scs-0101-v1,
97+
scs-0102-v1,
98+
scs-0103-v1,
99+
scs-0104-v1-2,
100+
scs-0114-v1,
101+
scs-0115-v1,
102+
scs-0116-v1,
103+
scs-0117-v1,
104+
scs-0121-v1 !manual,
105+
scs-0123-v1 !manual,
106+
scs-0302-v1 !manual
107+
preview: >
108+
scs-0121-v1 manual,
109+
scs-0123-v1 manual,
110+
scs-0302-v1 manual
314111
- version: v5
315112
stabilized_at: 2024-11-14
316113
include:
317114
- opc-v2022.11
318-
- scs-0100-v3.1
319-
- scs-0101-v1
320-
- scs-0102-v1
321-
- scs-0103-v1
322-
- ref: scs-0104-v1
323-
parameters:
324-
image_spec: https://raw.githubusercontent.com/SovereignCloudStack/standards/main/Tests/iaas/scs-0104-v1-images-v5.yaml
325-
- scs-0114-v1
326-
- scs-0115-v1
327-
- scs-0116-v1
328-
- scs-0117-v1
329-
- scs-0121-v1
330-
- scs-0302-v1
115+
- scs-standards
331116
targets:
332-
main: mandatory
333-
preview: domain-manager/availability-zones/service-apis-docs
117+
main: >
118+
scs-0100-v3.1,
119+
scs-0101-v1,
120+
scs-0102-v1,
121+
scs-0103-v1,
122+
scs-0104-v1-2,
123+
scs-0114-v1,
124+
scs-0115-v1,
125+
scs-0116-v1,
126+
scs-0117-v1,
127+
scs-0121-v1 !manual,
128+
scs-0302-v1 !manual
129+
preview: >
130+
scs-0121-v1 manual,
131+
scs-0123-v1 manual,
132+
scs-0302-v1 manual
334133
- version: v4
335134
stabilized_at: 2024-02-28
336135
include:
337136
- opc-v2022.11
338-
- scs-0100-v3.1
339-
- scs-0101-v1
340-
- scs-0102-v1
341-
- scs-0103-v1
342-
- ref: scs-0104-v1
343-
parameters:
344-
image_spec: https://raw.githubusercontent.com/SovereignCloudStack/standards/main/Tests/iaas/scs-0104-v1-images.yaml
137+
- scs-standards
345138
targets:
346-
main: mandatory
139+
main: >
140+
scs-0100-v3.1,
141+
scs-0101-v1,
142+
scs-0102-v1,
143+
scs-0103-v1,
144+
scs-0104-v1-1
347145
- version: v3
348146
# comment: >
349147
# This is what our documentation wrongly stated as being v3 when we introduced v4.
350148
# What was originally v3 (and what we actually continued to test) can be found as v3-orig.
351149
stabilized_at: 2024-02-28
352150
include:
353151
- opc-v2022.11
354-
- scs-0100-v3.1
355-
- scs-0102-v1
152+
- scs-standards
356153
targets:
357-
main: mandatory
154+
main: >
155+
scs-0100-v3.1,
156+
scs-0102-v1
358157
- version: v3-orig
359158
stabilized_at: 2023-06-15
360159
include:
361160
- opc-v2022.11
362-
- scs-0100-v3.0
363-
- scs-0102-v1
161+
- scs-standards
364162
targets:
365-
main: mandatory
163+
main: >
164+
scs-0100-v3.0,
165+
scs-0102-v1
366166
- version: v2
367167
stabilized_at: 2023-03-23
368168
include:
369169
- opc-v2022.11
370-
- scs-0100-v2
371-
- scs-0102-v1
170+
- scs-standards
372171
targets:
373-
main: mandatory
172+
main: >
173+
scs-0100-v2,
174+
scs-0102-v1
374175
- version: v1
375176
stabilized_at: 2021-01-01
376177
include:
377178
- opc-v2020.11
378-
- scs-0100-v1
379-
- scs-0102-v1
179+
- scs-standards
380180
targets:
381-
main: mandatory
181+
main: >
182+
scs-0100-v1,
183+
scs-0102-v1

0 commit comments

Comments
 (0)