File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -247,6 +247,7 @@ common-docker-repo-name:
247247
248248.PHONY: common-docker $(BUILD_DOCKER_ARCHS)
249249common-docker: $(BUILD_DOCKER_ARCHS)
250+ # DOCKER_ARCHS holds promu architecture names, which are not OCI platform strings.
250251$(BUILD_DOCKER_ARCHS): common-docker-%:
251252 @for variant in $(DOCKERFILE_VARIANTS_WITH_NAMES); do \
252253 dockerfile=$${variant#*:}; \
@@ -255,10 +256,16 @@ $(BUILD_DOCKER_ARCHS): common-docker-%:
255256 if [ "$*" = "armv7" ]; then \
256257 distroless_arch="arm"; \
257258 fi; \
259+ arch="$*"; \
260+ case "$$arch" in \
261+ armv*) docker_platform="linux/arm/v$${arch#armv}";; \
262+ *) docker_platform="linux/$$arch";; \
263+ esac; \
258264 if [ "$$dockerfile" = "Dockerfile" ]; then \
259265 echo "Building default variant ($$variant_name) for linux-$* using $$dockerfile"; \
260266 docker build -t "$(DOCKER_REPO)/$(DOCKER_IMAGE_NAME)-linux-$*:$(SANITIZED_DOCKER_IMAGE_TAG)" \
261267 -f $$dockerfile \
268+ --platform "$$docker_platform" \
262269 --build-arg ARCH="$*" \
263270 --build-arg OS="linux" \
264271 --build-arg DISTROLESS_ARCH="$$distroless_arch" \
@@ -272,6 +279,7 @@ $(BUILD_DOCKER_ARCHS): common-docker-%:
272279 echo "Building $$variant_name variant for linux-$* using $$dockerfile"; \
273280 docker build -t "$(DOCKER_REPO)/$(DOCKER_IMAGE_NAME)-linux-$*:$(SANITIZED_DOCKER_IMAGE_TAG)-$$variant_name" \
274281 -f $$dockerfile \
282+ --platform "$$docker_platform" \
275283 --build-arg ARCH="$*" \
276284 --build-arg OS="linux" \
277285 --build-arg DISTROLESS_ARCH="$$distroless_arch" \
You can’t perform that action at this time.
0 commit comments