cfengine/rc.cfengine

changeset 562
fb1ea36eaee4
child 692
67831a9de168
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/cfengine/rc.cfengine	Tue Aug 28 18:33:50 2012 +0200
     1.3 @@ -0,0 +1,72 @@
     1.4 +#!@l_prefix@/bin/openpkg rc
     1.5 +##
     1.6 +##  rc.cfengine -- Run-Commands
     1.7 +##
     1.8 +
     1.9 +%config
    1.10 +    cfengine_enable="$openpkg_rc_def"
    1.11 +    cfengine_cservd_flags=""
    1.12 +    cfengine_cenvd_flags=""
    1.13 +    cfengine_log_prolog="true"
    1.14 +    cfengine_log_epilog="true"
    1.15 +    cfengine_log_numfiles="10"
    1.16 +    cfengine_log_minsize="1M"
    1.17 +    cfengine_log_complevel="9"
    1.18 +
    1.19 +%common
    1.20 +    cfengine_cfservd_pidfile="@l_prefix@/var/cfengine/cfservd.pid"
    1.21 +    cfengine_cfenvd_pidfile="@l_prefix@/var/cfengine/cfenvd.pid"
    1.22 +    cfengine_signal () {
    1.23 +        [ -f $cfengine_cfservd_pidfile ] \
    1.24 +            && kill -$1 `cat $cfengine_cfservd_pidfile`
    1.25 +        local rc=$?
    1.26 +        [ -f $cfengine_cfenvd_pidfile ] \
    1.27 +            && kill -$1 `cat $cfengine_cfenvd_pidfile` \
    1.28 +            && [ $rc -eq 0 ]
    1.29 +    }
    1.30 +
    1.31 +%status -u @l_susr@ -o
    1.32 +    cfengine_usable="unknown"
    1.33 +    cfengine_active="no"
    1.34 +    rcService cfengine enable yes && \
    1.35 +        cfengine_signal 0 && cfengine_active="yes"
    1.36 +    echo "cfengine_enable=\"$cfengine_enable\""
    1.37 +    echo "cfengine_usable=\"$cfengine_usable\""
    1.38 +    echo "cfengine_active=\"$cfengine_active\""
    1.39 +
    1.40 +%start -u @l_susr@
    1.41 +    rcService cfengine enable yes || exit 0
    1.42 +    rcService cfengine active yes && exit 0
    1.43 +    ( nohup @l_prefix@/sbin/cfservd \
    1.44 +          --no-fork $cfengine_cfservd_flags \
    1.45 +          </dev/null >/dev/null 2>&1 &
    1.46 +      echo $! >$cfengine_cfservd_pidfile
    1.47 +    ) >/dev/null 2>&1
    1.48 +    ( nohup @l_prefix@/sbin/cfenvd \
    1.49 +          --no-fork $cfengine_cfenvd_flags \
    1.50 +          </dev/null >/dev/null 2>&1 &
    1.51 +      echo $! >$cfengine_cfenvd_pidfile
    1.52 +    ) >/dev/null 2>&1
    1.53 +
    1.54 +%stop -u @l_susr@
    1.55 +    rcService cfengine enable yes || exit 0
    1.56 +    rcService cfengine active no  && exit 0
    1.57 +    cfengine_signal TERM
    1.58 +    sleep 2
    1.59 +    rm -f $cfengine_cfservd_pidfile 2>/dev/null || true
    1.60 +    rm -f $cfengine_cfenvd_pidfile  2>/dev/null || true
    1.61 +
    1.62 +%restart -u @l_susr@
    1.63 +    rcService cfengine enable yes || exit 0
    1.64 +    rcService cfengine active no  && exit 0
    1.65 +    rc cfengine stop start
    1.66 +
    1.67 +%daily -u @l_susr@
    1.68 +    rcService cfengine enable yes || exit 0
    1.69 +    shtool rotate -f \
    1.70 +        -n ${cfengine_log_numfiles} -s ${cfengine_log_minsize} -d \
    1.71 +        -z ${cfengine_log_complevel} -o @l_rusr@ -g @l_rgrp@ -m 644 \
    1.72 +        -P "${cfengine_log_prolog}" \
    1.73 +        -E "${cfengine_log_epilog}" \
    1.74 +        @l_prefix@/var/cfengine/cfengine.log
    1.75 +

mercurial