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 'any' ou 'force' pour forcer l'utilisation de l'image docker.
* Spécifier 'none' ou 'system' pour lancer directement composer sans passer * Spécifier 'none' ou 'system' pour lancer directement composer sans passer
par une image docker. 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 * php-max=VERSION
version de PHP à partir de laquelle image= est utilisé. En d'autres termes, 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 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 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 'any' ou 'force' pour prendre la valeur par défaut
* Spécifier 'none' ou 'system' pour ne pas utiliser l'image docker * 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=MAVEN_IMAGE
image docker utilisée pour lancer mvn. La valeur par défaut est la valeur image docker utilisée pour lancer mvn. La valeur par défaut est la valeur
de la variable d'environnement \$MAVEN_IMAGE de la variable d'environnement \$MAVEN_IMAGE
@ -2240,6 +2244,12 @@ fi
shift shift
done 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 local use_image
if [ "$php" == force -o "$php" == any ]; then if [ "$php" == force -o "$php" == any ]; then
use_image=1 use_image=1
@ -2285,6 +2295,11 @@ exit((PHP_VERSION_ID < $version)? 0: 1);
fi fi
if [ -n "$use_image" ]; then 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 local orig_machine
[ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour composer" [ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour composer"
if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then
@ -2515,6 +2530,13 @@ cd "$projdir"
;; ;;
esac 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 local use_image
if [ "$java" == force -o "$java" == any ]; then if [ "$java" == force -o "$java" == any ]; then
java= java=
@ -2527,6 +2549,11 @@ cd "$projdir"
fi fi
if [ -n "$use_image" ]; then 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 local orig_machine
[ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour mvn" [ "$image" != none ] || die "Vous devez spécifier l'image à utiliser pour mvn"
if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then if [ -n "$machine" -a "$machine" != current -a "$DOCKER_MACHINE_NAME" != "$machine" ]; then