aboutsummaryrefslogtreecommitdiff
path: root/databases/kyototycoon/files/kyototycoon.in
blob: 41c35220d2eb81dec028ee6cf9bd380d16ad08db (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/bin/sh

# $FreeBSD$
#
# PROVIDE: kyototycoon
# REQUIRE: LOGIN NETWORKING SERVERS
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
# to enable this service:
#
# kyototycoon_enable    (bool):   Set to NO by default.
# Set it to YES to enable kyototycoon.
#
# kyototycoon_user      (user):   Set to kyototycoon by default.
# kyototycoon_group     (group):  Set to kyototycoon by default.
# kyototycoon_dbdir     (path):   Path to database files.
# kyototycoon_log       (path):   Path to log file.
# kyototycoon_sid       (int):    ServerID - 0-65535
# kyototycoon_opts      (args):   Additional command-line arguments.

. /etc/rc.subr

name="kyototycoon"
rcvar=kyototycoon_enable

load_rc_config $name

: ${kyototycoon_enable="NO"}
: ${kyototycoon_user:="%%KYOTOTYCOON_USER%%"}
: ${kyototycoon_group:="%%KYOTOTYCOON_GROUP%%"}
: ${kyototycoon_dbdir="%%KYOTOTYCOON_DBDIR%%"}
: ${kyototycoon_log="%%KYOTOTYCOON_LOGDIR%%/kyoto.log"}
: ${kyototycoon_sid="1"}
: ${kyototycoon_opts:=" -li"}

pidfile="%%KYOTOTYCOON_PIDFILE%%"

command="/usr/sbin/daemon"
command_args="-f -c -r -t ${name} -P ${pidfile} \
    %%PREFIX%%/bin/ktserver \
    -bgs ${kyototycoon_dbdir}/snapshots \
    -ulog ${kyototycoon_dbdir}/updates \
    -log ${kyototycoon_log} \
    -sid ${kyototycoon_sid} \
    ${kyototycoon_opts}"

required_dirs="${kyototycoon_dbdir}/snapshots ${kyototycoon_dbdir}/updates"
required_files="${kyototycoon_log}"

kyototycoon_prestart()
{
    install -o ${kyototycoon_user} /dev/null ${pidfile}
}
start_precmd=${name}_prestart

run_rc_command "$1"