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" \ 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" )