From b8f3379ae9d64126d573be097f1e4d70c4ec4fe2 Mon Sep 17 00:00:00 2001 From: Tonis Tiigi Date: Tue, 13 Aug 2024 11:11:18 +0300 Subject: [PATCH] ci: enable validating all Dockerfiles Signed-off-by: Tonis Tiigi --- Dockerfile | 2 +- docker-bake.hcl | 24 +++++++++++++++++++++++- hack/dockerfiles/vendor.Dockerfile | 4 +++- 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 0f49e915ca6d..20ba7053ee9d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -348,7 +348,7 @@ exec dlv exec /usr/bin/buildkitd \\ --continue \\ -- "\$@" EOF -ENV DELVE_PORT 5000 +ENV DELVE_PORT=5000 ENTRYPOINT ["/docker-entrypoint.sh"] FROM binaries AS buildkit-darwin diff --git a/docker-bake.hcl b/docker-bake.hcl index adb689b83a37..05e7a830e79d 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -126,7 +126,7 @@ target "integration-tests" { } group "validate" { - targets = ["lint", "validate-vendor", "validate-doctoc", "validate-generated-files", "validate-archutil", "validate-shfmt", "validate-docs", "validate-docs-dockerfile"] + targets = ["lint", "validate-vendor", "validate-doctoc", "validate-dockerfile", "validate-generated-files", "validate-archutil", "validate-shfmt", "validate-docs", "validate-docs-dockerfile"] } target "lint" { @@ -218,6 +218,28 @@ target "validate-docs-dockerfile" { output = ["type=cacheonly"] } +target "validate-dockerfile" { + matrix = { + dockerfile = [ + "Dockerfile", + "./hack/dockerfiles/archutil.Dockerfile", + "./hack/dockerfiles/authors.Dockerfile", + "./hack/dockerfiles/docs-dockerfile.Dockerfile", + "./hack/dockerfiles/docs.Dockerfile", + "./hack/dockerfiles/doctoc.Dockerfile", + "./hack/dockerfiles/generated-files.Dockerfile", + "./hack/dockerfiles/govulncheck.Dockerfile", + "./hack/dockerfiles/lint.Dockerfile", + "./hack/dockerfiles/shfmt.Dockerfile", + "./hack/dockerfiles/vendor.Dockerfile", + "./frontend/dockerfile/cmd/dockerfile-frontend/Dockerfile", + ] + } + name = "validate-dockerfile-${md5(dockerfile)}" + dockerfile = dockerfile + call = "check" +} + target "vendor" { inherits = ["_common"] dockerfile = "./hack/dockerfiles/vendor.Dockerfile" diff --git a/hack/dockerfiles/vendor.Dockerfile b/hack/dockerfiles/vendor.Dockerfile index a7602b14e79c..859ccd2d16d9 100644 --- a/hack/dockerfiles/vendor.Dockerfile +++ b/hack/dockerfiles/vendor.Dockerfile @@ -38,7 +38,9 @@ RUN --mount=target=/context \ fi EOT -FROM psampaz/go-mod-outdated:${MODOUTDATED_VERSION} AS go-mod-outdated +FROM --platform=linux/amd64 psampaz/go-mod-outdated:${MODOUTDATED_VERSION} AS go-mod-outdated-amd64 + +FROM go-mod-outdated-amd64 AS go-mod-outdated FROM base AS outdated RUN --mount=target=.,rw \ --mount=target=/go/pkg/mod,type=cache \