diff options
author | Aleksey Lim <alsroot@member.fsf.org> | 2011-01-19 15:27:23 (GMT) |
---|---|---|
committer | Anish Mangal <anish@sugarlabs.org> | 2011-01-25 14:49:09 (GMT) |
commit | 7036b8dbde71a0c999fd401d73f45d118902033a (patch) | |
tree | 03f8b3c47792730b61ef31a43d0e284eb931625b | |
parent | 5aa23aafeae101f5e47a40cc17d97a943c71161b (diff) |
Check daily updates hourly
-rw-r--r-- | rpms/dextrose-updater/dextrose-updater.spec | 11 | ||||
-rwxr-xr-x | rpms/dextrose-updater/sbin/dextrose-update | 38 |
2 files changed, 45 insertions, 4 deletions
diff --git a/rpms/dextrose-updater/dextrose-updater.spec b/rpms/dextrose-updater/dextrose-updater.spec index bce8cb7..bb11477 100644 --- a/rpms/dextrose-updater/dextrose-updater.spec +++ b/rpms/dextrose-updater/dextrose-updater.spec @@ -1,6 +1,6 @@ Name: dextrose-updater Version: 1 -Release: 6%{?dist} +Release: 8%{?dist} Summary: A yum based updater for sugar-dextrose. Updates the sugar-dextrose related packages automatically and emits dbus messages (for the sugar notification system, if installed) Group: Applications/Updating @@ -31,7 +31,7 @@ A yum based updater for sugar-dextrose. Updates the sugar-dextrose related packa %install rm -rf $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT/{etc/sysconfig,etc/cron.daily,usr/sbin} +mkdir -p $RPM_BUILD_ROOT/{etc/sysconfig,etc/cron.hourly,usr/sbin} install -m755 $RPM_BUILD_DIR/%{name}-%{version}/sbin/dextrose-update \ $RPM_BUILD_ROOT/usr/sbin @@ -39,7 +39,7 @@ install -m755 $RPM_BUILD_DIR/%{name}-%{version}/sysconfig/dextrose-update \ $RPM_BUILD_ROOT/etc/sysconfig ln -s /usr/sbin/dextrose-update \ -$RPM_BUILD_ROOT/etc/cron.daily/dextrose-update +$RPM_BUILD_ROOT/etc/cron.hourly/dextrose-update %clean rm -rf $RPM_BUILD_ROOT @@ -51,9 +51,12 @@ rm -rf $RPM_BUILD_DIR/%{name}-%{version} /usr/sbin/dextrose-update /etc/sysconfig/dextrose-update -/etc/cron.daily/dextrose-update +/etc/cron.hourly/dextrose-update %changelog +* Wed Jan 19 2011 Aleksey Lim <alsroot@member.fsf.org> 1-8 +- Check daily updates hourly. + * Mon Jan 10 2011 Anish Mangal <anish@sugarlabs.org> 1-6 - Remove dextrose-py and change path of config file from /etc/default to /etc/sysconfig. diff --git a/rpms/dextrose-updater/sbin/dextrose-update b/rpms/dextrose-updater/sbin/dextrose-update index f6db502..0b682d5 100755 --- a/rpms/dextrose-updater/sbin/dextrose-update +++ b/rpms/dextrose-updater/sbin/dextrose-update @@ -5,6 +5,44 @@ name="dextrose-update" logfile="/var/log/${name}" +while [ -n "$1" ] ; do + arg=$1 + shift + case ${arg} in + -f | --force) + force=1 + ;; + -h | --help) + echo "Usage: $0 [OPTION]" + echo "" + echo "Dextrose yum updater." + echo "" + echo "Options:" + echo " -f, --force update regarless already made daily check" + echo " -h, --help display this help and exit" + echo "" + echo "Configuration files:" + echo " /etc/sysconfig/${name}" + echo "" + exit 0 + ;; + *) + echo "Unknown argument $1" + exit 1 + ;; + esac +done + +if [ -z "${force}" -a -f ${logfile} ]; then + current_ts=$(date +%F) + check_ts=$(ls ${logfile} -l --time-style=+%F | awk '{print $6}') + + if [ ${current_ts} == ${check_ts} ]; then + echo "Daily check already happened, pass --force to ignore it." + exit 0 + fi +fi + echo "$(date)" >> $logfile echo -e "\tRepositories:" ${DEXTROSE_YUM_REPO} >> $logfile |