summaryrefslogtreecommitdiffstats
path: root/tools/bcfg2-cron
blob: 6dfa5db668b410c1334aeb71bd363fa20469afc4 (plain)
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
#!/bin/sh
#
# Script to run bcfg2 with cron. 
#
# This script is designed so that bcfg2-cron can be invoked from both
# /etc/cron.daily and /etc/cron.hourly. This allows the administrators to
# modify /etc/default/bcfg2 and define the wanted frequency of cron runs.
#

# Default is not to run at all from cron
BCFG2_CRON=off
BCFG2_ENABLED=0

# Set default options
BCFG2_OPTIONS="-q"

# bcfg2 file locations
BCFG2_BIN=/usr/sbin/bcfg2
BCFG2_CFG=/etc/bcfg2.conf

# Check that configuration and executable exists
[ -x ${BCFG2_BIN} -a -e ${BCFG2_CFG} ] || exit 1

# Read the configuration from /etc/default/bcfg2
[ -e /etc/default/bcfg2 ] && . /etc/default/bcfg2

invoke_bcfg2 () {
  # Invoke bcfg2 if enabled
  if [ ${BCFG2_ENABLED} -eq 1 ]; then
    ${BCFG2_BIN} ${BCFG2_OPTIONS}
  fi
}

case $1 in
  "--daily")
    [ "x${BCFG2_CRON}" = "xdaily" ] && invoke_bcfg2
    ;;
  "--hourly")
    [ "x${BCFG2_CRON}" = "xhourly" ] && invoke_bcfg2
    ;;
  *)
    echo "Usage: $0 [--daily|--hourly]"
    exit 1
    ;;
esac