diff --git a/dkbuild b/dkbuild index 6b61920..dd8d4c9 100755 --- a/dkbuild +++ b/dkbuild @@ -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 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 '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 @@ -845,7 +848,11 @@ pour obtenir les valeurs par défaut des paramètres: ## run -- lancer des commandes +## runb -- lancer des commandes + ## call -- lancer des commandes ou des fonctions + +## callb -- lancer des commandes ou des fonctions " } @@ -947,7 +954,9 @@ FFUNCTIONS=( composer mvn run + runb call + callb dkbuild ) @@ -2202,6 +2211,7 @@ fi [ -n "$action" ] || action=install [ "$action" == none ] && return + local build="${DEFAULTS[build_build]-1}" local args case "$PROFILE" in prod|test) args="${DEFAULTS[composer_args]---no-dev -o}";; @@ -2236,6 +2246,8 @@ fi while [ $# -gt 0 ]; do case "$1" in + build) build=1;; + build=*) build="${1#build=}";; args=*) args="${1#args=}";; php=*) php="${1#php=}";; php-max=*) php_max="${1#php-max=}";; @@ -2251,6 +2263,8 @@ fi shift done + [ -n "$build" ] || return + if [ "$php" != force -a "$php" != any ]; then # Si php n'est pas disponible dans le PATH, forcer l'utilisation de # l'image @@ -2487,6 +2501,7 @@ cd "$projdir" [ -n "$action" ] || action=package [ "$action" == none ] && return + local build="${DEFAULTS[build_build]-1}" local args="${DEFAULTS[mvn_args]}" local java="${DEFAULTS[mvn_java]}" local image="${DEFAULTS[mvn_image]}" @@ -2514,6 +2529,8 @@ cd "$projdir" while [ $# -gt 0 ]; do case "$1" in + build) build=1;; + build=*) build="${1#build=}";; args=*) args="${1#args=}";; java=*) java="${1#java=}";; image=*) image="${1#image=}";; @@ -2528,6 +2545,8 @@ cd "$projdir" shift done + [ -n "$build" ] || return + local version case "$action" in java*) @@ -2595,12 +2614,24 @@ cd "$projdir" fi "$cmd" "$@" || die } + function runb() { + local build="${DEFAULTS[build_build]-1}" + if [ -n "$build" ]; then + run "$@" + fi + } function call() { edebug "call $(qvals "$@")" [ $# -eq 0 ] && return 0 "$@" } + function callb() { + local build="${DEFAULTS[build_build]-1}" + if [ -n "$build" ]; then + call "$@" + fi + } function dkbuild() { edebug "dkbuild $(qvals "$@")"