chiark / gitweb /
7b4aab1775014c49624fde3dcf2d15171230568f
[distorted-letsencrypt] / lib / lib.sh
1 ### -*-sh-*-
2
3 prog=${0##*/}
4
5 usage () { echo "usage: $prog $usage"; }
6 fail () { echo >&2 "$prog: $*"; exit 1; }
7 fail_usage () { usage >&2; exit 1; }
8
9 run_as_user () {
10   case $(id -un) in
11     $user) ;;
12     *) exec sudo -u$user "$0" "$@" ;;
13   esac
14   HOME=$home; export HOME
15   PATH=$home/bin:/usr/local/bin:/bin:/usr/bin; export PATH
16 }
17
18 prepare_tmp () {
19   tag=$1
20
21   tmp=$home/tmp/$tag.$$
22   rm -rf $tmp
23   mkdir $tmp
24   trap 'cd $home; rm -rf $tmp' EXIT INT TERM
25 }
26
27 make_le_conf () {
28   { cat $home/le.conf.skel
29     echo "work-dir = $tmp"
30     echo
31     case $# in
32       0) ;;
33       *)
34         map="webroot-map = {" sep=" "
35         for san in "$@"; do
36           map="$map$sep\"$san\": \"$home/webroot\"" sep=", "
37         done
38         map="$map }"
39         echo "$map"
40         ;;
41     esac
42   } >$tmp/le.conf
43 }