aboutsummaryrefslogtreecommitdiffstats
path: root/community/caddy/caddy.initd
diff options
context:
space:
mode:
Diffstat (limited to 'community/caddy/caddy.initd')
-rw-r--r--community/caddy/caddy.initd37
1 files changed, 16 insertions, 21 deletions
diff --git a/community/caddy/caddy.initd b/community/caddy/caddy.initd
index 22d9fab90a0..ba95cd37296 100644
--- a/community/caddy/caddy.initd
+++ b/community/caddy/caddy.initd
@@ -1,13 +1,19 @@
#!/sbin/openrc-run
+supervisor=supervise-daemon
-name="Caddy webserver"
-command="/usr/sbin/caddy"
-command_args="$CADDY_OPTS"
-pidfile="/var/run/caddy.pid"
-command_background=yes
+name="Caddy web server"
+description="Fast, multi-platform web server with automatic HTTPS"
+description_checkconfig="Check configuration"
+description_reload="Reload configuration without downtime"
+
+: ${caddy_opts:="--config /etc/caddy/Caddyfile --adapter caddyfile"}
+
+command=/usr/sbin/caddy
+command_args="run $caddy_opts"
command_user=caddy:caddy
extra_commands="checkconfig"
extra_started_commands="reload"
+capabilities="^cap_net_bind_service"
depend() {
need net localmount
@@ -15,30 +21,19 @@ depend() {
}
checkconfig() {
- ebegin "Checking configuration for $RC_SVCNAME"
- su -s /bin/sh ${command_user%:*} -c "$command $command_args -validate"
+ ebegin "Checking configuration for $name"
+ su ${command_user%:*} -s /bin/sh -c "$command validate $caddy_opts"
eend $?
}
reload() {
- checkconfig || return $?
- ebegin "Reloading $RC_SVCNAME"
- case "$supervisor" in
- "") start-stop-daemon --signal USR1 --pidfile "$pidfile";;
- supervise-daemon) supervise-daemon $RC_SVCNAME --signal USR1;;
- *) eend 1 "Unsupported supervisor: $supervisor";;
- esac
+ ebegin "Reloading $name"
+ su ${command_user%:*} -s /bin/sh -c "$command reload $caddy_opts"
eend $?
}
-start_pre() {
- if [ "$RC_CMD" != "restart" ]; then
- checkconfig || return $?
- fi
-}
-
stop_pre() {
- if [ "$RC_CMD" == "restart" ]; then
+ if [ "$RC_CMD" = restart ]; then
checkconfig || return $?
fi
}