cookutils rev 341

cooker: Add setup-cron to enable cron job
author Christophe Lincoln <pankso@slitaz.org>
date Sat Mar 17 23:33:55 2012 +0100 (2012-03-17)
parents ab08b97140dc
children 4f9d23e13883
files cooker
line diff
     1.1 --- a/cooker	Sat Mar 17 23:02:31 2012 +0100
     1.2 +++ b/cooker	Sat Mar 17 23:33:55 2012 +0100
     1.3 @@ -24,6 +24,7 @@
     1.4  blocked="$CACHE/blocked"
     1.5  broken="$CACHE/broken"
     1.6  cooknotes="$CACHE/cooknotes"
     1.7 +crontabs="/var/spool/cron/crontabs/root"
     1.8  
     1.9  # PID file.
    1.10  pidfile='/var/run/cooker.pid'
    1.11 @@ -35,11 +36,12 @@
    1.12  usage() {
    1.13  	cat << EOT
    1.14  
    1.15 -Usage: cooker [command] [pkg|list|note]
    1.16 +Usage: cooker [command] [pkg|list|note|hours]
    1.17  
    1.18  Options:
    1.19    usage|-u        Display this short usage.
    1.20    setup|-s        Setup the Cooker environment.
    1.21 +  setup-cron      Setup a cron job for the Cooker.
    1.22    note|-n         Add a note to the cooknotes.
    1.23    notes|-ns       Display all the cooknotes.
    1.24    block|-b        Block a package so cook will skip it.
    1.25 @@ -255,6 +257,22 @@
    1.26  		[ -d "$flavors" ] || hg clone $FLAVORS_URL flavors
    1.27  		cp -a ${wok}-hg $wok
    1.28  		separator && echo "" ;;
    1.29 +	setup-cron)
    1.30 +		# Create cron job for the cooker.
    1.31 +		[ "$2" ] || hours=2
    1.32 +		if [ ! -f "$crontabs" ]; then
    1.33 +			mkdir -p /var/spool/cron/crontabs
    1.34 +			echo "# Run SliTaz Cooker each $hours hours" > $crontabs
    1.35 +			echo "0 */$hours * * *  /usr/bin/cooker" >> $crontabs
    1.36 +			/etc/init.d/crond start
    1.37 +		fi
    1.38 +		if ! fgrep -q /usr/bin/cooker $crontabs; then
    1.39 +			echo "# Run SliTaz Cooker each $hours hours" > $crontabs
    1.40 +			echo "0 */$hours * * *  /usr/bin/cooker" >> $crontabs
    1.41 +			killall crond 2>/dev/null && /etc/init.d/crond start
    1.42 +		fi ;;
    1.43 +	check-cron)
    1.44 +		fgrep /usr/bin/cooker $crontabs ;;
    1.45  	note|-n)
    1.46  		# Blocked a pkg and want others to know why ? Post a note!
    1.47  		note="$2"