Skip to content

Commit dc3e0f1

Browse files
authored
Merge branch 'main' into add_larger_flavors
2 parents e6263d4 + 72e4f12 commit dc3e0f1

12 files changed

+127
-23
lines changed

Standards/scs-0001-v1-sovereign-cloud-standards.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@ where the group which has to form the consensus depends on the `track` of the do
189189
Any pull request affecting a document in the Global track MUST NOT be merged
190190
unless approved by a representative of the _Forum SCS-Standards_.
191191

192+
In case there is little or no activity in some team, the SIG Standardization/Certification
193+
can take decisions on behalf of such a team. The SIG will seek alignment with the Project
194+
Board for decisions with large impact to ensure we have the wanted broad alignment.
195+
192196
Supplements may be kept in Draft state, because they are not authoritative.
193197

194198
### Proposal phase
@@ -281,6 +285,8 @@ Changes to the documents are gated through pull requests.
281285

282286
Once the document is deemed ready for production use,
283287
its `status` is changed to `Stable`.
288+
Additionally, the field `stabilized_at` MUST be added and set to a date after which the document is
289+
to be considered stable.
284290

285291
If the document in question is a `Standard`
286292
(and if applicable),

Standards/scs-0005-v1-project-governance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ Every person who is a member of the GitHub organization "Sovereign Cloud Stack"
9494
### Electoral management
9595

9696
The voting process is governed by the _Forum SCS-Standards_.
97-
Voting is done using the [Condorcet Internet Voting Service](https://civs.cs.cornell.edu). This is the same system as is [being used by the OpenInfra foundation](https://wiki.openstack.org/wiki/Election_Officiating_Guidelines#Running_the_election_itself).
97+
Voting is done using the [Condorcet Internet Voting Service](https://civs1.civs.us/). This is the same system as is [being used by the OpenInfra foundation](https://wiki.openstack.org/wiki/Election_Officiating_Guidelines#Running_the_election_itself).
9898

9999
### Voting period
100100

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
title: Certification of integrators
3+
type: Procedural
4+
status: Draft
5+
track: Global
6+
description: |
7+
SCS-0007 defines the process and rules on how SCS integrators are certified.
8+
---
9+
10+
## Introduction
11+
12+
The purpose of this document is to describe a concept for how implementation partners can obtain certification as SCS integrators. In essence, this certificate is intended to express that an organization has sufficient technical knowledge and experience to provide technical support to companies using SCS.
13+
For this purpose, two essential criteria are defined that must be fulfilled. In addition, there are a few other criteria that can be taken into account in favor of certification.
14+
15+
## Motivation
16+
17+
## Regulations
18+
19+
The certificates are awarded for the period of one year.
20+
The certification is done either by the Forum SCS-Standards or an attestation body nominated by the forum.
21+
22+
### Certificates
23+
24+
- Certified SCS KaaS Integrator: SCS KaaS (Kubernetes as a Service) implementation partner
25+
- Certified SCS IaaS Integrator: SCS IaaS (Infrastructure as a Service) implementation partner
26+
27+
### Criteria
28+
29+
Criteria for certification, proof of experience in setting up, operating and supporting SCS-compliant environments:
30+
31+
The organization to be certified needs to satisfy one of the following requirements
32+
33+
a) have successfully brought at least two SCS-compliant environments of a third party (customer) into production in the last 12 months. The two environments must fulfill at least the [_Certified SCS-compatible IaaS_](https://docs.scs.community/standards/scs-compatible-iaas) or [_Certified SCS-compatible KaaS_](https://docs.scs.community/standards/scs-compatible-kaas) scope.
34+
35+
or
36+
37+
b) actively manage at least two such environments of third parties (customers) at the time the certificate is issued. These environments must have been managed at least for a year at the time of attestation.
38+
39+
or
40+
41+
c) have been operating a _Certified SCS-compatible IaaS_ public cloud with at least two regions or at least three availability zones for more than one year.
42+
43+
#### Additional favorable criteria for certification
44+
45+
SCS is an open source community project with the goal of enabling digital sovereignty. As such, the commitment and support of this mission should be recognized and promoted beyond technical competence. To this end, the following aspects can be taken into account for certification or compensate for any criteria that are not fully met (see above):
46+
47+
The implementation partners should work towards ensuring that digital sovereignty is implemented in accordance with the SCS definition (Standards, Open Software, OpenOperations). This is expressed in a way that, in addition to the technology used to build environments (not necessarily only SCS environments), knowledge and experience in SCS standards compliance (SCS-compatible IaaS and KaaS) is also available and that environments built by this organization have already been configured in accordance with the standards and are listed on the SCS compliance list.
48+
49+
The implementation partners should work towards ensuring that the cloud environments they set up and/or manage are also officially visible as SCS clouds, thereby strengthening the SCS brand.
50+
51+
### Attestation
52+
53+
The audit for the certification of an implementation partner is carried out by a person appointed by the Forum SCS-Standards. The person will assess and, if necessary, obtain evidence from the organization to be certified as to whether and to what extent the criteria have been met.
54+
55+
If one of the above criteria is not met, the forum can be requested to certify the candidate nevertheless. This must be decided by unanimous vote in the forum, two third of all eligible votes must be present. Abstentions are not counted as votes against.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
title: "Implementation hints for achieving Certified SCS Integrator"
3+
type: Supplement
4+
track: Global
5+
status: Draft
6+
supplements:
7+
- scs-0007-v1-certification-integrators.md
8+
---
9+
10+
## Introduction
11+
12+
The standard scs-0007 documents what requirements integration partners must fulfill to be eligible
13+
for being certified as SCS Integrators.
14+
This document contains hints how these requirements may be evaluated by the Forum SCS-Standards
15+
auditor and how exceptions will be handled.
16+
17+
### Voting on exceptions
18+
19+
When someone requests approval for a certified SCS integrator that does not meet all requirements,
20+
this can be waived with a qualified vote in the Forum SCS-Standards.
21+
To avoid conflict of interests and social pressure clouding this exception, we envision the
22+
following process:
23+
24+
- The beneficiary party (the integrator in whose favor the exception is requested) should be
25+
invited to a meeting to explain why they believe that they qualify as a certified SCS
26+
integrator despite not meeting the normal qualification criteria.
27+
- The forum members may ask the beneficiary clarifying questions that should be answered.
28+
- To ensure an open discussion, the beneficiary should be excluded from the discussions about
29+
the matter. The same applies if the beneficiary party is a member of the Forum
30+
SCS-Standards. In that case, the expulsion should not be counted against the required quorum
31+
to avoid forum members from having a disadvantage. If the excluded party is a voting member,
32+
they will automatically abstain from the vote.
33+
- Any parties that have significant conflicts of interests are expected to make these
34+
conflicts transparent and cast abstention votes.
35+
36+
By the time of re-certification, all exceptions from a previous certification should have been
37+
eliminated.

Standards/scs-0122-v1-node-to-node-encryption.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: _End-to-End Encryption between Customer Workloads_
2+
title: End-to-End Encryption between Customer Workloads
33
type: Decision Record
44
status: Draft
55
track: IaaS

Tests/iaas/volume-types/volume-types-check.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ def main(argv):
142142
f"{c[logging.CRITICAL]} / {c[logging.ERROR]} / {c[logging.WARNING]}"
143143
)
144144
if not c[logging.CRITICAL]:
145-
print("volume-types-check: " + ('PASS', 'FAIL')[min(1, c[logging.ERROR])])
145+
print("volume-types-check: " + ('PASS', 'FAIL')[min(1, c[logging.ERROR] + c[logging.WARNING])])
146146
return min(127, c[logging.CRITICAL] + c[logging.ERROR]) # cap at 127 due to OS restrictions
147147

148148

Tests/kaas/kaas-sonobuoy-tests/go.mod

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module kaas/kaas-sonobuoy-tests
22

3-
go 1.21
3+
go 1.23.0
44

55
require (
66
github.com/sirupsen/logrus v1.7.0
@@ -31,11 +31,11 @@ require (
3131
github.com/spf13/pflag v1.0.5 // indirect
3232
github.com/vladimirvivien/gexe v0.1.1 // indirect
3333
github.com/vmware-tanzu/sonobuoy v1.11.5-prerelease.1.0.20211004145628-b633b4fefcdc // indirect
34-
golang.org/x/net v0.33.0 // indirect
34+
golang.org/x/net v0.38.0 // indirect
3535
golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d // indirect
36-
golang.org/x/sys v0.28.0 // indirect
37-
golang.org/x/term v0.27.0 // indirect
38-
golang.org/x/text v0.21.0 // indirect
36+
golang.org/x/sys v0.31.0 // indirect
37+
golang.org/x/term v0.30.0 // indirect
38+
golang.org/x/text v0.23.0 // indirect
3939
golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba // indirect
4040
google.golang.org/appengine v1.6.7 // indirect
4141
google.golang.org/protobuf v1.33.0 // indirect

Tests/kaas/kaas-sonobuoy-tests/go.sum

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -506,8 +506,8 @@ golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81R
506506
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
507507
golang.org/x/net v0.0.0-20210224082022-3d97a244fca7/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
508508
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
509-
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
510-
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
509+
golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8=
510+
golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
511511
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
512512
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
513513
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -570,23 +570,23 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w
570570
golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
571571
golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
572572
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
573-
golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA=
574-
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
573+
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
574+
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
575575
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
576576
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
577577
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
578578
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
579-
golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q=
580-
golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM=
579+
golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y=
580+
golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g=
581581
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
582582
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
583583
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
584584
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
585585
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
586586
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
587587
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
588-
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
589-
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
588+
golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
589+
golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
590590
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
591591
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
592592
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=

Tests/scs-compatible-iaas.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ modules:
125125
args: -c {os_cloud} -d
126126
testcases:
127127
- id: volume-types-check
128-
tags: [mandatory]
128+
tags: [volume-types-check]
129129
description: >
130130
Must fulfill all requirements of <https://docs.scs.community/standards/scs-0114-v1-volume-type-standard>
131131
- id: scs-0115-v1

compliance-monitor/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.env

0 commit comments

Comments
 (0)