nutools/lib/ulib/templates/apacheconfig/RewriteRules/update.sh

78 lines
2.4 KiB
Bash
Raw Normal View History

#!/bin/bash
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
source /etc/ulib &&
urequire DEFAULTS ||
exit 1
OENC="$UTF8"
PRIHOST=
PUBHOST=
PROXY=1
SUFFIXES=("-clr" "-ssl")
source "$scriptdir/update.conf"
function display_help() {
local OENC="$UTF8"
uecho "$scriptname: Mettre à jour RewriteRules.conf et le déployer
USAGE
$scriptname [options] [prihost [pubhost]]
OPTIONS
-f INPUT[=rewrite.rules]
-o OUTPUT[=RewriteRules.conf]
-w HTML[=rules.html]
Spécifier le fichier à traiter en entrée et les fichiers à générer en
sortie. Si l'option -f n'est pas spécifiée, consulter la description de
l'option -s pour le comportement par défaut.
-s SUFFIX
Ajouter un suffixe à la liste des suffixes considérés pour les fichiers
en entrée. Cette option est ignorée si l'option -f est spécifiée. Par
défaut, le fichier rewrite.rules puis les fichiers de la forme
rewrite\$SUFFIX.rules sont traités s'ils existent.
La liste des suffixes par défaut est (${SUFFIXES[*]})
-d, --deploy
Déployer la configuration avec uinst après la génération
-n, --no-proxy
Ne pas générer les ACLs pour les réécritures de type proxy"
}
input=
rules=
html=--NOT-SET--
suffixes=()
deploy=
proxy="$PROXY"
parse_opts \
--help '$exit_with display_help' \
-f:,--input: input= \
-o:,--output: rules= \
-w:,--html:,--html: html= \
-s:,--suffix: suffixes \
-d,--deploy deploy=1 \
-n,--no-proxy proxy= \
"${PRETTYOPTS[@]}" @ args -- "$@" && set -- "${args[@]}" || die "$args"
prihost="${1:-$PRIHOST}"
pubhost="${2:-${PUBHOST:-$prihost}}"
[ -n "$prihost" ] || die "Il faut spécifier l'hôte pour lequel faire la génération. Modifiez le cas échéant le fichier update.conf"
if [ -n "$input" ]; then
[ -n "$rules" ] || rules=RewriteRules.conf
[ -n "$html" ] || html=rules.html
[ "$html" == "--NOT-SET--" ] && html=
mkRewriteRules ${proxy:+-p} -f "$input" -o "$rules" ${html:+-w "$html"} "$pubhost"
else
for suffix in "" "${SUFFIXES[@]}"; do
input="$scriptdir/rewrite$suffix.rules"
rules="$scriptdir/RewriteRules$suffix.conf"
html="$scriptdir/rules$suffix.html"
[ -f "$input" ] || continue
mkRewriteRules ${proxy:+-p} -f "$input" -o "$rules" -w "$html" "$pubhost"
done
fi
[ -n "$deploy" ] && ruinst -h "root@$prihost" "$scriptdir" -- -y