#!/sbin/openrc-run
  
name="$RC_SVCNAME"
cfgfile="/etc/conf.d/$RC_SVCNAME.conf"
pidfile="/run/$RC_SVCNAME.pid"
working_directory="/usr/share/webapps/authentik"
command="/usr/share/webapps/authentik/server"
command_user="authentik"
command_group="authentik"
supervisor=supervise-daemon
start_stop_daemon_args=""
command_background="yes"
output_log="/var/log/authentik/$RC_SVCNAME.log"
error_log="/var/log/authentik/$RC_SVCNAME.err"

depend() {
	need postgresql
}

start_pre() {
	export PROMETHEUS_MULTIPROC_DIR="${TMPDIR:-/tmp}/authentik_prometheus_tmp"
	cd "$working_directory"
	checkpath --directory --owner $command_user:$command_group --mode 0775 \
		/var/log/authentik \
		/var/lib/authentik/certs \
		/var/lib/authentik/blueprints \
		/var/lib/authentik/media \
		/var/lib/authentik/media/public \
		$PROMETHEUS_MULTIPROC_DIR
}

stop_pre() {
	ebegin "Killing child processes"
	kill $(ps -o pid= --ppid $(cat $pidfile)) || true
}

