Files
webhook-freedns/image.Makefile
T
penguin ab1d9c2ad2 2026.05.21.01
Merge remote-tracking branch 'certman/master'
2026-05-22 01:10:40 +08:00

52 lines
1.2 KiB
Makefile

include build.env
-include build.env.work
export
IMAGE_NAME ?= webhook
IMAGE_TAG ?= dev
BUILDX_BUILDER ?= container-builder
BUILDINFO_FILE := freedns/buildinfo_gen.go
ensure-buildx:
@if ! docker buildx inspect $(BUILDX_BUILDER) >/dev/null 2>&1; then \
echo "Creating buildx builder $(BUILDX_BUILDER)..."; \
docker buildx create \
--name $(BUILDX_BUILDER) \
--driver docker-container \
--driver-opt network=host \
--bootstrap --use; \
else \
echo "Using existing buildx builder $(BUILDX_BUILDER)"; \
docker buildx use $(BUILDX_BUILDER); \
fi
.buildinfo:
@mkdir -p $(dir $(BUILDINFO_FILE))
@printf '%s\n' \
'package freedns' \
'' \
'const (' \
' IMAGE_TAG = "$(IMAGE_TAG)"' \
' Timestamp = "'$$(TZ=UTC date +%Y%m%d.%H%M%S)'"' \
')' \
> $(BUILDINFO_FILE)
build: .buildinfo ensure-buildx
docker buildx build \
--platform linux/amd64,linux/arm64 \
-f Dockerfile \
-t $(IMAGE_NAME):$(IMAGE_TAG) .
push: .buildinfo ensure-buildx
docker buildx build \
--platform linux/amd64,linux/arm64 \
-f Dockerfile \
-t $(IMAGE_NAME):$(IMAGE_TAG) \
--push .
inspect:
docker buildx imagetools inspect $(IMAGE_NAME):$(IMAGE_TAG)
.PHONY: push build .buildinfo