summaryrefslogtreecommitdiff
path: root/databases/pgpool-II-22/files/pgpool.in
blob: 058b531550c40ff7b12eb54bcfa9f94041c22d4a (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
#!/bin/sh
#
# $FreeBSD$
#        
# PROVIDE: pgpool
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
# to enable this service:
#
# pgpool_enable (bool):		Set to NO by default.
#				Set it to YES to enable pgpool.
# pgpool_conf (file):		Set location of your config.
#				Default is "%%PREFIX%%/etc/pgpool.conf"
# pgpool_flags (string):	Default is "-f $pgpool_conf"
# pgpool_looger (bool):		Use logger for logging.
# pgpool_looger_pri (string):	logger priority (default "local0.info").
# pgpool_user (uid):		User ID to run as (default nobody)
#

. %%RC_SUBR%%

name=pgpool
rcvar=${name}_enable

load_rc_config $name

: ${pgpool_enable="NO"}
: ${pgpool_conf="%%PREFIX%%/etc/pgpool.conf"}
: ${pgpool_flags="-f ${pgpool_conf}"}
: ${pgpool_user="nobody"}
: ${pgpool_logger="YES"}
: ${pgpool_logger_pri="local0.info"}

command="%%PREFIX%%/bin/pgpool"
command_args="${pgpool_flags}"
start_cmd="pgpool_start"
stop_cmd="${command} ${command_args} stop"

required_files="${pgpool_conf}"

pgpool_start()
{
    if checkyesno pgpool_logger; then
	su -m $pgpool_user -c "sh -c \"$command $command_args -n 2>&1 | logger -t $name -p $pgpool_logger_pri &\""
    else
	unset start_cmd
	run_rc_command start
    fi
}

run_rc_command "$1"