dkbuild: composer et mvn ne sont lancés qu'en mode build

This commit is contained in:
Jephté Clain 2023-02-20 10:06:20 +04:00
parent 01c14bbeee
commit 432ab6f915
1 changed files with 31 additions and 0 deletions

31
dkbuild
View File

@ -369,6 +369,9 @@ La commande 'call' permet de lancer une commande quelconque. La différence avec
'run' est que la commande est lancée telle quelle, sans modifications. Si une 'run' est que la commande est lancée telle quelle, sans modifications. Si une
fonction est définie, elle sera utilisée en priorité. fonction est définie, elle sera utilisée en priorité.
Les commandes 'runb' et 'callb' sont comme 'run' et 'call' respectivement, mais
elles ne sont exécutées que si build est activé.
Si elles sont utilisées sans argument, les commandes 'composer', 'mvn', 'run' et Si elles sont utilisées sans argument, les commandes 'composer', 'mvn', 'run' et
'call' retournent vrai si la commande doit être exécutée dans le contexte 'call' retournent vrai si la commande doit être exécutée dans le contexte
courant. Celà permet d'implémenter des traitements complexes. Ainsi le script courant. Celà permet d'implémenter des traitements complexes. Ainsi le script
@ -845,7 +848,11 @@ pour obtenir les valeurs par défaut des paramètres:
## run -- lancer des commandes ## run -- lancer des commandes
## runb -- lancer des commandes
## call -- lancer des commandes ou des fonctions ## call -- lancer des commandes ou des fonctions
## callb -- lancer des commandes ou des fonctions
" "
} }
@ -947,7 +954,9 @@ FFUNCTIONS=(
composer composer
mvn mvn
run run
runb
call call
callb
dkbuild dkbuild
) )
@ -2202,6 +2211,7 @@ fi
[ -n "$action" ] || action=install [ -n "$action" ] || action=install
[ "$action" == none ] && return [ "$action" == none ] && return
local build="${DEFAULTS[build_build]-1}"
local args local args
case "$PROFILE" in case "$PROFILE" in
prod|test) args="${DEFAULTS[composer_args]---no-dev -o}";; prod|test) args="${DEFAULTS[composer_args]---no-dev -o}";;
@ -2236,6 +2246,8 @@ fi
while [ $# -gt 0 ]; do while [ $# -gt 0 ]; do
case "$1" in case "$1" in
build) build=1;;
build=*) build="${1#build=}";;
args=*) args="${1#args=}";; args=*) args="${1#args=}";;
php=*) php="${1#php=}";; php=*) php="${1#php=}";;
php-max=*) php_max="${1#php-max=}";; php-max=*) php_max="${1#php-max=}";;
@ -2251,6 +2263,8 @@ fi
shift shift
done done
[ -n "$build" ] || return
if [ "$php" != force -a "$php" != any ]; then if [ "$php" != force -a "$php" != any ]; then
# Si php n'est pas disponible dans le PATH, forcer l'utilisation de # Si php n'est pas disponible dans le PATH, forcer l'utilisation de
# l'image # l'image
@ -2487,6 +2501,7 @@ cd "$projdir"
[ -n "$action" ] || action=package [ -n "$action" ] || action=package
[ "$action" == none ] && return [ "$action" == none ] && return
local build="${DEFAULTS[build_build]-1}"
local args="${DEFAULTS[mvn_args]}" local args="${DEFAULTS[mvn_args]}"
local java="${DEFAULTS[mvn_java]}" local java="${DEFAULTS[mvn_java]}"
local image="${DEFAULTS[mvn_image]}" local image="${DEFAULTS[mvn_image]}"
@ -2514,6 +2529,8 @@ cd "$projdir"
while [ $# -gt 0 ]; do while [ $# -gt 0 ]; do
case "$1" in case "$1" in
build) build=1;;
build=*) build="${1#build=}";;
args=*) args="${1#args=}";; args=*) args="${1#args=}";;
java=*) java="${1#java=}";; java=*) java="${1#java=}";;
image=*) image="${1#image=}";; image=*) image="${1#image=}";;
@ -2528,6 +2545,8 @@ cd "$projdir"
shift shift
done done
[ -n "$build" ] || return
local version local version
case "$action" in case "$action" in
java*) java*)
@ -2595,12 +2614,24 @@ cd "$projdir"
fi fi
"$cmd" "$@" || die "$cmd" "$@" || die
} }
function runb() {
local build="${DEFAULTS[build_build]-1}"
if [ -n "$build" ]; then
run "$@"
fi
}
function call() { function call() {
edebug "call $(qvals "$@")" edebug "call $(qvals "$@")"
[ $# -eq 0 ] && return 0 [ $# -eq 0 ] && return 0
"$@" "$@"
} }
function callb() {
local build="${DEFAULTS[build_build]-1}"
if [ -n "$build" ]; then
call "$@"
fi
}
function dkbuild() { function dkbuild() {
edebug "dkbuild $(qvals "$@")" edebug "dkbuild $(qvals "$@")"