From 575ddeb3f48e0a4d684665f7ec61d174e8c6c7d6 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 0787ea54f4044239bfe6ec9147a8fc85ab093bc8 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 8839646aee2b1a1a905287b54a09dc52047cf057 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 5ffd4e576c0fd1ccdd7d8285ca851d6c90d585c7 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 3b2d80a03a80ee96c036eaca689e50dfc2feca2f 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 51ad880b27f9c75fbdc005ae6e28654f6cb17f1d 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 20662fcb9acbd5d0bae4c4365eaa8b49199a7c3f 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) |