#!/bin/sh

AUTOUPDATE_LOG=/var/log/rg-cnc-autoupdate.log

echo "`date`, $0 started" >> $AUTOUPDATE_LOG

upgradable=$(aptitude search -q -F '%p' "?installed?origin(rg)?upgradable" 2>>$AUTOUPDATE_LOG)
if [ -n "$upgradable" ]; then
        echo "updates available: $upgradable" >> $AUTOUPDATE_LOG
        echo "simulate upgrade from local cache..." >> $AUTOUPDATE_LOG
        apt-get install --no-download --dry-run --fix-missing $upgradable >> $AUTOUPDATE_LOG 2>&1
        rc=$?

        if [ $rc -eq 0 ]; then
                echo "simulation successfull, starting actual upgrade..." >> $AUTOUPDATE_LOG
                apt-get install --no-download --fix-missing -y $upgradable | tee -a $AUTOUPDATE_LOG
        else
                echo "simulation failed, giving up" >> $AUTOUPDATE_LOG
        fi
else
        echo "no new updates available" >> $AUTOUPDATE_LOG
fi

echo "`date`, $0 finished" >> $AUTOUPDATE_LOG
