Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAleksey 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)
commit7036b8dbde71a0c999fd401d73f45d118902033a (patch)
tree03f8b3c47792730b61ef31a43d0e284eb931625b
parent5aa23aafeae101f5e47a40cc17d97a943c71161b (diff)
Check daily updates hourly
-rw-r--r--rpms/dextrose-updater/dextrose-updater.spec11
-rwxr-xr-xrpms/dextrose-updater/sbin/dextrose-update38
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