Changeset View
Changeset View
Standalone View
Standalone View
ftp/sftpgo/files/sftpgo.in
- This file was added.
#!/bin/sh | |||||
# PROVIDE: sftpgo | |||||
# REQUIRE: LOGIN | |||||
# KEYWORD: shutdown | |||||
# | |||||
# Add the following line to /etc/rc.conf to enable SFTPGo: | |||||
# | |||||
# sftpgo_enable (bool): Set to "NO" by default. | |||||
# Set to "YES" to enable SFTPGo. | |||||
# sftpgo_user (str): Default to "sftpgo". | |||||
# sftpgo_group (str): Default to "sftpgo". | |||||
# User and group to run SFTPGo with. | |||||
# sftpgo_flags (str): Additional flags to append to "sftpgo serve" command. | |||||
# Read sftpgo(1) for more information. | |||||
# sftpgo_config (str): Default to "%%PREFIX%%/etc/sftpgo.json". | |||||
# SFTPGo config directory. | |||||
# sftpgo_configdir (str): Default to "/var/db/sftpgo". | |||||
# Directory for private keys, SQLite database etc. | |||||
# sftpgo_logdir (str): Default to "/var/log/sftpgo". | |||||
# Directory to store sftpgo logs | |||||
. /etc/rc.subr | |||||
name=sftpgo | |||||
rcvar=sftpgo_enable | |||||
desc=SFTPGo | |||||
load_rc_config sftpgo | |||||
: ${sftpgo_enable:=NO} | |||||
: ${sftpgo_user:=sftpgo} | |||||
: ${sftpgo_group:=sftpgo} | |||||
: ${sftpgo_config=%%PREFIX%%/etc/sftpgo.json} | |||||
: ${sftpgo_configdir=/var/db/sftpgo} | |||||
: ${sftpgo_logdir=/var/log/sftpgo} | |||||
pidfile=/var/run/${name}/${name}.pid | |||||
start_precmd=sftpgo_precmd | |||||
procname="%%PREFIX%%/bin/sftpgo" | |||||
required_files="${sftpgo_config}" | |||||
command=/usr/sbin/daemon | |||||
command_args="-cf -p ${pidfile} ${procname} serve --config-dir ${sftpgo_configdir} --config-file ${sftpgo_config} --log-file-path ${sftpgo_logdir}/sftpgo.log ${sftpgo_flags}" | |||||
sftpgo_precmd() | |||||
{ | |||||
# Create PID file directory | |||||
install -d -o ${sftpgo_user} -g ${sftpgo_group} -m 0755 "$(dirname ${pidfile})" | |||||
install -d -o ${sftpgo_user} -g ${sftpgo_group} -m 0755 "${sftpgo_configdir}" | |||||
install -d -o ${sftpgo_user} -g ${sftpgo_group} -m 0755 "${sftpgo_logdir}" | |||||
# Remove default flags, they're added in `command_args` manually | |||||
rc_flags="" | |||||
} | |||||
run_rc_command "$1" |