dkbuild: utiliser automatiquement l'image si nécessaire pour composer ou maven

This commit is contained in:
Jephté Clain 2023-01-31 09:47:38 +04:00
parent 93de256914
commit 3ead1f37bc
1 changed files with 27 additions and 0 deletions

27
dkbuild
View File

@ -715,6 +715,8 @@ Les paramètres optionnels sont
* Spécifier 'any' ou 'force' pour forcer l'utilisation de l'image docker.
* Spécifier 'none' ou 'system' pour lancer directement composer sans passer
par une image docker.
Si php n'est pas disponible dans le PATH, ce paramètre prend par défaut la
valeur 'force'
* php-max=VERSION
version de PHP à partir de laquelle image= est utilisé. En d'autres termes,
c'est la version maximum de PHP, à partir de laquelle il faut passer par une
@ -795,6 +797,8 @@ Les paramètres optionnels sont
version de Java à sélectionner à l'intérieur de l'image docker
* Spécifier 'any' ou 'force' pour prendre la valeur par défaut
* Spécifier 'none' ou 'system' pour ne pas utiliser l'image docker
Si java ou mvn ne sont pas disponibles dans le PATH, ce paramètre prend par
défaut la valeur 'force'
* image=MAVEN_IMAGE
image docker utilisée pour lancer mvn. La valeur par défaut est la valeur
de la variable d'environnement \$MAVEN_IMAGE
@ -2240,6 +2244,12 @@ fi
shift
done
if [ "$php" != force -a "$php" != any ]; then
# Si php n'est pas disponible dans le PATH, forcer l'utilisation de
# l'image
progexists php || php=force
fi
local use_image
if [ "$php" == force -o "$php" == any ]; then
use_image=1
@ -2285,6 +2295,11 @@ exit((PHP_VERSION_ID < $version)? 0: 1);
fi
if [ -n "$use_image" ]; then
if [ -z "$image" ]; then
# Si l'image n'est pas définie, calculer une valeur par défaut à
# partir REGISTRY et DIST
image="${REGISTRY:-docker.univ-reunion.fr}/image/phpbuilder:${DIST:-d11}"
fi
local orig_machine
[ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour composer"
if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then
@ -2515,6 +2530,13 @@ cd "$projdir"
;;
esac
if [ "$java" != force -a "$java" != any ]; then
# Si Java et mvn ne sont pas disponibles dans le PATH, forcer
# l'utilisation de l'image
progexists java || java=force
progexists mvn || java=force
fi
local use_image
if [ "$java" == force -o "$java" == any ]; then
java=
@ -2527,6 +2549,11 @@ cd "$projdir"
fi
if [ -n "$use_image" ]; then
if [ -z "$image" ]; then
# Si l'image n'est pas définie, calculer une valeur par défaut à
# partir REGISTRY et DIST
image="${REGISTRY:-docker.univ-reunion.fr}/image/javabuilder:d11"
fi
local orig_machine
[ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour mvn"
if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then