+### -*-sh-*-
+
+prog=${0##*/}
+
+usage () { echo "usage: $prog $usage"; }
+fail () { echo >&2 "$prog: $*"; exit 1; }
+fail_usage () { usage >&2; exit 1; }
+
+run_as_user () {
+ case $(id -un) in
+ $user) ;;
+ *) exec sudo -u$user "$0" "$@" ;;
+ esac
+ HOME=$home; export HOME
+ PATH=$home/bin:/usr/local/bin:/bin:/usr/bin; export PATH
+}
+
+prepare_tmp () {
+ tag=$1
+
+ tmp=$home/tmp/$tag.$$
+ rm -rf $tmp
+ mkdir $tmp
+ trap 'cd $home; rm -rf $tmp' EXIT INT TERM
+}
+
+make_le_conf () {
+ { cat $home/le.conf.skel
+ echo "work-dir = $tmp"
+ echo
+ case $# in
+ 0) ;;
+ *)
+ map="webroot-map = {" sep=" "
+ for san in "$@"; do
+ map="$map$sep\"$san\": \"$home/webroot\"" sep=", "
+ done
+ map="$map }"
+ echo "$map"
+ ;;
+ esac
+ } >$tmp/le.conf
+}
\ No newline at end of file