Intégration de la branche release-2.20.0
This commit is contained in:
commit
e9fbe9d7c3
@ -1,3 +1,10 @@
|
|||||||
|
## Version 2.20.0 du 12/11/2015-15:41
|
||||||
|
|
||||||
|
16d95d2 apache_autoconf(): déploiement des certificats autorité
|
||||||
|
775a021 nutools: ajout de cpvcs() pour copier avec la sémantique de cpnovcs() les fichiers de VCS aussi
|
||||||
|
1ca0ee5 runs: ajout des options --force, --copy-links et --with-vcs à ref()
|
||||||
|
91686fb templatectl: il n'est plus nécessaire de spécifier explicitement fichier.template
|
||||||
|
|
||||||
## Version 2.19.0 du 02/11/2015-11:03
|
## Version 2.19.0 du 02/11/2015-11:03
|
||||||
|
|
||||||
37f3bff apacheconfig: diverses corrections de bugs
|
37f3bff apacheconfig: diverses corrections de bugs
|
||||||
|
@ -1 +1 @@
|
|||||||
2.19.0
|
2.20.0
|
||||||
|
@ -1 +1 @@
|
|||||||
009006000
|
009007000
|
||||||
|
@ -259,15 +259,6 @@ function apache_autoconf() {
|
|||||||
[ -n "$wwwdir" ] || wwwdir="$autoconfdir/www"
|
[ -n "$wwwdir" ] || wwwdir="$autoconfdir/www"
|
||||||
[ -n "$certsconfdir" ] || certsconfdir="$autoconfdir/certsconf"
|
[ -n "$certsconfdir" ] || certsconfdir="$autoconfdir/certsconf"
|
||||||
[ -n "$rrdir" ] || rrdir="$autoconfdir/RewriteRules"
|
[ -n "$rrdir" ] || rrdir="$autoconfdir/RewriteRules"
|
||||||
if [ -d "$certsconfdir" ]; then
|
|
||||||
if [ -z "$certsdir" ]; then
|
|
||||||
eerror "CERTSDIR est requis si --certsconfdir est spécifié"
|
|
||||||
return 1
|
|
||||||
elif [ ! -d "$certsdir" ]; then
|
|
||||||
eerror "$certsdir: répertoire invalide"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Faire un script sed pour remplacer les variables spécifiées par leur
|
# Faire un script sed pour remplacer les variables spécifiées par leur
|
||||||
# valeur dans les fichiers
|
# valeur dans les fichiers
|
||||||
@ -284,10 +275,10 @@ function apache_autoconf() {
|
|||||||
ac_set_tmpfile FILLTEMP
|
ac_set_tmpfile FILLTEMP
|
||||||
|
|
||||||
# Copie des certificats
|
# Copie des certificats
|
||||||
local modified conf
|
local modified rehash conf
|
||||||
if [ -d "$certsconfdir" ]; then
|
if [ -d "$certsconfdir" ]; then
|
||||||
local -a certsconfs
|
local -a certsconfs certspems
|
||||||
local certsconf cert key ca
|
local certsconf certspem cert key ca
|
||||||
array_addu FILLVARS cert
|
array_addu FILLVARS cert
|
||||||
array_addu FILLVARS key
|
array_addu FILLVARS key
|
||||||
array_addu FILLVARS ca
|
array_addu FILLVARS ca
|
||||||
@ -295,10 +286,24 @@ function apache_autoconf() {
|
|||||||
etitle "Installation des certificats"
|
etitle "Installation des certificats"
|
||||||
array_lsfiles certsconfs "$certsconfdir" "*.conf"
|
array_lsfiles certsconfs "$certsconfdir" "*.conf"
|
||||||
for certsconf in "${certsconfs[@]}"; do
|
for certsconf in "${certsconfs[@]}"; do
|
||||||
|
if [ -z "$certsdir" ]; then
|
||||||
|
eerror "CERTSDIR est requis si --certsconfdir est spécifié"
|
||||||
|
return 1
|
||||||
|
elif [ ! -d "$certsdir" ]; then
|
||||||
|
eerror "$certsdir: répertoire invalide"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
apache_resolvecert "$certsconf" "$certsdir" cert key ca || return 1
|
apache_resolvecert "$certsconf" "$certsdir" cert key ca || return 1
|
||||||
apache_addcert -y "$cert" "$key" "$ca"
|
apache_addcert -y "$cert" "$key" "$ca"
|
||||||
modified=1
|
modified=1
|
||||||
done
|
done
|
||||||
|
array_lsfiles certspems "$certsconfdir" "*.crt" "*.pem"
|
||||||
|
for certspem in "${certspems[@]}"; do
|
||||||
|
if copy_update "$certspem" "$APACHESSLCERTSDIR/$(basename -- "$certspem")"; then
|
||||||
|
modified=1
|
||||||
|
rehash=1
|
||||||
|
fi
|
||||||
|
done
|
||||||
eend
|
eend
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -499,8 +504,11 @@ s#@@ca@@#$APACHESSLCERTSDIR/$(basename "$ca")#g
|
|||||||
eend
|
eend
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$modified" -a -n "$restart" ]; then
|
if [ -n "$modified" ]; then
|
||||||
|
[ -n "$rehash" ] && elinedots "Hashage des certificats" c_rehash
|
||||||
|
if [ -n "$restart" ]; then
|
||||||
estep "Redémarrage d'apache"
|
estep "Redémarrage d'apache"
|
||||||
"$APACHECTL" restart
|
"$APACHECTL" restart
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
@ -1193,6 +1193,7 @@ function __cpdir() {
|
|||||||
}
|
}
|
||||||
__CPNOVCS_RSYNC_SLOW=1 # synchro potentiellement plus lente, mais plus fidèle (option -c)
|
__CPNOVCS_RSYNC_SLOW=1 # synchro potentiellement plus lente, mais plus fidèle (option -c)
|
||||||
__CPNOVCS_RSYNC_ARGS=(-q)
|
__CPNOVCS_RSYNC_ARGS=(-q)
|
||||||
|
__CPNOVCS_INCLUDE_VCS= # ne pas ignorer les répertoires de VCS
|
||||||
function cpnovcs() {
|
function cpnovcs() {
|
||||||
# copier le fichier/répertoire $1 *dans* le *répertoire* $2 avec rsync. Les
|
# copier le fichier/répertoire $1 *dans* le *répertoire* $2 avec rsync. Les
|
||||||
# options du tableau __CPNOVCS_RSYNC_ARGS sont rajoutées aux options standard
|
# options du tableau __CPNOVCS_RSYNC_ARGS sont rajoutées aux options standard
|
||||||
@ -1206,11 +1207,13 @@ function cpnovcs() {
|
|||||||
local src="$1" destdir="$2"
|
local src="$1" destdir="$2"
|
||||||
[ -d "$destdir" ] || mkdir -p "$destdir" || return 1
|
[ -d "$destdir" ] || mkdir -p "$destdir" || return 1
|
||||||
if progexists rsync; then
|
if progexists rsync; then
|
||||||
|
local -a novcs
|
||||||
|
if [ -z "$__CPNOVCS_INCLUDE_VCS" ]; then
|
||||||
local gitexclude=/.git/
|
local gitexclude=/.git/
|
||||||
if [ "${src%/}" == "$src" ]; then
|
[ "${src%/}" == "$src" ] && gitexclude="/$(basename -- "$src")$gitexclude"
|
||||||
gitexclude="/$(basename -- "$src")$gitexclude"
|
novcs=(--exclude CVS/ --exclude .svn/ --exclude "$gitexclude")
|
||||||
fi
|
fi
|
||||||
rsync -a ${__CPNOVCS_RSYNC_SLOW:+-c} --exclude CVS/ --exclude .svn/ --exclude "$gitexclude" "${__CPNOVCS_RSYNC_ARGS[@]}" "$src" "$destdir/"
|
rsync -a ${__CPNOVCS_RSYNC_SLOW:+-c} "${novcs[@]}" "${__CPNOVCS_RSYNC_ARGS[@]}" "$src" "$destdir/"
|
||||||
elif [ "${src%/}" != "$src" ]; then
|
elif [ "${src%/}" != "$src" ]; then
|
||||||
__cpdir "$src" "$destdir"
|
__cpdir "$src" "$destdir"
|
||||||
else
|
else
|
||||||
@ -1219,6 +1222,11 @@ function cpnovcs() {
|
|||||||
__cpdir "$src" "$destdir/$srcname"
|
__cpdir "$src" "$destdir/$srcname"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
function cpvcs() {
|
||||||
|
# comme cpnovcs, mais ne pas ignorer les répertoires de VCS
|
||||||
|
local __CPNOVCS_INCLUDE_VCS=1
|
||||||
|
cpnovcs "$@"
|
||||||
|
}
|
||||||
function cpdirnovcs() {
|
function cpdirnovcs() {
|
||||||
# Le pendant de cpdir, mais en ignorant les sous-répertoires de VCS: copier le
|
# Le pendant de cpdir, mais en ignorant les sous-répertoires de VCS: copier le
|
||||||
# contenu du répertoire $1 dans le répertoire $2
|
# contenu du répertoire $1 dans le répertoire $2
|
||||||
|
@ -1300,10 +1300,17 @@ function runs_action_desc() {
|
|||||||
function ref() {
|
function ref() {
|
||||||
local -a __args
|
local -a __args
|
||||||
parse_opts + \
|
parse_opts + \
|
||||||
|
-r,--required,-m,--mandatory '$:' \
|
||||||
|
-f,--required-file '$:' \
|
||||||
|
-d,--required-dir '$:' \
|
||||||
-s:,--sconf: '$:' \
|
-s:,--sconf: '$:' \
|
||||||
|
--rs,--rsconf,--required-sconf '$:' \
|
||||||
-V:,--refvar: '$:' \
|
-V:,--refvar: '$:' \
|
||||||
-v:,--vars: '$:' \
|
-v:,--vars: '$:' \
|
||||||
-l:,--lconf: '$:' \
|
-l:,--lconf: '$:' \
|
||||||
|
--force '$:' \
|
||||||
|
--copy-links '$:' \
|
||||||
|
--with-vcs '$:' \
|
||||||
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
||||||
runs_var "$@"
|
runs_var "$@"
|
||||||
RUNSVARDESC=
|
RUNSVARDESC=
|
||||||
@ -1343,10 +1350,17 @@ function runs_action_dump() {
|
|||||||
function ref() {
|
function ref() {
|
||||||
local -a __args
|
local -a __args
|
||||||
parse_opts + \
|
parse_opts + \
|
||||||
|
-r,--required,-m,--mandatory '$:' \
|
||||||
|
-f,--required-file '$:' \
|
||||||
|
-d,--required-dir '$:' \
|
||||||
-s:,--sconf: '$:' \
|
-s:,--sconf: '$:' \
|
||||||
|
--rs,--rsconf,--required-sconf '$:' \
|
||||||
-V:,--refvar: '$:' \
|
-V:,--refvar: '$:' \
|
||||||
-v:,--vars: '$:' \
|
-v:,--vars: '$:' \
|
||||||
-l:,--lconf: '$:' \
|
-l:,--lconf: '$:' \
|
||||||
|
--force '$:' \
|
||||||
|
--copy-links '$:' \
|
||||||
|
--with-vcs '$:' \
|
||||||
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
||||||
runs_var "$@"
|
runs_var "$@"
|
||||||
RUNSVARDESC=
|
RUNSVARDESC=
|
||||||
@ -1417,6 +1431,9 @@ function runs_action_run() {
|
|||||||
-V:,--refvar: __refvarname= \
|
-V:,--refvar: __refvarname= \
|
||||||
-v:,--vars: '$:' \
|
-v:,--vars: '$:' \
|
||||||
-l:,--lconf: '$:' \
|
-l:,--lconf: '$:' \
|
||||||
|
--force '$:' \
|
||||||
|
--copy-links '$:' \
|
||||||
|
--with-vcs '$:' \
|
||||||
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
||||||
|
|
||||||
if [ -n "$__shellconf" ]; then
|
if [ -n "$__shellconf" ]; then
|
||||||
@ -1584,8 +1601,8 @@ function runs_action_export() {
|
|||||||
local -a __args
|
local -a __args
|
||||||
local __ref __name __value __copy __required __rdir __rfile __rsconf
|
local __ref __name __value __copy __required __rdir __rfile __rsconf
|
||||||
local __shellconfs __shellconf __refvarname=refdir __refvar __shellvars
|
local __shellconfs __shellconf __refvarname=refdir __refvar __shellvars
|
||||||
local __lineconfs __lineconf
|
local __lineconfs __lineconf __force __copy_links __novcs=1
|
||||||
local __tmpconf __wildconf
|
local __tmpconf __wildconf __cpcmd
|
||||||
parse_opts + \
|
parse_opts + \
|
||||||
-r,--required,-m,--mandatory __required=1 \
|
-r,--required,-m,--mandatory __required=1 \
|
||||||
-f,--required-file '$__required=1; __rfile=1' \
|
-f,--required-file '$__required=1; __rfile=1' \
|
||||||
@ -1595,6 +1612,9 @@ function runs_action_export() {
|
|||||||
-V:,--refvar: __refvarname= \
|
-V:,--refvar: __refvarname= \
|
||||||
-v:,--vars: __shellvars= \
|
-v:,--vars: __shellvars= \
|
||||||
-l:,--lconf: __lineconf= \
|
-l:,--lconf: __lineconf= \
|
||||||
|
--force __force=1 \
|
||||||
|
--copy-links __copy_links=1 \
|
||||||
|
--with-vcs __novcs= \
|
||||||
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
@ __args -- "$@" && set -- "${__args[@]}" || die "$__args"
|
||||||
|
|
||||||
if [ -n "$__shellconf" ]; then
|
if [ -n "$__shellconf" ]; then
|
||||||
@ -1665,6 +1685,16 @@ function runs_action_export() {
|
|||||||
[ -n "$__shellconf" -o -n "$__lineconf" ] && die "-f est incompatible avec -s et -l"
|
[ -n "$__shellconf" -o -n "$__lineconf" ] && die "-f est incompatible avec -s et -l"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# utiliser par défaut cpnovcs pour la copie des fichiers sauf si
|
||||||
|
# --with-vcs est utilisé
|
||||||
|
[ -n "$__novcs" ] && __cpcmd=cpnovcs || __cpcmd=cpvcs
|
||||||
|
local -a __CPNOVCS_RSYNC_ARGS
|
||||||
|
if [ -n "$__copy_links" ]; then
|
||||||
|
__CPNOVCS_RSYNC_ARGS=(--copy-links)
|
||||||
|
else
|
||||||
|
__CPNOVCS_RSYNC_ARGS=(--copy-unsafe-links)
|
||||||
|
fi
|
||||||
|
|
||||||
for __ref in "$@"; do
|
for __ref in "$@"; do
|
||||||
if [ -n "$__shellconf" -a -z "$__shellvars" ]; then
|
if [ -n "$__shellconf" -a -z "$__shellvars" ]; then
|
||||||
ewarn "L'option -v n'a pas été spécifiée pour $__ref"
|
ewarn "L'option -v n'a pas été spécifiée pour $__ref"
|
||||||
@ -1702,6 +1732,9 @@ function runs_action_export() {
|
|||||||
RUNSVARDESC=
|
RUNSVARDESC=
|
||||||
array_add RUNSREFS "$__name"
|
array_add RUNSREFS "$__name"
|
||||||
|
|
||||||
|
# options de copie
|
||||||
|
[ -n "$__force" ] && __copy=1
|
||||||
|
|
||||||
if [ -n "$__copy" ]; then
|
if [ -n "$__copy" ]; then
|
||||||
if [ -n "$__shellconf" ]; then
|
if [ -n "$__shellconf" ]; then
|
||||||
# copier les fichiers mentionnés dans le fichier de
|
# copier les fichiers mentionnés dans le fichier de
|
||||||
@ -1710,7 +1743,6 @@ function runs_action_export() {
|
|||||||
mkdirof "$RUNSROOTDIR$__value"
|
mkdirof "$RUNSROOTDIR$__value"
|
||||||
if [ -n "$__shellvars" ]; then
|
if [ -n "$__shellvars" ]; then
|
||||||
(
|
(
|
||||||
__CPNOVCS_RSYNC_ARGS=(--copy-unsafe-links)
|
|
||||||
array_split __shellvars "$__shellvars" ,
|
array_split __shellvars "$__shellvars" ,
|
||||||
splitwcs "$__shellconf" __tmpconf __wildconf
|
splitwcs "$__shellconf" __tmpconf __wildconf
|
||||||
if [ -n "$__wildconf" ]; then
|
if [ -n "$__wildconf" ]; then
|
||||||
@ -1729,7 +1761,7 @@ function runs_action_export() {
|
|||||||
for __shellvar in "${__shellvars[@]}"; do
|
for __shellvar in "${__shellvars[@]}"; do
|
||||||
[ -n "${!__shellvar}" ] || continue
|
[ -n "${!__shellvar}" ] || continue
|
||||||
estep "... Copie de ${!__shellvar}"
|
estep "... Copie de ${!__shellvar}"
|
||||||
cpnovcs "$__value/${!__shellvar}" "$(dirname "$RUNSROOTDIR$__value/${!__shellvar}")"
|
"$__cpcmd" "$__value/${!__shellvar}" "$(dirname "$RUNSROOTDIR$__value/${!__shellvar}")"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
)
|
)
|
||||||
@ -1740,7 +1772,6 @@ function runs_action_export() {
|
|||||||
estep "Vérification du répertoire $(ppath "$__value")"
|
estep "Vérification du répertoire $(ppath "$__value")"
|
||||||
mkdirof "$RUNSROOTDIR$__value"
|
mkdirof "$RUNSROOTDIR$__value"
|
||||||
(
|
(
|
||||||
__CPNOVCS_RSYNC_ARGS=(--copy-unsafe-links)
|
|
||||||
splitwcs "$__lineconf" __tmpconf __wildconf
|
splitwcs "$__lineconf" __tmpconf __wildconf
|
||||||
if [ -n "$__wildconf" ]; then
|
if [ -n "$__wildconf" ]; then
|
||||||
array_lsall __lineconfs "$__tmpconf" "$__wildconf"
|
array_lsall __lineconfs "$__tmpconf" "$__wildconf"
|
||||||
@ -1752,15 +1783,15 @@ function runs_action_export() {
|
|||||||
array_from_lines __relpaths "$(<"$__lineconf" filter_conf)"
|
array_from_lines __relpaths "$(<"$__lineconf" filter_conf)"
|
||||||
for __relpath in "${__relpaths[@]}"; do
|
for __relpath in "${__relpaths[@]}"; do
|
||||||
estep "... Copie de $__relpath"
|
estep "... Copie de $__relpath"
|
||||||
cpnovcs "$__value/$__relpath" "$(dirname "$RUNSROOTDIR$__value/$__relpath")"
|
"$__cpcmd" "$__value/$__relpath" "$(dirname "$RUNSROOTDIR$__value/$__relpath")"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
)
|
)
|
||||||
elif [ ! -e "$RUNSROOTDIR$__value" ]; then
|
else
|
||||||
# copie standard
|
# copie standard
|
||||||
estep "Copie de $(ppath "$__value")"
|
estep "Copie de $(ppath "$__value")"
|
||||||
mkdirof "$RUNSROOTDIR$__value"
|
mkdirof "$RUNSROOTDIR$__value"
|
||||||
cpnovcs "$__value" "$(dirname "$RUNSROOTDIR$__value")"
|
"$__cpcmd" "$__value" "$(dirname "$RUNSROOTDIR$__value")"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -6,9 +6,11 @@ uprovide template
|
|||||||
urequire base
|
urequire base
|
||||||
|
|
||||||
function __template_prel_abspath() {
|
function __template_prel_abspath() {
|
||||||
# afficher le chemin absolu du fichier $1 si on est dans le répertoire de
|
# afficher le chemin absolu du fichier $1. Si $1 est un chemin relatif, le
|
||||||
# destination $2, sinon l'exprimer par rapport au répertoire de destination
|
# répertoire de référence pour le calcul du chemin absolu dépend du
|
||||||
# $2 si c'est un chemin relatif.
|
# répertoire courant: si l'on est dans un des sous-répertoires du répertoire
|
||||||
|
# de destination $2, calculer le chemin absolu par rapport au répertoire
|
||||||
|
# courant. Sinon, l'exprimer par rapport à $2.
|
||||||
if withinpath "$2" "$(pwd)"; then
|
if withinpath "$2" "$(pwd)"; then
|
||||||
abspath "$1"
|
abspath "$1"
|
||||||
else
|
else
|
||||||
@ -259,6 +261,10 @@ function template_merge() {
|
|||||||
srcspec="${srcspec#$destdir}"
|
srcspec="${srcspec#$destdir}"
|
||||||
|
|
||||||
for srcdir in "${srcdirs[@]}"; do
|
for srcdir in "${srcdirs[@]}"; do
|
||||||
|
if [ -z "$template" -a ! -e "$srcdir$srcspec" -a -e "$srcdir$srcspec.template" ]; then
|
||||||
|
srcspec="$srcspec.template"
|
||||||
|
template=1
|
||||||
|
fi
|
||||||
[ -e "$srcdir$srcspec" ] || continue
|
[ -e "$srcdir$srcspec" ] || continue
|
||||||
ebegin "$(basename -- "$srcdir") --> $(ppath "$destdir$srcspec")"
|
ebegin "$(basename -- "$srcdir") --> $(ppath "$destdir$srcspec")"
|
||||||
s=0
|
s=0
|
||||||
|
0
lib/ulib/templates/runsconfig/script.template → lib/ulib/templates/runsconfig/script.rs.template
Executable file → Normal file
0
lib/ulib/templates/runsconfig/script.template → lib/ulib/templates/runsconfig/script.rs.template
Executable file → Normal file
Loading…
Reference in New Issue
Block a user