diff --git a/Makefile b/Makefile index 54f20b9..84c99c6 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,4 @@ -IMAGE_REPO=ghcr.io/trstringer/manual-approval -TARGET_PLATFORM=linux/amd64 +IMAGE_REPO=ghcr.io/radicldefense/rad-manual-approval .PHONY: tidy tidy: @@ -11,7 +10,28 @@ build: echo "VERSION is required"; \ exit 1; \ fi - docker build --platform $(TARGET_PLATFORM) -t $(IMAGE_REPO):$$VERSION . + @echo "Building AMD64 image..." + docker build --platform linux/amd64 -t $(IMAGE_REPO):$(VERSION)-amd64 . + @echo "Building ARM64 image..." + docker build --platform linux/arm64 -t $(IMAGE_REPO):$(VERSION)-arm64 . + @echo "Pushing AMD64 image..." + docker push $(IMAGE_REPO):$(VERSION)-amd64 + @echo "Pushing ARM64 image..." + docker push $(IMAGE_REPO):$(VERSION)-arm64 + @echo "Creating multi-arch manifest..." + docker manifest create $(IMAGE_REPO):$(VERSION) \ + --amend $(IMAGE_REPO):$(VERSION)-amd64 \ + --amend $(IMAGE_REPO):$(VERSION)-arm64 + @echo "Pushing multi-arch manifest..." + docker manifest push $(IMAGE_REPO):$(VERSION) + +.PHONY: build-local +build-local: + @if [ -z "$(VERSION)" ]; then \ + echo "VERSION is required"; \ + exit 1; \ + fi + docker build --platform linux/amd64 -t $(IMAGE_REPO):$(VERSION) . .PHONY: push push: @@ -19,7 +39,7 @@ push: echo "VERSION is required"; \ exit 1; \ fi - docker push $(IMAGE_REPO):$(VERSION) + @echo "Images are already pushed during build step" .PHONY: test test: