From 315332851ff4e498a13ce7d688798b46e309a48f Mon Sep 17 00:00:00 2001 From: Jakub Panek Date: Thu, 15 Aug 2024 01:06:55 +0200 Subject: [PATCH] build: add a docker lint check before building a package --- src/macros.mk | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/macros.mk b/src/macros.mk index a9989a8..8327148 100644 --- a/src/macros.mk +++ b/src/macros.mk @@ -20,7 +20,7 @@ # - actually output OCI files for each build (vs plain tar) # - output manifest.txt of all tar/digest hashes for an easy git diff # - support buildah and podman -define build +define build-pkg $(eval NAME := $(1)) $(eval VERSION := $(if $(2),$(2),latest)) $(eval TARGET := $(if $(3),$(3),package)) @@ -56,3 +56,29 @@ define build && $(BUILD_CMD) \ && echo $(TIMESTAMP) $(BUILD_CMD) end >> out/build.log; endef + +define check-pkg + $(eval NAME := $(1)) + $(eval BUILD_CMD := \ + DOCKER_BUILDKIT=1 \ + BUILDKIT_MULTI_PLATFORM=1 \ + SOURCE_DATE_EPOCH=1 \ + $(BUILDER) \ + build \ + --check \ + --progress=plain \ + -f packages/$(NAME)/Containerfile \ + packages/$(NAME) \ + ) + $(BUILD_CMD) +endef + +define build + $(eval NAME := $(1)) + $(eval VERSION := $(if $(2),$(2),)) + $(eval TARGET := $(if $(3),$(3),)) + $(eval EXTRA_ARGS := $(if $(4),$(4),)) + + $(call check-pkg,$(NAME)) + $(call build-pkg,$(NAME),$(VERSION),$(TARGET),$(EXTRA_ARGS)) +endef