modifs.mineures sans commentaires

This commit is contained in:
Jephté Clain 2024-03-27 18:19:14 +04:00
parent 2ca4332063
commit 635e513a8b
3 changed files with 41 additions and 12 deletions

View File

@ -1,10 +1,12 @@
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
ARG NDIST=12
ARG REGISTRY=pubdocker.univ-reunion.fr
FROM $REGISTRY/src/base as base
FROM $REGISTRY/src/php as php
################################################################################
FROM debian:11-slim as builder
FROM debian:${NDIST}-slim as builder
COPY --from=base /g/ /g/
COPY --from=base /src/ /src/
@ -12,7 +14,7 @@ RUN /g/build core lite _builder
RUN make -C /src/su-exec
################################################################################
FROM debian:11-slim
FROM debian:${NDIST}-slim
COPY --from=builder /src/su-exec/su-exec /g/
COPY --from=base /g/ /g/

View File

@ -16,3 +16,4 @@ PRIVAREG=
# Ne pas toucher à partir d'ici
REGISTRY=pubdocker.univ-reunion.fr
DIST=d12

View File

@ -29,8 +29,13 @@ COMPOSERPHAR=
VENDORDIR=
# fichier de configuration pour le build
BUILDENV0=
BUILDENV=
# version de debian à utiliser pour l'image
# d12=php8.2, d11=php7.4, d10=php7.3
DIST=
################################################################################
# Ne pas modifier à partir d'ici
@ -38,9 +43,12 @@ BUILDENV=
[ -n "$COMPOSERDIR" ] || COMPOSERDIR=.
[ -n "$COMPOSERPHAR" ] || COMPOSERPHAR=sbin/composer.phar
[ -n "$VENDORDIR" ] || VENDORDIR=vendor
[ -n "$BUILDENV0" ] || BUILDENV0=.build.env.dist
[ -n "$BUILDENV" ] || BUILDENV=build.env
[ -n "$DIST" ] || DIST=d12
[ "$COMPOSERPHAR" == none ] && COMPOSERPHAR=
[ "$BUILDENV0" == none ] && BUILDENV0=
[ "$BUILDENV" == none ] && BUILDENV=
function eecho() { echo "$*" 1>&2; }
@ -68,14 +76,20 @@ function composer() {
bootstrap=
BootstrapOnly=1
ForcedBootstrap=
parse_opts=1
args=()
for arg in "$@"; do
if [ "$arg" == --bootstrap ]; then
if [ -z "$parse_opts" ]; then
args+=("$arg")
elif [ "$arg" == --bootstrap ]; then
bootstrap=1
elif [ "$arg" == --exec ]; then
BootstrapOnly=
elif [[ "$arg" == -* ]]; then
args+=("$arg")
else
args+=("$arg")
parse_opts=
fi
done
set -- "${args[@]}"
@ -170,14 +184,16 @@ if [ -z "$_RUNDK_IN_DOCKER" ]; then
else
UseRslave=1
fi
IMAGENAME=nulib/rundk
IMAGENAME="nulib/rundk"
if [ -z "$bootstrap" ]; then
if [ -f "$PROJDIR/$BUILDENV" ]; then
if [ -n "$BUILDENV" -a -f "$PROJDIR/$BUILDENV" ]; then
source "$PROJDIR/$BUILDENV" || exit 1
elif [ -n "$BUILDENV0" -a -f "$PROJDIR/$BUILDENV0" ]; then
source "$PROJDIR/$BUILDENV0" || exit 1
fi
if [ -z "$IMAGE" ]; then
[ -n "$PRIVAREG" ] && IMAGE="$PRIVAREG/$IMAGENAME" || IMAGE="$REGISTRY/$IMAGENAME"
[ -n "$PRIVAREG" ] && IMAGE="$PRIVAREG/$IMAGENAME:$DIST" || IMAGE="$REGISTRY/$IMAGENAME:$DIST"
fi
if [ -z "$(docker image ls --no-trunc --format '{{.Repository}}:{{.Tag}}' "$IMAGE" 2>/dev/null)" ]; then
bootstrap=1
@ -193,12 +209,18 @@ if [ -z "$_RUNDK_IN_DOCKER" ]; then
TIMEZONE
)
SOPTS=+c:UjDx:z:r:pw:v
LOPTS=help,config:,unless-exists,pull,no-cache,plain-output,apt-proxy:,timezone:,privareg:,push,chdir:,verbose,no-use-rslave
SOPTS=+d:9876543210:c:UjDx:z:r:pw:v
LOPTS=help,dist:,d19,d18,d17,d16,d15,d14,d13,d12,d11,d10,config:,unless-exists,pull,no-cache,plain-output,apt-proxy:,timezone:,privareg:,push,chdir:,verbose,no-use-rslave
args="$(getopt -n "$MYNAME" -o "$SOPTS" -l "$LOPTS" -- "$@")" || exit 1; eval "set -- $args"
[ -f "$PROJDIR/$BUILDENV" ] && Config="$PROJDIR/$BUILDENV" || Config=
Build=
Dist=
if [ -n "$BUILDENV" -a -f "$PROJDIR/$BUILDENV" ]; then
Config="$PROJDIR/$BUILDENV"
elif [ -n "$BUILDENV0" -a -f "$PROJDIR/$BUILDENV0" ]; then
Config="$PROJDIR/$BUILDENV0"
else
Config=
fi
UnlessExists=
Pull=
NoCache=
@ -232,8 +254,10 @@ OPTIONS
afficher plus d'informations"
exit 0
;;
-d|--dist) shift; Dist="$1";;
-[0-9]) Dist="d1${1#-}";;
--d*) Dist="${1#--}";;
-c|--config) shift; Config="$1";;
-0|--build) Build=1;;
--unless-exists) UnlessExists=1;;
-U|--pull) Pull=1;;
-j|--no-cache) NoCache=1;;
@ -254,8 +278,9 @@ OPTIONS
if [ -n "$Config" ]; then
source "$Config" || exit 1
fi
[ -n "$Dist" ] && DIST="$Dist"
if [ -z "$IMAGE" ]; then
[ -n "$PRIVAREG" ] && IMAGE="$PRIVAREG/$IMAGENAME" || IMAGE="$REGISTRY/$IMAGENAME"
[ -n "$PRIVAREG" ] && IMAGE="$PRIVAREG/$IMAGENAME:$DIST" || IMAGE="$REGISTRY/$IMAGENAME:$DIST"
fi
if [ -z "$UnlessExists" -o -z "$(docker image ls --no-trunc --format '{{.Repository}}:{{.Tag}}' "$IMAGE" 2>/dev/null)" ]; then
eecho "== Building $IMAGE"
@ -265,6 +290,7 @@ OPTIONS
${NoCache:+--no-cache}
${BuildPlain:+--progress plain}
-t "$IMAGE"
--build-arg "NDIST=${DIST#d}"
)
for arg in "${BUILD_ARGS[@]}"; do
args+=(--build-arg "$arg=${!arg}")