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
|
#!/bin/bash
umask 0022
cli_defaults=${INSTALL_DIR}/cli/cli-defaults.sh
rundir=/run/puppetserver
CLASSPATH=${INSTALL_DIR}/puppetserver.jar
USER=puppet
GROUP=puppet
if [ -e "$cli_defaults" ]; then
. $cli_defaults
if [ $? -ne 0 ]; then
echo "Unable to initialize cli defaults, failing foreground subcommand." 1>&2
exit 1
fi
fi
if ! (echo "${@}" | grep -e "--debug" -q)
then
LOG_APPENDER="-Dlogappender=STDOUT"
fi
/usr/bin/install --directory --owner=$USER --group=$GROUP --mode=755 "${rundir}"
if [ $? -ne 0 ]; then
echo "Unable to create/set permissions for rundir: ${rundir}" 1>&2
exit 1
fi
COMMAND="/usr/bin/java $JAVA_ARGS $LOG_APPENDER \
-Djruby.lib=/usr/share/jruby/lib \
-XX:+CrashOnOutOfMemoryError \
-XX:ErrorFile="/var/log/puppetserver/puppetserver_err_pid%%p.log" \
-jar ${INSTALL_DIR}/puppetserver.jar \
--config /etc/puppet/puppetserver/conf.d \
--bootstrap-config /etc/puppet/puppetserver/services.d \
$TK_ARGS \
${@}"
pushd "${INSTALL_DIR}" &> /dev/null
if [ "$EUID" = "0" ] && command -v runuser &> /dev/null; then
runuser "${USER}" -s /bin/bash -c "$COMMAND"
elif [ "$EUID" = "$(id -u ${USER})" ]; then
/bin/bash -c "$COMMAND"
elif command -v sudo &> /dev/null; then
sudo -H -u "${USER}" $COMMAND
else
su "${USER}" -s /bin/bash -c "$COMMAND"
fi
popd &> /dev/null
|