diff --git a/.github/workflows/push_image_pr.yml b/.github/workflows/push_image_pr.yml index d3aaa8c3a..5276fe21f 100644 --- a/.github/workflows/push_image_pr.yml +++ b/.github/workflows/push_image_pr.yml @@ -8,7 +8,6 @@ env: REGISTRY: quay.io/netobserv IMAGE: network-observability-console-plugin ORG: netobserv - VERSION: temp jobs: push-pr-image: @@ -40,7 +39,7 @@ jobs: - name: build and push images run: IMAGE_ORG=${{ env.ORG }} IMAGE=${{ env.REGISTRY }}/${{ env.IMAGE }}:${{ env.short_sha }} make images - name: build and push manifest - run: IMAGE_ORG=${{ env.ORG }} VERSION=${{ env.VERSION }} make ci-manifest + run: IMAGE_ORG=${{ env.ORG }} IMAGE=${{ env.REGISTRY }}/${{ env.IMAGE }}:${{ env.short_sha }} make ci-manifest - uses: actions/github-script@v6 with: github-token: ${{secrets.GITHUB_TOKEN}} diff --git a/Makefile b/Makefile index bb9ba6fa2..ed531b8ae 100644 --- a/Makefile +++ b/Makefile @@ -35,7 +35,7 @@ IMAGE_SHA = $(IMAGE_TAG_BASE):$(BUILD_SHA) # Image building tool (docker / podman) OCI_BIN_PATH = $(shell which podman || which docker) -OCI_BIN ?= $(shell v='$(OCI_BIN_PATH)'; echo "$${v##*/}") +OCI_BIN ?= $(shell basename ${OCI_BIN_PATH}) GOLANGCI_LINT_VERSION = v1.50.1 NPM_INSTALL ?= install @@ -57,6 +57,12 @@ define push_target DOCKER_BUILDKIT=1 $(OCI_BIN) push ${IMAGE}-$(1); endef +# manifest create a single arch target provided as argument +define manifest_create_target + echo 'manifest create for arch $(1)'; \ + DOCKER_BUILDKIT=1 $(OCI_BIN) manifest add ${IMAGE} ${IMAGE}-$(target); +endef + ##@ General # The help target prints out all targets with their descriptions organized @@ -198,8 +204,9 @@ image-push: ## Push MULTIARCH_TARGETS images .PHONY: manifest-build manifest-build: ## Build MULTIARCH_TARGETS manifest - @echo 'building manifest $(IMAGE)' - DOCKER_BUILDKIT=1 $(OCI_BIN) manifest create ${IMAGE} $(foreach target,$(MULTIARCH_TARGETS),--amend ${IMAGE}-$(target)); + trap 'exit' INT; \ + DOCKER_BUILDKIT=1 $(OCI_BIN) manifest create ${IMAGE} + $(foreach target,$(MULTIARCH_TARGETS),$(call manifest_create_target,$(target))) .PHONY: manifest-push manifest-push: ## Push MULTIARCH_TARGETS manifest