#!/bin/sh
#

. /lib/svc/share/smf_include.sh

prefix=/opt/csw
exec_prefix=/opt/csw
sysconfdir=/opt/csw/etc
sbindir=/opt/csw/sbin

if [ -z $SMF_SYSVOL_FS ]; then 
  piddir=/var/run/puppetlabs
else
  piddir=$SMF_SYSVOL_FS/puppetlabs
fi;

pidfile=$piddir/master.pid

case "$1" in
start)
    cd /
    # Start daemons.

    printf "Starting Puppet server services:"
    mkdir -p $piddir

    /opt/csw/sbin/puppetmasterd

    printf " puppetmaster"
    echo ""
    ;;
stop)
    printf "Stopping Puppet server services:"
    kill `cat "$pidfile"`

    printf " puppetmasterd"
    echo ""
    ;;
restart)
    printf "Restarting Puppet server services:"
    kill -HUP `cat "$pidfile"`

    printf " puppetmasterd"
    echo ""
    ;;
reload)
    printf "Reloading Puppet server services:"

    kill -HUP `cat "$pidfile"`

    printf " puppetmasterd"
    echo ""
    ;;
status)
    if [ -f "$pidfile" ]; then
        pid=`cat "$pidfile"`
        curpid=`pgrep puppetmasterd`
        if [ "$pid" -eq "$curpid" ]; then
            exit 0
        else
            exit 1
        fi
    else
        exit 1
    fi
esac
exit 0
