AjoutĀ : etc/nginx/org/heureux-cyclage/burettes
[lhc/admin.git] / srv / ateliers / etc / nginx / org / heureux-cyclage / burettes / install
diff --git a/srv/ateliers/etc/nginx/org/heureux-cyclage/burettes/install b/srv/ateliers/etc/nginx/org/heureux-cyclage/burettes/install
new file mode 100755 (executable)
index 0000000..5ad51de
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/sh -eu
+# SYNTAX: $site
+# DESCRIPTION: install nginx(1) site $site
+
+# ACTION: initialize from ./
+       test -L "$0" && tool="$(readlink -e "$0")" || tool=$0
+       tool=$(readlink -e "${tool%/*}"/...)
+       . "$tool"/lib/install.sh
+# ACTION: initialize $sv from ./etc/$sv/
+       sv=${cmd##*/etc/}
+       sv=${sv%%/*}
+# ACTION: initialize $sv from ./sys/$sv/
+       nginx_home=$("$tool"/cat sys/"$sv"/home)
+       nginx_user=$("$tool"/cat sys/"$sv"/user)
+# ACTION: initialize $site from ./etc/$sv/$site/install
+       site=${cmd##*/"$sv"/}
+       site=${site%/install}
+       site=${1:-$site}
+# ACTION: install from ./etc/$sv/$site/
+       www_user=$("$tool"/cat sys/"$sv"/"$site"/user) ||
+       www_user=$(printf %s www-"$site" | tr -c '[:alnum:]' -)
+       www_home=$("$tool"/cat sys/"$sv"/"$site"/home) ||
+       www_home="$nginx_home"/"$site"
+       nginx_log_home=$("$tool"/cat sys/"$sv"/log/home)
+       nginx_log_user=$("$tool"/cat sys/"$sv"/log/user)
+       "$tool"/etc/user/adduser "$www_user" \
+        --disabled-login \
+        --disabled-password \
+        --group \
+        --home "$www_home" \
+        --shell /bin/false \
+        --system
+       "$tool"/ssh-sudo \
+               install -D -d -m 2750 -o "$www_user" -g "$www_user" \
+                "$www_home"
+       "$tool"/ssh-sudo \
+               adduser "$nginx_user" "$www_user"
+       "$tool"/ssh-sudo \
+               install -D -d -m 2750 -o "$nginx_log_user" -g "$nginx_log_user" \
+                "$nginx_log_home"/"$site"
+       "$tool"/ssh-sudo \
+               install -D -d -m 750 -o root -g root \
+                /etc/"$sv"/"$site"
+       etckeeper_exit
+       etckeeper_exit () { true; }
+       "$tool"/install etc/"$sv"/"$site"