CB_FROM_rocky9: docker.internal.networkradius.com/self-hosted-rocky9
CB_FROM_rocky10: docker.internal.networkradius.com/self-hosted-rocky10
run: |
- make crossbuild.regen.check
+ make docker.crossbuild.regen.check
make crossbuild.$OS
- name: Show build log
- name: Run crossbuild tests
run: |
- make crossbuild.regen.check
+ make docker.crossbuild.regen.check
make crossbuild.$OS
- name: Show build log
#
# Slim build bases for ci-rpm.yml / ci-deb.yml. Generated from
- # scripts/docker/m4/ci-base.{rpm,deb}.m4 - regenerate with
- # `make ci-base.<distro>.regen` after editing the m4. The
+ # scripts/docker/m4/ci.{rpm,deb}.m4 - regenerate with
+ # `make docker.ci.regen` after editing the m4. The
# generated Dockerfile.ci hardcodes the per-distro FROM, so
# no build_args are needed here.
#
password: ${{ secrets.DOCKERHUB_READ_KEY }}
- name: Verify Dockerfiles match m4 templates
- run: make docker.regen.check
+ run: make docker.service.regen.check
- name: Build docker image
run: |
packages: m4 make
- name: Verify Dockerfiles match m4 templates
- run: make docker.regen.check
+ run: make docker.service.regen.check
- name: Build docker image
run: |
endif
#
-# Conditionally include the docker make file. Also triggered by the
-# ci-base.* family of targets defined inside docker.mk.
+# Conditionally include the docker make file.
#
-ifneq "$(or $(findstring docker,$(MAKECMDGOALS)),$(findstring ci-base,$(MAKECMDGOALS)))" ""
+ifneq "$(findstring docker,$(MAKECMDGOALS))" ""
include scripts/docker/docker.mk
endif
# Auto generated for debian12
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.debian12.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=debian:bookworm
FROM ${from} AS build
# Auto generated for debian12
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.debian12.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=debian:bookworm
FROM ${from} AS build
# Auto generated for debian12
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.debian12.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=debian:bookworm
FROM ${from}
# Auto generated for debian13
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.debian13.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=debian:trixie
FROM ${from} AS build
# Auto generated for debian13
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.debian13.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=debian:trixie
FROM ${from} AS build
# Auto generated for debian13
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.debian13.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=debian:trixie
FROM ${from}
# Auto generated for debiansid
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.debiansid.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=debian:sid
FROM ${from} AS build
# Auto generated for debiansid
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.debiansid.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=debian:sid
FROM ${from} AS build
# Auto generated for debiansid
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.debiansid.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=debian:sid
FROM ${from}
# Auto generated for rocky10
-# from scripts/docker/m4/docker.rpm.m4
+# from scripts/docker/m4/service.rpm.m4
#
-# Rebuild this file with `make docker.rocky10.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=rockylinux/rockylinux:10
FROM ${from} AS build
# Auto generated for rocky10
# from scripts/docker/m4/crossbuild.rpm.m4
#
-# Rebuild this file with `make crossbuild.rocky10.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=rockylinux/rockylinux:10
FROM ${from} AS build
# Auto generated for rocky10
-# from scripts/docker/m4/ci-base.rpm.m4
+# from scripts/docker/m4/ci.rpm.m4
#
-# Rebuild this file with `make ci-base.rocky10.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=rockylinux/rockylinux:10
FROM ${from}
# Auto generated for rocky9
-# from scripts/docker/m4/docker.rpm.m4
+# from scripts/docker/m4/service.rpm.m4
#
-# Rebuild this file with `make docker.rocky9.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=rockylinux/rockylinux:9
FROM ${from} AS build
# Auto generated for rocky9
# from scripts/docker/m4/crossbuild.rpm.m4
#
-# Rebuild this file with `make crossbuild.rocky9.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=rockylinux/rockylinux:9
FROM ${from} AS build
# Auto generated for rocky9
-# from scripts/docker/m4/ci-base.rpm.m4
+# from scripts/docker/m4/ci.rpm.m4
#
-# Rebuild this file with `make ci-base.rocky9.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=rockylinux/rockylinux:9
FROM ${from}
# Auto generated for ubuntu22
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.ubuntu22.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=ubuntu:22.04
FROM ${from} AS build
# Auto generated for ubuntu22
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.ubuntu22.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=ubuntu:22.04
FROM ${from} AS build
# Auto generated for ubuntu22
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.ubuntu22.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=ubuntu:22.04
FROM ${from}
# Auto generated for ubuntu24
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.ubuntu24.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=ubuntu:24.04
FROM ${from} AS build
# Auto generated for ubuntu24
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.ubuntu24.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=ubuntu:24.04
FROM ${from} AS build
# Auto generated for ubuntu24
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.ubuntu24.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=ubuntu:24.04
FROM ${from}
# Auto generated for ubuntu26
-# from scripts/docker/m4/docker.deb.m4
+# from scripts/docker/m4/service.deb.m4
#
-# Rebuild this file with `make docker.ubuntu26.regen`
+# Rebuild this file with `make docker.service.regen`
#
ARG from=ubuntu:26.04
FROM ${from} AS build
# Auto generated for ubuntu26
# from scripts/docker/m4/crossbuild.deb.m4
#
-# Rebuild this file with `make crossbuild.ubuntu26.regen`
+# Rebuild this file with `make docker.crossbuild.regen`
#
ARG from=ubuntu:26.04
FROM ${from} AS build
# Auto generated for ubuntu26
-# from scripts/docker/m4/ci-base.deb.m4
+# from scripts/docker/m4/ci.deb.m4
#
-# Rebuild this file with `make ci-base.ubuntu26.regen`
+# Rebuild this file with `make docker.ci.regen`
#
ARG from=ubuntu:26.04
FROM ${from}
# Regenerate all Dockerfile.cb files from m4 templates. Depends on
# the file targets directly; no per-image phony aliases.
#
-.PHONY: crossbuild.regen crossbuild.regen.check
-crossbuild.regen: $(foreach IMG,${CB_IMAGES},$(DT)/${IMG}/Dockerfile.cb)
+.PHONY: docker.crossbuild.regen docker.crossbuild.regen.check
+docker.crossbuild.regen: $(foreach IMG,${CB_IMAGES},$(DT)/${IMG}/Dockerfile.cb)
#
# Verify every committed Dockerfile.cb matches a fresh render of its
# m4 source. Fails with a diff if a contributor edited the m4 but
# forgot to regen+commit.
#
-crossbuild.regen.check:
+docker.crossbuild.regen.check:
@failed=0; for IMG in $(CB_IMAGES); do \
tmp=$$(mktemp); \
m4 -I $(CB_DIR)/m4 -D D_NAME=$$IMG -D D_TYPE=crossbuild $(DOCKER_TMPL) > $$tmp; \
fi; \
rm $$tmp; \
done; \
- [ $$failed -eq 0 ] || { echo; echo "Run 'make crossbuild.regen' and commit the result."; exit 1; }
+ [ $$failed -eq 0 ] || { echo; echo "Run 'make docker.crossbuild.regen' and commit the result."; exit 1; }
#
@echo " docker - build all images"
@echo " docker.common - build and test common images"
@echo " docker.info - list images"
- @echo " docker.regen - regenerate all production Dockerfiles"
- @echo " ci-base.regen - regenerate all CI base Dockerfile.ci files"
+ @echo " docker.service.regen - regenerate all production Dockerfiles"
+ @echo " docker.ci.regen - regenerate all CI base Dockerfile.ci files"
@echo ""
@echo "Per-image targets:"
@echo " docker.IMAGE.build - build image as $(D_IPREFIX)/<IMAGE>"
# Regenerate all Dockerfiles from m4 templates. Both bundles depend
# on the file targets directly; no per-image phony aliases.
#
-.PHONY: docker.regen ci-base.regen docker.regen.check ci-base.regen.check
-docker.regen: $(foreach IMG,${IMAGES},$(DT)/${IMG}/Dockerfile)
-ci-base.regen: $(foreach IMG,${IMAGES},$(DT)/${IMG}/Dockerfile.ci)
+.PHONY: docker.service.regen docker.ci.regen docker.service.regen.check docker.ci.regen.check
+docker.service.regen: $(foreach IMG,${IMAGES},$(DT)/${IMG}/Dockerfile)
+docker.ci.regen: $(foreach IMG,${IMAGES},$(DT)/${IMG}/Dockerfile.ci)
#
# Verify every committed Dockerfile / Dockerfile.ci matches a fresh
# render of its m4 source. Fails with a diff if a contributor edited
# the m4 but forgot to regen+commit.
#
-docker.regen.check:
+docker.service.regen.check:
@failed=0; for IMG in $(IMAGES); do \
tmp=$$(mktemp); \
- m4 -I $(CB_DIR)/m4 -D D_NAME=$$IMG -D D_TYPE=docker $(DOCKER_TMPL) > $$tmp; \
+ m4 -I $(CB_DIR)/m4 -D D_NAME=$$IMG -D D_TYPE=service $(DOCKER_TMPL) > $$tmp; \
if ! diff -u $(DT)/$$IMG/Dockerfile $$tmp; then \
echo "OUT OF SYNC: $(DT)/$$IMG/Dockerfile"; failed=1; \
fi; \
rm $$tmp; \
done; \
- [ $$failed -eq 0 ] || { echo; echo "Run 'make docker.regen' and commit the result."; exit 1; }
+ [ $$failed -eq 0 ] || { echo; echo "Run 'make docker.service.regen' and commit the result."; exit 1; }
-ci-base.regen.check:
+docker.ci.regen.check:
@failed=0; for IMG in $(IMAGES); do \
tmp=$$(mktemp); \
- m4 -I $(CB_DIR)/m4 -D D_NAME=$$IMG -D D_TYPE=ci-base $(DOCKER_TMPL) > $$tmp; \
+ m4 -I $(CB_DIR)/m4 -D D_NAME=$$IMG -D D_TYPE=ci $(DOCKER_TMPL) > $$tmp; \
if ! diff -u $(DT)/$$IMG/Dockerfile.ci $$tmp; then \
echo "OUT OF SYNC: $(DT)/$$IMG/Dockerfile.ci"; failed=1; \
fi; \
rm $$tmp; \
done; \
- [ $$failed -eq 0 ] || { echo; echo "Run 'make ci-base.regen' and commit the result."; exit 1; }
+ [ $$failed -eq 0 ] || { echo; echo "Run 'make docker.ci.regen' and commit the result."; exit 1; }
#
# Define rules for building a particular image
# images that ci-deb.yml / ci-rpm.yml run their build jobs inside.
# Both regen via the bundle targets above; no per-image variants.
#
-$(DT)/${1}/Dockerfile: $(DOCKER_TMPL) $(CB_DIR)/m4/docker.deb.m4 $(CB_DIR)/m4/docker.rpm.m4 $(M4_SHARED)
+$(DT)/${1}/Dockerfile: $(DOCKER_TMPL) $(CB_DIR)/m4/service.deb.m4 $(CB_DIR)/m4/service.rpm.m4 $(M4_SHARED)
${Q}echo REGEN ${1} "->" $$@
- ${Q}m4 -I $(CB_DIR)/m4 -D D_NAME=${1} -D D_TYPE=docker $$< > $$@
+ ${Q}m4 -I $(CB_DIR)/m4 -D D_NAME=${1} -D D_TYPE=service $$< > $$@
-$(DT)/${1}/Dockerfile.ci: $(DOCKER_TMPL) $(CB_DIR)/m4/ci-base.deb.m4 $(CB_DIR)/m4/ci-base.rpm.m4 $(M4_SHARED)
+$(DT)/${1}/Dockerfile.ci: $(DOCKER_TMPL) $(CB_DIR)/m4/ci.deb.m4 $(CB_DIR)/m4/ci.rpm.m4 $(M4_SHARED)
${Q}echo REGEN ${1} "->" $$@
- ${Q}m4 -I $(CB_DIR)/m4 -D D_NAME=${1} -D D_TYPE=ci-base $$< > $$@
+ ${Q}m4 -I $(CB_DIR)/m4 -D D_NAME=${1} -D D_TYPE=ci $$< > $$@
endef
dnl
dnl Two macros must be defined for this template:
dnl D_NAME - the OS codename, see the table below, e.g. debian11
-dnl D_TYPE - the type of template, 'docker' or 'crossbuild'
+dnl D_TYPE - the type of template: 'service', 'ci' or 'crossbuild'
dnl
divert(`-1')
changequote(`[', `]')
[#] Auto generated for D_NAME
[#] from scripts/docker/m4/D_TYPE.PKG_TYPE.m4
[#]
-[#] Rebuild this file with `make D_TYPE.D_NAME.regen`
+[#] Rebuild this file with `make docker.D_TYPE.regen`
[#]
changequote([`], ['])dnl
include(D_TYPE.PKG_TYPE.m4)dnl