aboutsummaryrefslogblamecommitdiffstats
path: root/community/rspamd/rspamd.initd
blob: 21fd105e8d5e2769f78e7199662aab062789a925 (plain) (tree)
1
2
3
4
5
6
7
8
9

                  
                            
                                      


                                             
                                         
                                     
 











                                                                   

                           
                  
                   

 
             
                                                            
                                                              

 







                                             

 
          

                                                                      

               

          
                                          

                                                          
 
#!/sbin/openrc-run

extra_commands="checkconfig"
extra_started_commands="reload reopen"

description="Rapid spam filtering system"
description_checkconfig="Check configuration"
description_reload="Reload configuration"
description_reopen="Reopen log files"

# Uppercase variables are here for backward compatibility only.
: ${command_user:="${RSPAMD_USER:-rspamd}:${RSPAMD_GROUP:-rspamd}"}
: ${cfgfile:=${RSPAMD_CONFIG:-/etc/rspamd/rspamd.conf}}
: ${startuplog:=${RSPAMD_STARTUPLOG:-/dev/null}}

command="/usr/sbin/rspamd"
command_args="--config $cfgfile --no-fork ${command_args:-}"
command_background="yes"
pidfile="/run/rspamd/$RC_SVCNAME.pid"

required_files="$cfgfile"

depend() {
	need localmount net
	before mta
	after redis
}

start_pre() {
	checkpath -d -m 755 -o "$command_user" ${pidfile%/*}
	checkconfig >/dev/null 2>>"$startuplog" || checkconfig
}

checkconfig() {
	ebegin "Checking $name configuration"

	$command $command_args \
		-u "${command_user%:*}" \
		-g "${command_user#*:}" \
		--config-test
	eend $?
}

reload() {
	ebegin "Reloading $name configuration"
	start_pre && start-stop-daemon --signal HUP --pidfile $pidfile
	eend $?
}

reopen() {
	ebegin "Reopening $name log files"
	start-stop-daemon --signal USR1 --pidfile $pidfile
	eend $?
}