From 7e957976285fedd6696ff6a100ea0cfd194d9b88 Mon Sep 17 00:00:00 2001 From: Atif Ali Date: Fri, 10 Apr 2026 11:57:24 +0000 Subject: [PATCH 1/2] fix: add universal image to build and push list The universal image was added in #307 but never included in the IMAGES array in scripts/images.sh, so it was never built or pushed to Docker Hub. --- scripts/images.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/images.sh b/scripts/images.sh index 85aa067..4418d51 100644 --- a/scripts/images.sh +++ b/scripts/images.sh @@ -10,4 +10,5 @@ IMAGES=( "java" "node" "desktop" + "universal" ) From c86d5c9e84715f4fe4d313ff298f18b963545861 Mon Sep 17 00:00:00 2001 From: Atif Ali Date: Fri, 10 Apr 2026 12:01:51 +0000 Subject: [PATCH 2/2] fix: support per-image platform override, restrict universal to amd64 The devcontainers/universal base image is amd64-only. Add support for a .platforms file per image directory to override the default multi-arch platform list. --- images/universal/.platforms | 1 + scripts/build_images.sh | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 images/universal/.platforms diff --git a/images/universal/.platforms b/images/universal/.platforms new file mode 100644 index 0000000..303dc7a --- /dev/null +++ b/images/universal/.platforms @@ -0,0 +1 @@ +linux/amd64 diff --git a/scripts/build_images.sh b/scripts/build_images.sh index 68812c6..cb87145 100755 --- a/scripts/build_images.sh +++ b/scripts/build_images.sh @@ -88,6 +88,8 @@ if [ $QUIET = true ]; then ) fi +DEFAULT_PLATFORM="linux/amd64,linux/arm64" + for image in "${IMAGES[@]}"; do image_dir="$PROJECT_ROOT/images/$image" image_file="${TAG}.Dockerfile" @@ -102,7 +104,13 @@ for image in "${IMAGES[@]}"; do continue fi - run_trace $DRY_RUN depot build --project "gb3p8xrshk" --load --platform linux/amd64,linux/arm64 --save --metadata-file="build_${image}.json" \ + # Allow per-image platform override via a .platforms file. + platform="$DEFAULT_PLATFORM" + if [ -f "$image_dir/.platforms" ]; then + platform=$(cat "$image_dir/.platforms") + fi + + run_trace $DRY_RUN depot build --project "gb3p8xrshk" --load --platform "$platform" --save --metadata-file="build_${image}.json" \ "${docker_flags[@]}" \ "$image_dir" \ --file="$image_path" \