From 7ebf820628eea8b2bd28eb846064ab9f72de3823 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20B=C3=BCchse?= Date: Tue, 16 Sep 2025 14:08:14 +0200 Subject: [PATCH 1/7] Add Standards/scs-0104-v2-standard-images.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matthias Büchse --- Standards/scs-0104-v2-standard-images.md | 71 ++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 Standards/scs-0104-v2-standard-images.md diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md new file mode 100644 index 000000000..79dad001f --- /dev/null +++ b/Standards/scs-0104-v2-standard-images.md @@ -0,0 +1,71 @@ +--- +title: SCS Standard Images +type: Standard +status: Draft +track: IaaS +description: | + The SCS-0104 standard establishes guidelines for virtual machine images in Sovereign Cloud Stack (SCS) + environments, specifying mandatory as well as recommended images, ensuring interoperability and streamlined + deployments. It mandates that image upload via Glance must be allowed, ensuring flexibility for users. +--- + +## Introduction + +The [Sovereign Cloud Stack (SCS)](https://scs.community) provides standards for a range of cloud infrastructure types. +It strives for interoperable and sovereign cloud offerings which can be deployed and used by a wide range of organizations and individuals. + +To this end, SCS unifies the naming and sourcing of virtual machine images, and for certain images their presence is mandated or recommended. + +## Uploading custom images + +Image upload via Glance MUST be allowed based on a fair-use policy. + +## Mandatory image sources + +### Generic OS images + +For an OS image with `os_purpose=generic`, the `image_source` SHOULD come from the original vendor. +Specifically, the following forms are even REQUIRED: + +| os_distro | os_version | permissible `image_source` form(s) | +| --- | --- | ----| +| debian | [N]N | `https://cloud.debian.org/images/cloud/{codename}/...` | +| | | `https://cdimage.debian.org/cdimage/cloud/{codename}/...` | +| ubuntu | NN.NN | `https://cloud-images.ubuntu.com/releases/{codename}/...` | +| | | `https://cloud-images.ubuntu.com/{codename}/...` | + +### Official SCS CAPI images + +For each image whose name matches the regular expression + + ubuntu-capi-image( |-)v[0-9]\.[0-9]+(\.[0-9]+)? + +the `image_source` MUST have the form + + https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/... + +## Mandatory and recommended images + +The tables in this section show what images are required or recomended. + +Note that this standard does not prohibit any images, and neither +does it preclude the operator from providing any and all optional images, +so long as they do not violate above regulations on image sources. + +### Generic OS images + +| status | os_distro | os_version | os_purpose | +| --- | --- | --- | --- | +| required | `ubuntu` | latest LTS, no later than April 30 | `generic` | +| recommended | `ubuntu` | previous LTS | `generic` | +| recommended | `debian` | latest stable, no later than one month after release | `generic` | +| recommended | `debian` | previous stable | `generic` | + +Note: when a new LTS/stable version is released and the respective image added to the environment, +the images of any previous versions may or may not be kept. + +### Official SCS CAPI images + +| status | name scheme | +| --- | --- | +| recommended | `ubuntu-capi-image-v[0-9]\.[0-9]+(\.[0-9]+)?` | From 7b18c09e52a4f88ee77ad75c236092e43c48dc78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20B=C3=BCchse?= Date: Mon, 1 Dec 2025 21:12:05 +0100 Subject: [PATCH 2/7] Clarify or remove tables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matthias Büchse --- Standards/scs-0104-v2-standard-images.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index 79dad001f..f135cd0d9 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -40,7 +40,7 @@ For each image whose name matches the regular expression ubuntu-capi-image( |-)v[0-9]\.[0-9]+(\.[0-9]+)? -the `image_source` MUST have the form +the value of the property `image_source` MUST have the form https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/... @@ -54,6 +54,9 @@ so long as they do not violate above regulations on image sources. ### Generic OS images +Each row of the following table describes an image that MUST or SHOULD exist, +depending on the value in the column 'status'. + | status | os_distro | os_version | os_purpose | | --- | --- | --- | --- | | required | `ubuntu` | latest LTS, no later than April 30 | `generic` | @@ -61,11 +64,19 @@ so long as they do not violate above regulations on image sources. | recommended | `debian` | latest stable, no later than one month after release | `generic` | | recommended | `debian` | previous stable | `generic` | +A generic OS image MAY be named in the form "distro version", +without codename or build date; for instance, + +- `Ubuntu 24.04`, +- `Debian 13`. + Note: when a new LTS/stable version is released and the respective image added to the environment, the images of any previous versions may or may not be kept. ### Official SCS CAPI images -| status | name scheme | -| --- | --- | -| recommended | `ubuntu-capi-image-v[0-9]\.[0-9]+(\.[0-9]+)?` | +An image whose name matches the regular expression + + ubuntu-capi-image-v[0-9]\.[0-9]+(\.[0-9]+)? + +SHOULD be present. From 6566de52e0e0a52a900ae37a52f554b227f98cd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20B=C3=BCchse?= Date: Mon, 1 Dec 2025 21:14:16 +0100 Subject: [PATCH 3/7] Remove trailing space MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matthias Büchse --- Standards/scs-0104-v2-standard-images.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index f135cd0d9..b07f707cc 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -68,7 +68,7 @@ A generic OS image MAY be named in the form "distro version", without codename or build date; for instance, - `Ubuntu 24.04`, -- `Debian 13`. +- `Debian 13`. Note: when a new LTS/stable version is released and the respective image added to the environment, the images of any previous versions may or may not be kept. From eea7348e91305727d65c8c388b50a4d6a7109af4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20B=C3=BCchse?= Date: Tue, 2 Dec 2025 17:24:49 +0100 Subject: [PATCH 4/7] Extend properties for standard CAPI image MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Kurt Garloff Signed-off-by: Matthias Büchse --- Standards/scs-0104-v2-standard-images.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index b07f707cc..9a9e38c61 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -27,7 +27,7 @@ Image upload via Glance MUST be allowed based on a fair-use policy. For an OS image with `os_purpose=generic`, the `image_source` SHOULD come from the original vendor. Specifically, the following forms are even REQUIRED: -| os_distro | os_version | permissible `image_source` form(s) | +| `os_distro` | `os_version` | permissible `image_source` form(s) | | --- | --- | ----| | debian | [N]N | `https://cloud.debian.org/images/cloud/{codename}/...` | | | | `https://cdimage.debian.org/cdimage/cloud/{codename}/...` | @@ -40,9 +40,16 @@ For each image whose name matches the regular expression ubuntu-capi-image( |-)v[0-9]\.[0-9]+(\.[0-9]+)? -the value of the property `image_source` MUST have the form +the following property values MUST be set: - https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/... +| property | value (pattern) | +| --- | --- | +| `image_source` | `https://nbg1.your-objectstorage.com/osism/openstack-k8s-capi-images/...` | +| | (tolerable for compatibility): `https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/...` | +| `os_purpose` | `k8snode` | +| `image_description` | `https://github.com/osism/k8s-capi-images` | + +CSPs are free to register CAPI images with a different naming scheme from different source. ## Mandatory and recommended images From 0c2edbe2ade4dbf3223ba9a4a7f30dd2b2170c47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20B=C3=BCchse?= Date: Wed, 3 Dec 2025 21:09:32 +0100 Subject: [PATCH 5/7] Add replaces field to front matter MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matthias Büchse --- Standards/scs-0104-v2-standard-images.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index 9a9e38c61..2f6ef5d8b 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -7,6 +7,7 @@ description: | The SCS-0104 standard establishes guidelines for virtual machine images in Sovereign Cloud Stack (SCS) environments, specifying mandatory as well as recommended images, ensuring interoperability and streamlined deployments. It mandates that image upload via Glance must be allowed, ensuring flexibility for users. +replaces: scs-0104-v1-standard-images.md --- ## Introduction From cda79dd1b249d79a4ee78f5fedfb18569859ca33 Mon Sep 17 00:00:00 2001 From: Marvin Frommhold Date: Thu, 4 Dec 2025 10:16:10 +0100 Subject: [PATCH 6/7] update website Signed-off-by: Marvin Frommhold --- Standards/scs-0104-v2-standard-images.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index 2f6ef5d8b..75a50a3db 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -12,7 +12,7 @@ replaces: scs-0104-v1-standard-images.md ## Introduction -The [Sovereign Cloud Stack (SCS)](https://scs.community) provides standards for a range of cloud infrastructure types. +The [Sovereign Cloud Stack (SCS)](https://sovereigncloudstack.org/) provides standards for a range of cloud infrastructure types. It strives for interoperable and sovereign cloud offerings which can be deployed and used by a wide range of organizations and individuals. To this end, SCS unifies the naming and sourcing of virtual machine images, and for certain images their presence is mandated or recommended. From 6e2116befcaa43a83b60d24843e532f7ed56b576 Mon Sep 17 00:00:00 2001 From: Kurt Garloff Date: Wed, 24 Dec 2025 08:41:57 +0100 Subject: [PATCH 7/7] Update Standards/scs-0104-v2-standard-images.md Signed-off-by: Kurt Garloff --- Standards/scs-0104-v2-standard-images.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Standards/scs-0104-v2-standard-images.md b/Standards/scs-0104-v2-standard-images.md index 75a50a3db..f9a315c6b 100644 --- a/Standards/scs-0104-v2-standard-images.md +++ b/Standards/scs-0104-v2-standard-images.md @@ -25,7 +25,7 @@ Image upload via Glance MUST be allowed based on a fair-use policy. ### Generic OS images -For an OS image with `os_purpose=generic`, the `image_source` SHOULD come from the original vendor. +For an OS image with `os_purpose=generic`, the `image_source` SHOULD come from the original vendor. This allows the user to download and inspect the image. Specifically, the following forms are even REQUIRED: | `os_distro` | `os_version` | permissible `image_source` form(s) |