build: add a docker lint check before building a package

This commit is contained in:
Jakub Panek 2024-08-15 01:06:55 +02:00
parent 6428ed19a9
commit 315332851f
No known key found for this signature in database
GPG key ID: D5E8A1F82F3BDA9D

View file

@ -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