From: Matthew Newton Date: Wed, 29 May 2024 11:17:42 +0000 (+0100) Subject: docker: fix build commit and add help target X-Git-Tag: release_3_2_4~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ad23bc03ce201b97200002d3e07af3d71f1aaa28;p=thirdparty%2Ffreeradius-server.git docker: fix build commit and add help target --- diff --git a/scripts/docker/dists/centos7/Dockerfile b/scripts/docker/dists/centos7/Dockerfile index 3b68b85649f..3140a15beae 100644 --- a/scripts/docker/dists/centos7/Dockerfile +++ b/scripts/docker/dists/centos7/Dockerfile @@ -34,7 +34,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Other requirements diff --git a/scripts/docker/dists/debian10/Dockerfile b/scripts/docker/dists/debian10/Dockerfile index c12b6943ca0..5e9e9a5fcc2 100644 --- a/scripts/docker/dists/debian10/Dockerfile +++ b/scripts/docker/dists/debian10/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/debian11/Dockerfile b/scripts/docker/dists/debian11/Dockerfile index db53e521fbc..f709d95fe4a 100644 --- a/scripts/docker/dists/debian11/Dockerfile +++ b/scripts/docker/dists/debian11/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/debian12/Dockerfile b/scripts/docker/dists/debian12/Dockerfile index 18151550195..609e8ae4953 100644 --- a/scripts/docker/dists/debian12/Dockerfile +++ b/scripts/docker/dists/debian12/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/debiansid/Dockerfile b/scripts/docker/dists/debiansid/Dockerfile index 5194cd0bc29..862a421da9f 100644 --- a/scripts/docker/dists/debiansid/Dockerfile +++ b/scripts/docker/dists/debiansid/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/rocky8/Dockerfile b/scripts/docker/dists/rocky8/Dockerfile index 78485b8c18b..4dcb92e940f 100644 --- a/scripts/docker/dists/rocky8/Dockerfile +++ b/scripts/docker/dists/rocky8/Dockerfile @@ -39,7 +39,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Other requirements diff --git a/scripts/docker/dists/rocky9/Dockerfile b/scripts/docker/dists/rocky9/Dockerfile index 5e89ad73488..0f57010bde7 100644 --- a/scripts/docker/dists/rocky9/Dockerfile +++ b/scripts/docker/dists/rocky9/Dockerfile @@ -39,7 +39,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Other requirements diff --git a/scripts/docker/dists/ubuntu18/Dockerfile b/scripts/docker/dists/ubuntu18/Dockerfile index d9aaeb628a2..4e3263265b8 100644 --- a/scripts/docker/dists/ubuntu18/Dockerfile +++ b/scripts/docker/dists/ubuntu18/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/ubuntu20/Dockerfile b/scripts/docker/dists/ubuntu20/Dockerfile index 19981b247c3..4a3bbf49a51 100644 --- a/scripts/docker/dists/ubuntu20/Dockerfile +++ b/scripts/docker/dists/ubuntu20/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/ubuntu22/Dockerfile b/scripts/docker/dists/ubuntu22/Dockerfile index 5c2cd11d821..778112aa1b9 100644 --- a/scripts/docker/dists/ubuntu22/Dockerfile +++ b/scripts/docker/dists/ubuntu22/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/dists/ubuntu24/Dockerfile b/scripts/docker/dists/ubuntu24/Dockerfile index 98d3eb3c2ed..ad4520ec3e6 100644 --- a/scripts/docker/dists/ubuntu24/Dockerfile +++ b/scripts/docker/dists/ubuntu24/Dockerfile @@ -32,7 +32,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/docker.mk b/scripts/docker/docker.mk index 77e2310f70f..45bd02b9c8e 100644 --- a/scripts/docker/docker.mk +++ b/scripts/docker/docker.mk @@ -25,8 +25,8 @@ # version, DOCKER_COMMIT _must_ also be set. DOCKER_VERSION := $(RADIUSD_VERSION_STRING) # -# Commit hash/tag/branch to build, will be taken from VERSION above if not overridden, e.g. "release_3_2_0" -DOCKER_COMMIT := release_$(shell echo $(DOCKER_VERSION) | tr .- __) +# Commit hash/tag/branch to build, if not set then HEAD will be used. +DOCKER_COMMIT := # # Build args, most likely "--no-cache" DOCKER_BUILD_ARGS := @@ -66,6 +66,34 @@ ifneq "$(DOCKER_REGISTRY)" "" endif +# +# Print some useful help +# +.PHONY: docker.help.images +docker.help.images: + @echo Available images: $(DOCKER_IMAGES) + +.PHONY: docker.help +docker.help: docker.help.images + @echo "" + @echo "Make targets:" + @echo " docker-ubuntu - build main ubuntu image" + @echo " docker-alpine - build main alpine image" + @echo " docker.regen - regenerate all Dockerfiles from templates" + @echo "" + @echo "Make targets per image:" + @echo " docker.IMAGE.build - build image" + @echo " docker.IMAGE.regen - regenerate Dockerfile" + @echo "" + @echo "Arguments:" + @echo ' DOCKER_BUILD_ARGS="--no-cache" - extra build args' + @echo ' DOCKER_REGISTRY="docker.example.com" - registry to build for' + @echo ' DOCKER_REPO="freeradius" - docker repo name' + @echo ' DOCKER_TAG="freeradius-server" - docker tag name' + @echo ' DOCKER_COMMIT="HEAD" - commit/ref to build from' + @echo ' DOCKER_VERSION="$(DOCKER_VERSION)" - version for docker image name' + + # # Rules for each OS # diff --git a/scripts/docker/m4/Dockerfile.deb.m4 b/scripts/docker/m4/Dockerfile.deb.m4 index 1895b6b8b9c..0b4e5b5a0c2 100644 --- a/scripts/docker/m4/Dockerfile.deb.m4 +++ b/scripts/docker/m4/Dockerfile.deb.m4 @@ -27,7 +27,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Install build dependencies diff --git a/scripts/docker/m4/Dockerfile.rpm.m4 b/scripts/docker/m4/Dockerfile.rpm.m4 index 0137483c428..198510a6785 100644 --- a/scripts/docker/m4/Dockerfile.rpm.m4 +++ b/scripts/docker/m4/Dockerfile.rpm.m4 @@ -43,7 +43,10 @@ COPY . . RUN git clean -fdxx \ && git reset --hard HEAD -RUN [ -z "$release" ] || git checkout ${release} +ARG release +RUN [ -z "$release" ] || git checkout ${release} ; \ + git status ; \ + git log -1 --oneline # # Other requirements