Skip to content

Commit

Permalink
Remove outdated compliance-check workflows (#721)
Browse files Browse the repository at this point in the history
* Remove outdated compliance-check workflows
* Fix scs-0003-v1 (weirdly using obsolete), permit testing deprecated versions
* elaborate on deprecated versions

Signed-off-by: Matthias Büchse <[email protected]>
  • Loading branch information
mbuechse authored Sep 3, 2024
1 parent 2e399a5 commit 847d819
Show file tree
Hide file tree
Showing 11 changed files with 15 additions and 167 deletions.
23 changes: 0 additions & 23 deletions .github/workflows/check-gx-scs-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-pco-prod1-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-pco-prod2-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-pco-prod3-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-pco-prod4-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-regio-a-v2.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/check-wavestack-v2.yml

This file was deleted.

12 changes: 9 additions & 3 deletions Standards/scs-0003-v1-sovereign-cloud-standards-yaml.md
Original file line number Diff line number Diff line change
Expand Up @@ -283,11 +283,17 @@ The following validity codes are recognized:
- `warn`: the version can be certified against, but a PASS MUST be accompanied by a warning that the version
is about to expire; the version MUST be stable at the start of the period.
- `draft`: the version can be tested against, but not certified; the version need not be stable.
- `deprecated`: the version can be tested against, but not certified.

The following validity code is also recognized, but SHOULD NOT be used, because it is the default value for
any version not mentioned in the map:
Any version not listed in `versions` is considered `deprecated`.

- `obsolete`: the version MUST NOT be tested or certified against.
If no other restriction is given, any version listed in `version` SHOULD be tested against.
This includes any version listed as `deprecated`; the rationale here is that, while the test subject
can no longer be certified against it, some customers may still work with that version.

Note: Compliance with a new (effective) version often implies compliance with an older (deprecated) one.
Including the older one into the test is meant to increase the confidence that this is indeed the case, or,
if it isn't, serves to provide a clear picture of how many test subjects still comply with the old version.

Note: We intend to keep only one version in effect, except for a grace period of 4 to 6 weeks, when two versions
are effective at the same time.
Expand Down
1 change: 1 addition & 0 deletions Tests/scs-compatible-iaas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ timeline:
versions:
v5: draft
v4: effective
v3: deprecated
- date: 2024-07-31
versions:
v4: effective
Expand Down
4 changes: 2 additions & 2 deletions Tests/scs-compliance-check.py
Original file line number Diff line number Diff line change
Expand Up @@ -141,8 +141,8 @@ def apply_argv(self, argv):
self.arg0 = args[0]


def select_valid(versions: list, valid=('effective', 'warn', 'draft')) -> list:
return [version for version in versions if version['validity'] in valid]
def select_valid(versions: list) -> list:
return [version for version in versions if version['_explicit_validity']]


def suppress(*args, **kwargs):
Expand Down
4 changes: 3 additions & 1 deletion Tests/scs_cert_lib.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,9 @@ def annotate_validity(timeline: list, versions: dict, checkdate: date):
default={},
).get('versions', {})
for vname, version in versions.items():
version['validity'] = validity_lookup.get(vname, 'deprecated')
validity = validity_lookup.get(vname)
version['validity'] = validity or 'deprecated'
version['_explicit_validity'] = validity


def add_period(dt: datetime, period: str) -> datetime:
Expand Down

0 comments on commit 847d819

Please sign in to comment.