[PATCH 1/1] kas-container: do not construct image name if provided explicitly

4 views
Skip to first unread message

Felix Moessbauer

unread,
Mar 16, 2026, 12:24:10 PM (9 days ago) Mar 16
to kas-...@googlegroups.com, jan.k...@siemens.com, Felix Moessbauer
When providing the KAS_CONTAINER_IMAGE explicitly, do not append any
modifiers (like the distribution / tag / ...) but just take the string
as-is. This is also aligns the semantics with the documentation.

The impact of this change is quite minimal, as the same behavior can
also be achived by unsetting all KAS_CONTAINER_* variables before
calling kas-container. However, we already see a downstream pattern
where the KAS_CONTAINER_IMAGE_DISTRO is set directly in a copy of the
kas-container script to pin it to a distribution usable for the
downstream project. In this case it previously was impossible to
explicitly set a KAS_CONTAINER_IMAGE as the distro was always appended.

Fixes: b99dd31b8 ("kas-container: allow to select specific image ...")
Signed-off-by: Felix Moessbauer <felix.mo...@siemens.com>
---
kas-container | 3 +++
1 file changed, 3 insertions(+)

diff --git a/kas-container b/kas-container
index 2241c3136..1e7834353 100755
--- a/kas-container
+++ b/kas-container
@@ -294,6 +294,9 @@ trap kas_container_cleanup EXIT INT TERM

set_container_image_var()
{
+ # if the image is explicitly set, use that
+ [ -n "${KAS_CONTAINER_IMAGE}" ] && return
+
KAS_IMAGE_VERSION="${KAS_IMAGE_VERSION:-${KAS_IMAGE_VERSION_DEFAULT}}"
KAS_CONTAINER_IMAGE_DISTRO="${KAS_CONTAINER_IMAGE_DISTRO:-${KAS_CONTAINER_IMAGE_DISTRO_DEFAULT}}"
KAS_CONTAINER_IMAGE_NAME="${KAS_CONTAINER_IMAGE_NAME:-${KAS_CONTAINER_IMAGE_NAME_DEFAULT}}"
--
2.53.0

Jan Kiszka

unread,
Mar 16, 2026, 12:37:48 PM (9 days ago) Mar 16
to Felix Moessbauer, kas-...@googlegroups.com
Proper "if" statement, maybe wrapping the following code. And please
clean up the whole function then: KAS_CONTAINER_IMAGE_DEFAULT is
obsolete now.

Jan

> KAS_IMAGE_VERSION="${KAS_IMAGE_VERSION:-${KAS_IMAGE_VERSION_DEFAULT}}"
> KAS_CONTAINER_IMAGE_DISTRO="${KAS_CONTAINER_IMAGE_DISTRO:-${KAS_CONTAINER_IMAGE_DISTRO_DEFAULT}}"
> KAS_CONTAINER_IMAGE_NAME="${KAS_CONTAINER_IMAGE_NAME:-${KAS_CONTAINER_IMAGE_NAME_DEFAULT}}"

--
Siemens AG, Foundational Technologies
Linux Expert Center

MOESSBAUER, Felix

unread,
Mar 16, 2026, 12:46:19 PM (9 days ago) Mar 16
to Kiszka, Jan, kas-...@googlegroups.com
Ok, I wanted to keep the change small but avoiding the early return is
also fine.

> And please
> clean up the whole function then: KAS_CONTAINER_IMAGE_DEFAULT is
> obsolete now.

Ah right... Will send a v2.

Felix

>
> Jan
>
> > KAS_IMAGE_VERSION="${KAS_IMAGE_VERSION:-${KAS_IMAGE_VERSION_DEFAULT}}"
> > KAS_CONTAINER_IMAGE_DISTRO="${KAS_CONTAINER_IMAGE_DISTRO:-${KAS_CONTAINER_IMAGE_DISTRO_DEFAULT}}"
> > KAS_CONTAINER_IMAGE_NAME="${KAS_CONTAINER_IMAGE_NAME:-${KAS_CONTAINER_IMAGE_NAME_DEFAULT}}"
>
> --
> Siemens AG, Foundational Technologies
> Linux Expert Center

--
Siemens AG
Linux Expert Center
Friedrich-Ludwig-Bauer-Str. 3
85748 Garching, Germany

Felix Moessbauer

unread,
Mar 16, 2026, 12:57:38 PM (9 days ago) Mar 16
to kas-...@googlegroups.com, jan.k...@siemens.com, Felix Moessbauer
When providing the KAS_CONTAINER_IMAGE explicitly, do not append any
modifiers (like the distribution / tag / ...) but just take the string
as-is. This is also aligns the semantics with the documentation.

The impact of this change is quite minimal, as the same behavior can
also be achived by unsetting all KAS_CONTAINER_* variables before
calling kas-container. However, we already see a downstream pattern
where the KAS_CONTAINER_IMAGE_DISTRO is set directly in a copy of the
kas-container script to pin it to a distribution usable for the
downstream project. In this case it previously was impossible to
explicitly set a KAS_CONTAINER_IMAGE as the distro was always appended.

Fixes: b99dd31b8 ("kas-container: allow to select specific image ...")
Signed-off-by: Felix Moessbauer <felix.mo...@siemens.com>
---
Changes since v1:

- use proper if / else
- drop obsolete KAS_CONTAINER_IMAGE_DEFAULT

Felix

kas-container | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/kas-container b/kas-container
index 2241c3136..f44595a3c 100755
--- a/kas-container
+++ b/kas-container
@@ -294,12 +294,15 @@ trap kas_container_cleanup EXIT INT TERM

set_container_image_var()
{
+ # if the image is explicitly set, use that
+ if [ -n "${KAS_CONTAINER_IMAGE}" ]; then
+ return
+ fi
KAS_IMAGE_VERSION="${KAS_IMAGE_VERSION:-${KAS_IMAGE_VERSION_DEFAULT}}"
KAS_CONTAINER_IMAGE_DISTRO="${KAS_CONTAINER_IMAGE_DISTRO:-${KAS_CONTAINER_IMAGE_DISTRO_DEFAULT}}"
KAS_CONTAINER_IMAGE_NAME="${KAS_CONTAINER_IMAGE_NAME:-${KAS_CONTAINER_IMAGE_NAME_DEFAULT}}"
KAS_CONTAINER_IMAGE_PATH="${KAS_CONTAINER_IMAGE_PATH:-${KAS_CONTAINER_IMAGE_PATH_DEFAULT}}"
- KAS_CONTAINER_IMAGE_DEFAULT="${KAS_CONTAINER_IMAGE_PATH}/${KAS_CONTAINER_IMAGE_NAME}:${KAS_IMAGE_VERSION}"
- KAS_CONTAINER_IMAGE="${KAS_CONTAINER_IMAGE:-${KAS_CONTAINER_IMAGE_DEFAULT}}"
+ KAS_CONTAINER_IMAGE="${KAS_CONTAINER_IMAGE_PATH}/${KAS_CONTAINER_IMAGE_NAME}:${KAS_IMAGE_VERSION}"
if [ -n "${KAS_CONTAINER_IMAGE_DISTRO}" ]; then
KAS_CONTAINER_IMAGE="${KAS_CONTAINER_IMAGE}-${KAS_CONTAINER_IMAGE_DISTRO}"
fi
--
2.53.0

Jan Kiszka

unread,
Mar 17, 2026, 2:04:40 AM (9 days ago) Mar 17
to Felix Moessbauer, kas-...@googlegroups.com
Thanks, applied.

Jan
Reply all
Reply to author
Forward
0 new messages