améliorer l'ergonomie de ruinst, rwoinst, toinst: pas la peine de confirmer le répertoire courant s'il est déployé sur un hôte
This commit is contained in:
parent
8ce9821095
commit
0365c5483c
28
rtoinst
28
rtoinst
|
@ -133,23 +133,24 @@ parse_opts "${PRETTYOPTS[@]}" \
|
|||
|
||||
: "${SSH:=ssh}"
|
||||
|
||||
## webapp à déployer
|
||||
## webapp à déployer et hôtes sur lesquels faire le déploiement
|
||||
confirm_webapp=
|
||||
if [ $# -eq 0 ] || [[ "$1" == -* ]]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
[ -d WEB-INF ] && webapp=. || webapp=
|
||||
read_value "Veuillez entrer la webapp à déployer" webapp "$webapp" O
|
||||
set -- "$webapp" "$@"
|
||||
confirm_webapp=1
|
||||
else
|
||||
webapp="$1"
|
||||
fi
|
||||
|
||||
## Hôtes sur lesquels faire le déploiement
|
||||
toinst_options=()
|
||||
if array_isempty hosts && [ -n "$deploy_enable" ]; then
|
||||
if array_isempty hosts && [ -n "$deploy_enable" -a -n "$webapp" ]; then
|
||||
urequire deploy
|
||||
deploy_setconf "$deploy_confname"
|
||||
if deploy_loadconf; then
|
||||
setxx webapp=abspath "$1" // basename --
|
||||
if eval "$(deploy_query -v host,wamap,protect DEST webapp rtoinst_deploy "$deploy_profile" shell "$webapp")"; then
|
||||
msg="Cette webapp sera déployée vers les hôtes suivants:
|
||||
setxx waname=abspath "$webapp" // basename --
|
||||
if eval "$(deploy_query -v host,wamap,protect DEST webapp rtoinst_deploy "$deploy_profile" shell "$waname")"; then
|
||||
msg="$waname: cette webapp sera déployée vers les hôtes suivants:
|
||||
$(array_to_lines host "" " ")"
|
||||
if [ -n "$wamap" -o -n "$protect" ]; then
|
||||
msg="$msg
|
||||
|
@ -164,9 +165,20 @@ avec le(s) paramètre(s) suivant(s):"
|
|||
array_copy hosts host
|
||||
[ -n "$wamap" ] && array_add toinst_options --wamap "$wamap"
|
||||
[ -n "$protect" ] && array_add toinst_options --protect "$protect"
|
||||
if [ -n "$confirm_webapp" ]; then
|
||||
confirm_webapp=
|
||||
set -- "$webapp" "$@"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$confirm_webapp" ]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
read_value "Veuillez entrer la webapp à déployer" webapp "$webapp" O
|
||||
set -- "$webapp" "$@"
|
||||
fi
|
||||
|
||||
array_isempty hosts && read_value "Entrez une liste d'hôtes séparés par ':'" hosts "localhost"
|
||||
fix_hosts
|
||||
|
||||
|
|
24
ruinst
24
ruinst
|
@ -219,30 +219,38 @@ fi
|
|||
################################################################################
|
||||
# Déploiement
|
||||
|
||||
## Répertoire à déployer
|
||||
## Répertoires à déployer et hôtes sur lesquels faire le déploiement
|
||||
confirm_src=
|
||||
if [ $# -eq 0 ] || [[ "$1" == -* ]] || [[ "$1" == *=* ]]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de uinst)
|
||||
read_value "Entrez le répertoire à déployer" src "." O
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
src=.
|
||||
confirm_src=1
|
||||
else
|
||||
# Enlever le répertoire à déployer. Le reste est pour uinst
|
||||
src="$1"
|
||||
shift
|
||||
fi
|
||||
|
||||
## Hôtes sur lesquels faire le déploiement
|
||||
if array_isempty hosts && [ -n "$deploy_enable" ]; then
|
||||
if array_isempty hosts && [ -n "$deploy_enable" -a -n "$src" ]; then
|
||||
urequire deploy
|
||||
deploy_setconf "$deploy_confname"
|
||||
if deploy_loadconf; then
|
||||
setxx module=abspath "$src" // basename --
|
||||
if eval "$(deploy_query -v host DEST module ruinst_deploy "" shell "$module")"; then
|
||||
check_interaction -c && einfo "Ce module sera déployé vers les hôtes suivants:
|
||||
setxx srcname=abspath "$src" // basename --
|
||||
if eval "$(deploy_query -v host DEST module ruinst_deploy "" shell "$srcname")"; then
|
||||
check_interaction -c && einfo "$srcname: ce module sera déployé vers les hôtes suivants:
|
||||
$(array_to_lines host "" " ")"
|
||||
ask_any "Voulez-vous continuer?" Oq || die
|
||||
array_copy hosts host
|
||||
confirm_src=
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$confirm_src" ]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
read_value "Entrez le répertoire à déployer" src "$src" O
|
||||
fi
|
||||
|
||||
array_isempty hosts && read_value "Entrez une liste d'hôtes séparés par ':'" hosts "localhost"
|
||||
fix_hosts
|
||||
|
||||
|
|
35
rwoinst
35
rwoinst
|
@ -124,32 +124,43 @@ parse_opts "${PRETTYOPTS[@]}" \
|
|||
|
||||
: "${SSH:=ssh}"
|
||||
|
||||
## Bundle à déployer
|
||||
## Bundle à déployer et hôtes sur lesquels faire le déploiement
|
||||
confirm_bundle=
|
||||
if [ $# -eq 0 ] || [[ "$1" == -* ]] || [[ "$1" == *=* ]]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de
|
||||
# woinst)
|
||||
case "$(dirname "$(pwd)")" in
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
case "$(basename -- "$(pwd)")" in
|
||||
*.woa|*.framework) bundle=.;;
|
||||
*) bundle=;;
|
||||
esac
|
||||
read_value "Veuillez entrer le bundle à déployer" bundle "$bundle" O
|
||||
set -- "$bundle" "$@"
|
||||
confirm_bundle=1
|
||||
else
|
||||
bundle="$1"
|
||||
fi
|
||||
|
||||
## Hôtes sur lesquels faire le déploiement
|
||||
if array_isempty hosts && [ -n "$deploy_enable" ]; then
|
||||
if array_isempty hosts && [ -n "$deploy_enable" -a -n "$bundle" ]; then
|
||||
urequire deploy
|
||||
deploy_setconf "$deploy_confname"
|
||||
if deploy_loadconf; then
|
||||
setxx wobundle=abspath "$1" // basename --
|
||||
if eval "$(deploy_query -v host DEST wobundle rwoinst_bundle "" shell "$wobundle")"; then
|
||||
check_interaction -c && einfo "Ce bundle sera déployé vers les hôtes suivants:
|
||||
setxx bundlename=abspath "$bundle" // basename --
|
||||
if eval "$(deploy_query -v host DEST wobundle rwoinst_bundle "" shell "$bundlename")"; then
|
||||
check_interaction -c && einfo "$bundlename: ce bundle sera déployé vers les hôtes suivants:
|
||||
$(array_to_lines host "" " ")"
|
||||
ask_any "Voulez-vous continuer?" Oq || die
|
||||
array_copy hosts host
|
||||
if [ -n "$confirm_bundle" ]; then
|
||||
confirm_bundle=
|
||||
set -- "$bundle" "$@"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$confirm_bundle" ]; then
|
||||
# pas d'argument, ou c'est une option (qui fait donc partie des arguments de toinst)
|
||||
read_value "Veuillez entrer la bundle à déployer" bundle "$bundle" O
|
||||
set -- "$bundle" "$@"
|
||||
fi
|
||||
|
||||
array_isempty hosts && read_value "Entrez une liste d'hôtes séparés par ':'" hosts "localhost"
|
||||
fix_hosts
|
||||
|
||||
|
@ -180,7 +191,7 @@ while [ -n "$1" ]; do
|
|||
else
|
||||
die "N'est pas un bundle valide: $(ppath "$src")"
|
||||
fi
|
||||
estep "$(ppath "$src")"
|
||||
estep "$(ppath2 "$src")"
|
||||
cp_R "$src" "$workdir" || die
|
||||
else
|
||||
die "Fichier ou répertoire introuvable: $src"
|
||||
|
|
Loading…
Reference in New Issue