mirror of
https://git.freebsd.org/ports.git
synced 2025-07-05 11:29:15 -04:00
The user can now terminate pgbouncer both with gracefulstop (sends SIGINT) and with stop (sends SIGTERM). PR: 271023
50 lines
1.2 KiB
Bash
50 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
# PROVIDE: pgbouncer
|
|
# REQUIRE: LOGIN
|
|
# BEFORE: securelevel
|
|
# KEYWORD: shutdown
|
|
|
|
# Add the following lines to /etc/rc.conf to enable pgbouncer:
|
|
#
|
|
# pgbouncer_enable (bool): Set to "YES" to enable pgbouncer
|
|
# Default is "NO".
|
|
# pgbouncer_conf (path): Set full path to configuration file.
|
|
# Default is "%%PREFIX%%/etc/pgbouncer.ini".
|
|
# pgbouncer_flags (string): Additional flags passed to pgbouncer.
|
|
# Default is "".
|
|
# pgbouncer_sig_stop (str): Default to "TERM"
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="pgbouncer"
|
|
rcvar=pgbouncer_enable
|
|
|
|
load_rc_config "$name"
|
|
: ${pgbouncer_enable="NO"}
|
|
: ${pgbouncer_user="pgbouncer"}
|
|
: ${pgbouncer_conf="%%PREFIX%%/etc/$name.ini"}
|
|
|
|
gracefulstop_cmd="pgbouncer_gracefulstop"
|
|
stop_precmd="pgbouncer_prestop"
|
|
|
|
extra_commands="reload gracefulstop"
|
|
|
|
command="%%PREFIX%%/bin/pgbouncer"
|
|
pidfile="%%PGBOUNCER_RUNDIR%%/$name.pid"
|
|
required_files="${pgbouncer_conf}"
|
|
command_args="-d ${pgbouncer_conf}"
|
|
|
|
pgbouncer_gracefulstop()
|
|
{
|
|
echo "Performing a graceful stop:"
|
|
sig_stop="INT"
|
|
run_rc_command ${rc_prefix}stop ${rc_extra_args} || return 1
|
|
}
|
|
|
|
pgbouncer_prestop()
|
|
{
|
|
sig_stop="${pgbouncer_sig_stop:-TERM}"
|
|
}
|
|
|
|
run_rc_command "$1"
|