2014-10-23 15:47:21 +04:00
|
|
|
#!/bin/bash
|
|
|
|
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
2016-12-30 18:10:59 +04:00
|
|
|
source /etc/ulibauto || exit 1
|
2014-10-23 15:47:21 +04:00
|
|
|
|
|
|
|
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
|