From 12da4973c69e6987217089a418199a8227f658d7 Mon Sep 17 00:00:00 2001 From: Marco Ferrari Date: Thu, 11 Jul 2024 08:08:23 +0200 Subject: [PATCH] ci: enable dev-dependencies docker build checks (#5871) - Run Docker build checks when building the dev-dependencies container image and when running the test target. - Run Docker build checks when building the Super-linter container, and not just when running the test target. - Use the correct variable when setting the dev-dependencies container user. --- Makefile | 13 +++++++++---- dev-dependencies/Dockerfile | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 7a9c994a..f1f6d96b 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ all: info docker test ## Run all targets. .PHONY: test -test: info validate-container-image-labels docker-build-check test-lib inspec lint-codebase test-default-config-files test-actions-runner-debug test-actions-steps-debug test-runner-debug test-find lint-subset-files test-custom-ssl-cert test-non-default-workdir test-git-flags test-non-default-home-directory test-git-initial-commit test-log-level test-use-find-and-ignore-gitignored-files test-linters-expect-failure-log-level-notice test-bash-exec-library-expect-success test-bash-exec-library-expect-failure test-save-super-linter-output test-save-super-linter-output-custom-path test-linters ## Run the test suite +test: info validate-container-image-labels docker-build-check docker-dev-container-build-check test-lib inspec lint-codebase test-default-config-files test-actions-runner-debug test-actions-steps-debug test-runner-debug test-find lint-subset-files test-custom-ssl-cert test-non-default-workdir test-git-flags test-non-default-home-directory test-git-initial-commit test-log-level test-use-find-and-ignore-gitignored-files test-linters-expect-failure-log-level-notice test-bash-exec-library-expect-success test-bash-exec-library-expect-failure test-save-super-linter-output test-save-super-linter-output-custom-path test-linters ## Run the test suite # if this session isn't interactive, then we don't want to allocate a # TTY, which would fail, but if it is interactive, we do want to attach @@ -119,7 +119,7 @@ inspec: inspec-check ## Run InSpec tests && docker kill $(SUPER_LINTER_TEST_CONTAINER_NAME) .PHONY: docker -docker: check-github-token ## Build the container image +docker: docker-build-check check-github-token ## Build the container image DOCKER_BUILDKIT=1 docker buildx build --load \ --build-arg BUILD_DATE=$(BUILD_DATE) \ --build-arg BUILD_REVISION=$(BUILD_REVISION) \ @@ -128,7 +128,7 @@ docker: check-github-token ## Build the container image --target $(IMAGE) \ -t $(SUPER_LINTER_TEST_CONTAINER_URL) . -.PHONY: docker-build-check ## Run Docker build checks +.PHONY: docker-build-check ## Run Docker build checks against the Super-linter image docker-build-check: DOCKER_BUILDKIT=1 docker buildx build --check \ . @@ -418,8 +418,13 @@ test-save-super-linter-output-custom-path: ## Run super-linter with SAVE_SUPER_L $(SUPER_LINTER_TEST_CONTAINER_URL) \ "run_test_cases_save_super_linter_output_custom_path" +.PHONY: docker-dev-container-build-check ## Run Docker build checks against the dev-container image +docker-dev-container-build-check: + DOCKER_BUILDKIT=1 docker buildx build --check \ + "${CURDIR}/dev-dependencies" + .PHONY: build-dev-container-image -build-dev-container-image: ## Build commit linter container image +build-dev-container-image: docker-dev-container-build-check ## Build commit linter container image DOCKER_BUILDKIT=1 docker buildx build --load \ --build-arg GID=$(shell id -g) \ --build-arg UID=$(shell id -u) \ diff --git a/dev-dependencies/Dockerfile b/dev-dependencies/Dockerfile index 377370da..d65e7b9e 100644 --- a/dev-dependencies/Dockerfile +++ b/dev-dependencies/Dockerfile @@ -29,4 +29,4 @@ ARG UID=1000 ARG GID=1000 RUN groupadd -g ${GID} -o "${USERNAME}" \ && useradd -m -u ${UID} -g ${GID} -o -s /bin/bash -l "${USERNAME}" -USER $UNAME +USER $USERNAME