34 lines
1.3 KiB
Makefile
34 lines
1.3 KiB
Makefile
.PHONY: build-production
|
|
build-production: ## Build the production container image. Usage: make build-production TAG=15.4.0
|
|
@echo "Cloning repository..."
|
|
@rm -rf .tmp-brewman
|
|
@git clone --depth 1 $(if $(TAG),--branch v$(TAG)) git@git.tanshu.com:tanshu/brewman.git .tmp-brewman
|
|
|
|
@echo "Building image..."
|
|
@podman manifest rm registry.tanshu.com/brewman:latest 2>/dev/null || true
|
|
@podman build \
|
|
--platform linux/amd64,linux/arm64 \
|
|
--manifest registry.tanshu.com/brewman:latest \
|
|
--pull \
|
|
.tmp-brewman || (rm -rf .tmp-brewman && exit 1)
|
|
@rm -rf .tmp-brewman
|
|
|
|
@echo "Pushing manifests..."
|
|
@podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:latest
|
|
$(if $(TAG),@podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:$(TAG))
|
|
|
|
.PHONY: build-check
|
|
build-check: ## Multi-arch build without push (compile check). Usage: make build-check TAG=15.4.0
|
|
@echo "Cloning repository..."
|
|
@rm -rf .tmp-brewman
|
|
@git clone --depth 1 $(if $(TAG),--branch v$(TAG)) git@git.tanshu.com:tanshu/brewman.git .tmp-brewman
|
|
|
|
@echo "Building image..."
|
|
@podman manifest rm brewman:test 2>/dev/null || true
|
|
@podman build \
|
|
--platform linux/amd64,linux/arm64 \
|
|
--manifest brewman:test \
|
|
--pull \
|
|
.tmp-brewman || (rm -rf .tmp-brewman && exit 1)
|
|
@rm -rf .tmp-brewman
|