Skip to content

Commit

Permalink
Merge branch 'main' into 710-feature-request-enable-compliance-tests-…
Browse files Browse the repository at this point in the history
…to-use-plugins-for-cluster-provisioning
  • Loading branch information
tonifinger authored Nov 18, 2024
2 parents a96047d + f63ad94 commit c686a45
Show file tree
Hide file tree
Showing 84 changed files with 3,584 additions and 1,494 deletions.
8 changes: 8 additions & 0 deletions .github/scs-compliance-check/openstack/clouds.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,14 @@ clouds:
auth:
auth_url: https://identity.l1a.cloudandheat.com/v3
application_credential_id: "7ab4e3339ea04255bc131868974cfe63"
scaleup-occ2:
auth_type: v3applicationcredential
auth:
auth_url: https://keystone.occ2.scaleup.cloud
application_credential_id: "5d2eea4e8bf8448092490b4190d4430a"
region_name: "RegionOne"
interface: "public"
identity_api_version: 3
syseleven-dus2:
interface: public
identity_api_verion: 3
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/check-scaleup-occ2-v4.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: "Compliance IaaS v4 of scaleup-occ2"

on:
# Trigger compliance check every day at 4:30 UTC
schedule:
- cron: '30 4 * * *'
# Trigger compliance check after Docker image has been built
workflow_run:
workflows: [Build and publish scs-compliance-check Docker image]
types:
- completed
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
check-scaleup-occ2:
uses: ./.github/workflows/scs-compliance-check-with-application-credential.yml
with:
version: v4
layer: iaas
cloud: scaleup-occ2
secret_name: OS_PASSWORD_SCALEUP_OCC2
secrets: inherit
28 changes: 28 additions & 0 deletions .github/workflows/lint-golang.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Check Go syntax

on:
push:
paths:
- 'Tests/kaas/kaas-sonobuoy-tests/**/*.go'
- .github/workflows/lint-go.yml

jobs:
lint-go-syntax:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.23'

# Install golangci-lint
- name: Install golangci-lint
run: |
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.61.0
# Run golangci-lint
- name: Run golangci-lint
working-directory: Tests/kaas/kaas-sonobuoy-tests
run: golangci-lint run ./... -v
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
**/__pycache__/
.venv/
.idea
.sandbox
.DS_Store
node_modules
Tests/kaas/results/
Tests/kaas/kaas-sonobuoy-tests/results/
*.tar.gz
5 changes: 3 additions & 2 deletions .markdownlint-cli2.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,10 @@
{
"name": "double-spaces",
"message": "Avoid double spaces",
"searchPattern": "/([^\\s>]) ([^\\s|])/g",
"searchPattern": "/([^\\s>|]) ([^\\s|])/g",
"replace": "$1 $2",
"skipCode": true
"skipCode": true,
"tables": false
}
]
}
Expand Down
22 changes: 22 additions & 0 deletions .zuul.d/secure.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,28 @@
VCsXjf0qBBMrzz6HP9z95Bk44fiJ3L/LkA3Iij961dYrQXbZKDrKOiX/QPwrcSrVmjmew
UbPexJFHgvTCqjadoLejSt9cUd9lVzhuzLJ8CS+CcCMbZOno6qathrd2B88riQaPNIGNu
gfkNT9R63ZzKB1qIA2n5RZi7SH9DPIUd0AwLMn2bhp3uok5pNAPP/4/1RkQiCA=
scaleup_occ2_ac_id: !encrypted/pkcs1-oaep
- N2duwkcMdOXw6wF0deE/0BPM1M/URt3eWmrnBJ89VHeCDENGfTfDHcWPYs3wW4rSRCG6t
gqgNuA049OvOhL7rtjNHZ6yIj6xEHH/YdqT4UxjXPS9GFwoJXDtE8rIGjK3KU8GfUgKnG
DLplyyzGzx5j39rJAS628InmC56aip47rO1J4HQE9Ku25Wb06R7ykx+0ZOWr0HXjV/VsV
uwfyL+DPgewbL+4u8/XkcI0FwAM9/KkF/CcYUq5aVMdQS2foatTQW0C2idg+pffSTRaau
VF44rkVfzsCOz4MYAFpLIaL9Zxx1FifaPOd0oi6rEFjGd6vFtFCHk1BRpKmOITLyx3Te5
zVffSkQAsqpn/4er8800bjQzxXvqmQmR0QwPM7dhvRnrNbTSCA/Awm5BPaUgeCZFN3MPN
Mc0XIaEwjuJvDK6fqj5tJrVIs5bxAmqRDj8d76AlJcOdDxHicTHgR3aUG4AKOWkUsskgQ
3xR8lPh31O/HgzG9tq6o/DCPA1O9wyyOyT7KwJAaRASPCA1O80ZAzhZUNUVyut6dYEwaS
QXP4IaEJOxP8EkxR7FDEuO99UFZ7TXQ1CF7ots4wIs5tEpQvcdLnvBjJckp0fNBFTuGMm
FCvhgBK30NC93U4DxQv6xZBhqtvHYjHcTOXvz2fryRJT2teMN+eI+RDdV1Jj8Y=
scaleup_occ2_ac_secret: !encrypted/pkcs1-oaep
- LfUHhslK41JDp3CpslWGGA4bZ3udZh4KnytcXohkdbchb8QVt8eNc4nD0ti0/XS18YKwq
DlHOWw2rDJZ8RGIXENVUYzDbECoBErE8IAqQE0q3oS/8Oq0NYOFTGvvlKuue7U4s87Pwi
YFi+Q0Rv7vO8cWFVtbRHK+Hw6pC42Biq2T+tuVBCLqylIMViXpuEy9UpFLEv59zr6EHa9
uB3xkjnpWuabe7vrG+LQHc0pJ5tNhcLiOnJggU5Ef02FBy+t6xvuJW8f6cXCnRRj1q0fl
D/vTmC7avwHnWC+J4WLL69HCwW05I7iHftVSWOXQgRzMBd4D4ND2OXfsWElu0eOV5XG6X
JsQH8lDnVN/lqaDAOYR4fk4+9yt3RURwvNL5FUnDK1t7LAI4X0gcvLrQAfzgOlpBYDXSK
0kbUzqwivuw1v2zO/gxQU+J28PsOfZaKf/7ZZyj3e/tiq4wBpvPb0mVBwWXigKqzr+QED
Iy2u/g3x2qdcTpXR/RPq+xiXM2B2rw1V5gdkscdL+avXtTF7hT9HrcayHx3HDZ/h6aGPD
RWIJ8bstl+x2Q4zExgR13amWM8ZR1iLGCN20U/ZAaqANCqjDbrSVSTjTPzYtNFwAXwxkB
3NHhPDHZ1MIdr6IJE4IZ4TCMsIeTA2UHNfF4RCzeDSIJ+CXOQxUFWOxZkf97WY=
syseleven_dus2_ac_id: !encrypted/pkcs1-oaep
- SjwtIvJO7DkLJDmS+T/Z5utFBa22hmPRBd8mzonJHGgURB2W7fmXFreD9NPrLfbt7ujKi
KNqJm8k1Vr1F3Mu+Osr0BWSnq5makwVt2ikBY4qPbL8iyVXsByaT/HNPLCOokqy+REpfu
Expand Down
15 changes: 1 addition & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,10 @@
<!-- markdownlint-disable -->
# Sovereign Cloud Stack – Standards and Certification

SCS unifies the best of cloud computing in a certified standard. With a decentralized and federated cloud stack, SCS puts users in control of their data and fosters trust in clouds, backed by a global open-source community.

## SCS compatible clouds

This is a list of clouds that we test on a nightly basis against our `scs-compatible` certification level.

| Name | Description | Operator | _SCS-compatible IaaS_ Compliance | HealthMon |
| -------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | ----------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------: |
| [gx-scs](https://github.com/SovereignCloudStack/docs/blob/main/community/cloud-resources/plusserver-gx-scs.md) | Dev environment provided for SCS & GAIA-X context | plusserver GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-gx-scs-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-gx-scs-v4.yml) | [HM](https://health.gx-scs.sovereignit.cloud:3000/) |
| [pluscloud open](https://www.plusserver.com/en/products/pluscloud-open)<br />- prod1<br />- prod2<br />- prod3<br />- prod4 | Public cloud for customers (4 regions) | plusserver GmbH | &nbsp;<br />- prod1 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-pco-prod1-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-pco-prod1-v4.yml)<br />- prod2 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-pco-prod2-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-pco-prod2-v4.yml)<br />- prod3 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-pco-prod3-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-pco-prod3-v4.yml)<br />- prod4 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-pco-prod4-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-pco-prod4-v4.yml) | &nbsp;<br />[HM1](https://health.prod1.plusserver.sovereignit.cloud:3000/d/9ltTEmlnk/openstack-health-monitor2?orgId=1&var-mycloud=plus-pco)<br />[HM2](https://health.prod1.plusserver.sovereignit.cloud:3000/d/9ltTEmlnk/openstack-health-monitor2?orgId=1&var-mycloud=plus-prod2)<br />[HM3](https://health.prod1.plusserver.sovereignit.cloud:3000/d/9ltTEmlnk/openstack-health-monitor2?orgId=1&var-mycloud=plus-prod3)<br />[HM4](https://health.prod1.plusserver.sovereignit.cloud:3000/d/9ltTEmlnk/openstack-health-monitor2?orgId=1&var-mycloud=plus-prod4) |
| [Wavestack](https://www.noris.de/wavestack-cloud/) | Public cloud for customers | noris network AG/Wavecon GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-wavestack-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-wavestack-v4.yml) | [HM](https://health.wavestack1.sovereignit.cloud:3000/) |
| [REGIO.cloud](https://regio.digital) | Public cloud for customers | OSISM GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-regio-a-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-regio-a-v4.yml) | broken <!--[HM](https://apimon.services.regio.digital/public-dashboards/17cf094a47404398a5b8e35a4a3968d4?orgId=1&refresh=5m)--> |
| [CNDS](https://cnds.io/) | Public cloud for customers | artcodix GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-artcodix-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-artcodix-v4.yml) | [HM](https://ohm.muc.cloud.cnds.io/) |
| [aov.cloud](https://www.aov.de/) | Community cloud for customers | aov IT.Services GmbH | (soon) | [HM](https://health.aov.cloud/) |
| PoC WG-Cloud OSBA | Cloud PoC for FITKO (yaook-based) | Cloud&amp;Heat Technologies GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-poc-wgcloud-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-poc-wgcloud-v4.yml) | [HM](https://health.poc-wgcloud.osba.sovereignit.cloud:3000/d/9ltTEmlnk/openstack-health-monitor2?var-mycloud=poc-wgcloud&orgId=1) |
| PoC KDO | Cloud PoC for FITKO | KDO Service GmbH / OSISM GmbH | [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-poc-kdo-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-poc-kdo-v4.yml) | (soon) |
| [syseleven](https://www.syseleven.de/en/products-services/openstack-cloud/)<br />- dus2<br />- ham1 | Public OpenStack Cloud (2 SCS regions) | SysEleven GmbH | &nbsp;<br />- dus2 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-syseleven-dus2-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-syseleven-dus2-v4.yml)<br />- ham1 [![Compliance Status](https://img.shields.io/github/actions/workflow/status/SovereignCloudStack/standards/check-syseleven-ham1-v4.yml?label=v4)](https://github.com/SovereignCloudStack/standards/actions/workflows/check-syseleven-ham1-v4.yml) | &nbsp;<br />(soon)<br />(soon) |
See [Compliant clouds overview](https://docs.scs.community/standards/certification/overview) on our docs page.

## SCS standards overview

Expand Down
22 changes: 15 additions & 7 deletions Standards/scs-0001-v1-sovereign-cloud-standards.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ embedded in the markdown header.
| Field name | Requirement | Description |
| --------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| `type` | REQUIRED | one of `Procedural`, `Standard`, `Decision Record`, or `Supplement` |
| `status` | REQUIRED | one of `Proposal`, `Draft`, `Stable`, `Deprecated`, or `Rejected` |
| `status` | REQUIRED | one of `Draft`, `Stable`, `Deprecated`, or `Rejected` |
| `track` | REQUIRED | one of `Global`, `IaaS`, `KaaS`, `IAM`, `Ops` |
| `supplements` | REQUIRED precisely when `type` is `Supplement` | list of documents that are extended by this document (e.g., multiple major versions) |
| `deprecated_at` | REQUIRED if `status` is `Deprecated` | ISO formatted date indicating the date after which the deprecation is in effect |
Expand Down Expand Up @@ -167,11 +167,11 @@ In addition, the following OPTIONAL sections should be considered:
## Process

The lifecycle of an SCS document goes through the following phases:
Proposal, Draft, Stable, Deprecated, and Rejected.
Draft, Stable, Deprecated, and Rejected.

```mermaid
graph TD
A[Proposal] -->|Pull Request| B[Draft]
A["Draft (Proposal)"] -->|Pull Request| B[Draft]
B -->|Pull Request| D[Stable]
B -->|Pull Request| E[Rejected]
D -->|Pull Request| F[Deprecated]
Expand All @@ -195,8 +195,15 @@ Supplements may be kept in Draft state, because they are not authoritative.
To propose a new SCS document,
a community participant creates a pull request on GitHub
against the [standards repository in the SovereignCloudStack organisation][scs-standards-repo].

The pull request MUST add exactly one SCS document,
In the beginning, the pull request will contain a draft of an SCS document and
the community participant should present it to the SCS community.
They may refer to the [SCS Community page](https://docs.scs.community/community/)
for an overview of applicable means of communication and online meetings
to get in touch with the SCS community.
Community participants are encouraged to present their proposal to the SCS community early on.
Note that the proposal draft's content does not need to be finished in any way at this stage.

The pull request for the proposal MUST add exactly one SCS document,
in the `Standards` folder.
In the proposal phase,
the document number MUST be replaced with `xxxx` in the file name,
Expand All @@ -209,15 +216,16 @@ for a Supplement of `scs-0100-v3-flavor-naming.md`,
the file name might be `scs-0100-w1-flavor-naming-implementation-testing.md` (note the `w1`!).

The metadata MUST indicate the intended `track` and `type` of the document,
and the `status` MUST be set to `Proposal`;
and the `status` MUST be set to `Draft`;
for a Supplement, the `supplements` field MUST be set
to a list of documents (usually containing one element).

Upon acceptance by the group of people identified by the `track`,
a number is assigned
(the next unused number)
and the proposer is asked
to rename the file to replace the `xxxx` with that number.
to rename the file to replace the `xxxx` with that number
before the merge of the pull request.

**Note:**
Documents on the `Design Record` track MAY be proposed or accepted directly into `Stable` state,
Expand Down
Loading

0 comments on commit c686a45

Please sign in to comment.