mirror of
https://git.freebsd.org/ports.git
synced 2025-05-16 09:11:50 -04:00
This is version 4.x of sysutils/puppet, which is in some large parts incompatible with previous versions. As the C++ rewrite of facter is not resolving some required facts on FreeBSD yet, default to the old version written in Ruby for now.
56 lines
1.2 KiB
Bash
56 lines
1.2 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: puppetmaster
|
|
# REQUIRE: LOGIN
|
|
|
|
# Add the following lines to /etc/rc.conf to enable the puppetmaster:
|
|
#
|
|
# puppetmaster_enable="YES"
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="puppetmaster"
|
|
rcvar=puppetmaster_enable
|
|
|
|
load_rc_config "${name}"
|
|
|
|
: ${puppetmaster_enable="NO"}
|
|
: ${puppetmaster_rundir="/var/run/puppet"}
|
|
: ${puppetmaster_flags="--rundir=${puppetmaster_rundir}"}
|
|
|
|
command_interpreter=%%RUBY%%
|
|
command="%%PREFIX%%/bin/puppet"
|
|
command_args="master ${puppetmaster_flags}"
|
|
unset puppetmaster_flags
|
|
|
|
pidfile="${puppetmaster_rundir}/master.pid"
|
|
puppet_manifest="$($command config print manifest)"
|
|
|
|
start_precmd="puppetmaster_checkconfig"
|
|
restart_precmd="puppetmaster_checkconfig"
|
|
puppetmaster_checkconfig() {
|
|
echo -n "Performing sanity check of ${name} configuration: "
|
|
if ! ${command} parser validate "${puppet_manifest}"
|
|
then
|
|
echo "FAILED"
|
|
return 1
|
|
else
|
|
echo "OK"
|
|
return 0
|
|
fi
|
|
}
|
|
|
|
if [ -z "${puppetmaster_mongrel_ports}" ]; then
|
|
run_rc_command "$1"
|
|
else
|
|
for port in ${puppetmaster_mongrel_ports}; do
|
|
pidfile="${puppetmaster_rundir}/mongrel.${port}.pid"
|
|
command_args="master --pidfile=${pidfile} --servertype=mongrel --masterport=${port}"
|
|
run_rc_command "$1"
|
|
_rc_restart_done="false"
|
|
done
|
|
fi
|