diff --git a/rc.rspamd/rspamd-log/consumer-for b/rc.rspamd/rspamd-log/consumer-for new file mode 100644 index 0000000..6889981 --- /dev/null +++ b/rc.rspamd/rspamd-log/consumer-for @@ -0,0 +1 @@ +rspamd-srv diff --git a/rc.rspamd/rspamd-log/dependencies b/rc.rspamd/rspamd-log/dependencies new file mode 100644 index 0000000..dc2488d --- /dev/null +++ b/rc.rspamd/rspamd-log/dependencies @@ -0,0 +1,4 @@ +# Comment out remount-root and uncomment local-fs +# if you use separate partition for /var/log +remount-root +#local-fs diff --git a/rc.rspamd/rspamd-log/env/CMD b/rc.rspamd/rspamd-log/env/CMD new file mode 100644 index 0000000..9d5239c --- /dev/null +++ b/rc.rspamd/rspamd-log/env/CMD @@ -0,0 +1 @@ +s6-log diff --git a/rc.rspamd/rspamd-log/env/CMD_OPTS b/rc.rspamd/rspamd-log/env/CMD_OPTS new file mode 100644 index 0000000..00d672e --- /dev/null +++ b/rc.rspamd/rspamd-log/env/CMD_OPTS @@ -0,0 +1 @@ +-d3 diff --git a/rc.rspamd/rspamd-log/env/LOGDIR_GROUP b/rc.rspamd/rspamd-log/env/LOGDIR_GROUP new file mode 100644 index 0000000..3794bcd --- /dev/null +++ b/rc.rspamd/rspamd-log/env/LOGDIR_GROUP @@ -0,0 +1,2 @@ +root +# Logging directory group ownership diff --git a/rc.rspamd/rspamd-log/env/LOGDIR_OWNER b/rc.rspamd/rspamd-log/env/LOGDIR_OWNER new file mode 100644 index 0000000..9f9fd12 --- /dev/null +++ b/rc.rspamd/rspamd-log/env/LOGDIR_OWNER @@ -0,0 +1,2 @@ +root +# Logging directory owner diff --git a/rc.rspamd/rspamd-log/env/LOGDIR_PATH b/rc.rspamd/rspamd-log/env/LOGDIR_PATH new file mode 100644 index 0000000..3ea522e --- /dev/null +++ b/rc.rspamd/rspamd-log/env/LOGDIR_PATH @@ -0,0 +1,2 @@ +/var/log/rspamd +# Logging directory path diff --git a/rc.rspamd/rspamd-log/env/LOGDIR_PERMS b/rc.rspamd/rspamd-log/env/LOGDIR_PERMS new file mode 100644 index 0000000..ccece6e --- /dev/null +++ b/rc.rspamd/rspamd-log/env/LOGDIR_PERMS @@ -0,0 +1,2 @@ +750 +# Logging directory access rights in octal diff --git a/rc.rspamd/rspamd-log/env/LOG_SCRIPT b/rc.rspamd/rspamd-log/env/LOG_SCRIPT new file mode 100644 index 0000000..948a563 --- /dev/null +++ b/rc.rspamd/rspamd-log/env/LOG_SCRIPT @@ -0,0 +1,2 @@ +n4 s500000 T $LOGDIR_PATH +# Logging script used by s6-log diff --git a/rc.rspamd/rspamd-log/notification-fd b/rc.rspamd/rspamd-log/notification-fd new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/rc.rspamd/rspamd-log/notification-fd @@ -0,0 +1 @@ +3 diff --git a/rc.rspamd/rspamd-log/pipeline-name b/rc.rspamd/rspamd-log/pipeline-name new file mode 100644 index 0000000..592c748 --- /dev/null +++ b/rc.rspamd/rspamd-log/pipeline-name @@ -0,0 +1 @@ +rspamd diff --git a/rc.rspamd/rspamd-log/run b/rc.rspamd/rspamd-log/run new file mode 100644 index 0000000..ecc26c6 --- /dev/null +++ b/rc.rspamd/rspamd-log/run @@ -0,0 +1,24 @@ +#!/bin/execlineb -P + +################################################ +# Start a logging daemon for the rspamd daemon # +################################################ + +s6-envdir env +multisubstitute { + importas -u LOGDIR_OWNER LOGDIR_OWNER + importas -u LOGDIR_GROUP LOGDIR_GROUP + importas -u LOGDIR_PERMS LOGDIR_PERMS + importas -u CMD CMD + importas -usCd" " CMD_OPTS CMD_OPTS + importas -usCd" " LOG_SCRIPT LOG_SCRIPT +} +s6-envuidgid -B ${LOGDIR_OWNER}:${LOGDIR_GROUP} +multisubstitute { + importas -u LOGDIR_PATH LOGDIR_PATH + importas -u UID UID + importas -u GID GID +} +if { install -dm $LOGDIR_PERMS -o $UID -g $GID $LOGDIR_PATH } +s6-setuidgid ${UID}:${GID} +exec -c $CMD $CMD_OPTS -- $LOG_SCRIPT diff --git a/rc.rspamd/rspamd-log/type b/rc.rspamd/rspamd-log/type new file mode 100644 index 0000000..5883cff --- /dev/null +++ b/rc.rspamd/rspamd-log/type @@ -0,0 +1 @@ +longrun diff --git a/rc.rspamd/rspamd-srv/data/check b/rc.rspamd/rspamd-srv/data/check new file mode 100755 index 0000000..e96b9c6 --- /dev/null +++ b/rc.rspamd/rspamd-srv/data/check @@ -0,0 +1,3 @@ +#!/bin/execlineb -P + +rspamc uptime diff --git a/rc.rspamd/rspamd-srv/dependencies b/rc.rspamd/rspamd-srv/dependencies new file mode 100644 index 0000000..318ad82 --- /dev/null +++ b/rc.rspamd/rspamd-srv/dependencies @@ -0,0 +1,2 @@ +redis-instances +bind diff --git a/rc.rspamd/rspamd-srv/env/CMD b/rc.rspamd/rspamd-srv/env/CMD new file mode 100644 index 0000000..592c748 --- /dev/null +++ b/rc.rspamd/rspamd-srv/env/CMD @@ -0,0 +1 @@ +rspamd diff --git a/rc.rspamd/rspamd-srv/env/CMD_OPTS b/rc.rspamd/rspamd-srv/env/CMD_OPTS new file mode 100644 index 0000000..4b263e5 --- /dev/null +++ b/rc.rspamd/rspamd-srv/env/CMD_OPTS @@ -0,0 +1 @@ +-f -c /etc/rspamd/rspamd.conf -u rspamd -g rspamd diff --git a/rc.rspamd/rspamd-srv/finish b/rc.rspamd/rspamd-srv/finish new file mode 100755 index 0000000..449617e --- /dev/null +++ b/rc.rspamd/rspamd-srv/finish @@ -0,0 +1,3 @@ +#!/bin/sh + +/bin/rm -f /var/lib/rspamd/rspamd.sock diff --git a/rc.rspamd/rspamd-srv/notification-fd b/rc.rspamd/rspamd-srv/notification-fd new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/rc.rspamd/rspamd-srv/notification-fd @@ -0,0 +1 @@ +3 diff --git a/rc.rspamd/rspamd-srv/producer-for b/rc.rspamd/rspamd-srv/producer-for new file mode 100644 index 0000000..61d0621 --- /dev/null +++ b/rc.rspamd/rspamd-srv/producer-for @@ -0,0 +1 @@ +rspamd-log diff --git a/rc.rspamd/rspamd-srv/run b/rc.rspamd/rspamd-srv/run new file mode 100644 index 0000000..0cd4eeb --- /dev/null +++ b/rc.rspamd/rspamd-srv/run @@ -0,0 +1,14 @@ +#!/bin/execlineb -P + +############################################ +# Start the spam filtering system (rspamd) # +############################################ + +fdmove -c 2 1 +s6-envdir env +multisubstitute { + importas -u CMD CMD + importas -usCd" " CMD_OPTS CMD_OPTS +} +s6-notifyoncheck -dn0 +exec -c $CMD $CMD_OPTS diff --git a/rc.rspamd/rspamd-srv/type b/rc.rspamd/rspamd-srv/type new file mode 100644 index 0000000..5883cff --- /dev/null +++ b/rc.rspamd/rspamd-srv/type @@ -0,0 +1 @@ +longrun