diff --git a/Makefile.common b/Makefile.common index aa590ab3..1c6c2c7f 100644 --- a/Makefile.common +++ b/Makefile.common @@ -840,6 +840,12 @@ push-image-arch-to-registry-%: $(NOECHO) $(NOOP)\ ) +# push multi-arch manifest where supported. +push-manifests: var-require-all-IMAGETAG $(addprefix sub-manifest-,$(call escapefs,$(PUSH_MANIFEST_IMAGES))) +sub-manifest-%: + $(DOCKER) manifest create $(call unescapefs,$*):$(IMAGETAG) $(addprefix --amend ,$(addprefix $(call unescapefs,$*):$(IMAGETAG)-,$(VALIDARCHES))) + $(DOCKER) manifest push $(call unescapefs,$*):$(IMAGETAG) + # cd-common tags and pushes images with the branch name and git version. This target uses PUSH_IMAGES, BUILD_IMAGE, # and BRANCH_NAME env variables to figure out what to tag and where to push it to. cd-common: var-require-one-of-CONFIRM-DRYRUN var-require-all-BRANCH_NAME