début du support de .toinst.conf
This commit is contained in:
parent
a84775ce48
commit
9084e7eb34
45
toinst
45
toinst
|
@ -66,7 +66,7 @@ OPTIONS
|
||||||
être spécifiés en les séparant par des virgules. Si src est mentionné
|
être spécifiés en les séparant par des virgules. Si src est mentionné
|
||||||
plusieurs fois, e.g src:dest1,src:dest2 alors la webapp src est déployée
|
plusieurs fois, e.g src:dest1,src:dest2 alors la webapp src est déployée
|
||||||
plusieurs fois avec des noms distincts.
|
plusieurs fois avec des noms distincts.
|
||||||
--protect PRMAPS
|
--protect PROTECTS
|
||||||
--exclude EXCLUDES
|
--exclude EXCLUDES
|
||||||
--replace-excludes EXCLUDES
|
--replace-excludes EXCLUDES
|
||||||
--rsync-option RSYNC_OPTIONS
|
--rsync-option RSYNC_OPTIONS
|
||||||
|
@ -83,7 +83,11 @@ OPTIONS
|
||||||
-r, --restart-only
|
-r, --restart-only
|
||||||
Ne pas faire le déploiement. Redémarrer uniquement l'application.
|
Ne pas faire le déploiement. Redémarrer uniquement l'application.
|
||||||
--fake
|
--fake
|
||||||
Afficher simplement ce qui serait fait. Ne pas le faire réellement."
|
Afficher simplement ce qui serait fait. Ne pas le faire réellement.
|
||||||
|
--config-template
|
||||||
|
Créer un modèle de configuration dans le répertoire des webapp
|
||||||
|
spécifiées. Si aucune webapp n'est spécifiée, créer le fichier dans le
|
||||||
|
répertoire courant."
|
||||||
}
|
}
|
||||||
|
|
||||||
VARS=(
|
VARS=(
|
||||||
|
@ -93,7 +97,7 @@ VARS=(
|
||||||
BACKUP RESTART
|
BACKUP RESTART
|
||||||
)
|
)
|
||||||
ARRAYS=(
|
ARRAYS=(
|
||||||
WAMAPS PRMAPS EXCLUDES RSYNC_OPTIONS REPLACE_RSYNC_OPTIONS
|
WAMAPS PROTECTS EXCLUDES RSYNC_OPTIONS REPLACE_RSYNC_OPTIONS
|
||||||
)
|
)
|
||||||
function __reset_vars() {
|
function __reset_vars() {
|
||||||
local var
|
local var
|
||||||
|
@ -178,7 +182,7 @@ manager_url=
|
||||||
manager_user=
|
manager_user=
|
||||||
manager_password=
|
manager_password=
|
||||||
wamaps=()
|
wamaps=()
|
||||||
prmaps=()
|
protects=()
|
||||||
excludes=()
|
excludes=()
|
||||||
rsync_options=(-rptL --delete --exclude /.git/)
|
rsync_options=(-rptL --delete --exclude /.git/)
|
||||||
replace_rsync_options=()
|
replace_rsync_options=()
|
||||||
|
@ -207,6 +211,7 @@ args=(
|
||||||
-n,--no-restart restart=0
|
-n,--no-restart restart=0
|
||||||
-r,--restart-only action=restart
|
-r,--restart-only action=restart
|
||||||
--fake fake=1
|
--fake fake=1
|
||||||
|
--config-template action=config-template
|
||||||
)
|
)
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
parse_args "$@"; set -- "${args[@]}"
|
||||||
|
|
||||||
|
@ -367,7 +372,9 @@ fi
|
||||||
# A partir de la liste des webapps et de WAMAPS, construire une liste de couples
|
# A partir de la liste des webapps et de WAMAPS, construire une liste de couples
|
||||||
# waname:src pour la sauvegarde et/ou le déploiement
|
# waname:src pour la sauvegarde et/ou le déploiement
|
||||||
|
|
||||||
if [ $# -eq 0 ]; then
|
[ -n "$fake" -o "$action" == config-template ] && require_webapps= || require_webapps=1
|
||||||
|
|
||||||
|
if [ $# -eq 0 -a -n "$require_webapps" ]; then
|
||||||
[ -d WEB-INF ] && src=. || src=
|
[ -d WEB-INF ] && src=. || src=
|
||||||
read_value "Veuillez entrer la webapp à déployer" src "$src" O
|
read_value "Veuillez entrer la webapp à déployer" src "$src" O
|
||||||
set -- "$src"
|
set -- "$src"
|
||||||
|
@ -393,7 +400,7 @@ for src in "$@"; do
|
||||||
eerror "$src: fichier ou répertoire introuvable"
|
eerror "$src: fichier ou répertoire introuvable"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
[ ${#srcs[*]} -gt 0 -o -n "$fake" ] || die
|
[ ${#srcs[*]} -gt 0 -o -z "$require_webapps" ] || die
|
||||||
|
|
||||||
deploymaps=()
|
deploymaps=()
|
||||||
for src in "${srcs[@]}"; do
|
for src in "${srcs[@]}"; do
|
||||||
|
@ -414,6 +421,32 @@ done
|
||||||
################################################################################
|
################################################################################
|
||||||
# Maintenant, nous pouvons faire les actions
|
# Maintenant, nous pouvons faire les actions
|
||||||
|
|
||||||
|
if [ "$action" == config-template ]; then
|
||||||
|
if [ ${#deploymaps[*]} -gt 0 ]; then
|
||||||
|
toinstconfname=.toinst.conf
|
||||||
|
else
|
||||||
|
toinstconfname=toinst.conf
|
||||||
|
deploymaps=(:.)
|
||||||
|
fi
|
||||||
|
for deploymap in "${deploymaps[@]}"; do
|
||||||
|
splitpair "$deploymap" waname src
|
||||||
|
toinstconf="$src/$toinstconfname"
|
||||||
|
if [ -f "$toinstconf" ]; then
|
||||||
|
estepi "$(ppath "$toinstconf"): configuration déjà existante"
|
||||||
|
else
|
||||||
|
estep "$(ppath "$toinstconf")"
|
||||||
|
echo >"$toinstconf" "# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
||||||
|
|
||||||
|
# Fichiers à exclure de la source lors du déploiement
|
||||||
|
#$(echo_seta2 EXCLUDES)
|
||||||
|
|
||||||
|
# Fichiers à protéger dans la destination lors du déploiement
|
||||||
|
#$(echo_seta2 PROTECTS)"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
## Sauvegarde
|
## Sauvegarde
|
||||||
if [ -n "$BACKUP" -o "$action" == backup ]; then
|
if [ -n "$BACKUP" -o "$action" == backup ]; then
|
||||||
if [ -n "$fake" ]; then
|
if [ -n "$fake" ]; then
|
||||||
|
|
Loading…
Reference in New Issue