Repository : http://git.fedorahosted.org/cgit/
On branch : v1.4
commit e5baa9f6720766b4bfd4c9ff08b46f4e6f249673 Author: Matt Domsch Matt_Domsch@dell.com Date: Fri Jun 7 13:21:34 2013 -0500
move update-static-content into its own cronjob
Instead of running at the same time as update-mirrorlist-server, update-static-content should run on its own schedule, e.g. daily (instead of hourly), as it takes quite a while to run, and the content doesn't change that often, daily should be just fine.
server/update-mirrorlist-server | 2 -- server/update-static-content | 18 ++++++++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/server/update-mirrorlist-server b/server/update-mirrorlist-server index b95eba5..73bc7db 100755 --- a/server/update-mirrorlist-server +++ b/server/update-mirrorlist-server @@ -1,7 +1,6 @@ #!/bin/bash
MM_DIR=/usr/share/mirrormanager/server -MIRRORLIST_DIR=/var/lib/mirrormanager/mirrorlists LOCKFILE=/var/lock/mirrormanager/update-mirrorlist-server.lock CACHEDIR=/var/lib/mirrormanager
@@ -15,7 +14,6 @@ rm -rf ${CACHEDIR}/old mkdir -p ${CACHEDIR}/old cp -ar ${CACHEDIR}/* ${CACHEDIR}/old/
-${MM_DIR}/update-static-content ${MIRRORLIST_DIR} ${MM_DIR}/refresh_mirrorlist_cache -c /etc/mirrormanager/prod.cfg ${MM_DIR}/get_internet2_netblocks ${CACHEDIR}/i2_netblocks.txt killall -HUP mirrorlist_server.py diff --git a/server/update-static-content b/server/update-static-content index 7d137ba..e8a5be3 100755 --- a/server/update-static-content +++ b/server/update-static-content @@ -1,11 +1,21 @@ #!/bin/bash
-PUBLICLIST_DIR="$1" -[ -z "${PUBLICLIST_DIR}" ] && exit 1 -mkdir -p "${PUBLICLIST_DIR}" +LOCKFILE=/var/lock/mirrormanager/update-static-content.lock +PUBLICLIST_DIR=/var/lib/mirrormanager/mirrorlists + +[ -e ${LOCKFILE} ] && kill -0 $(cat ${LOCKFILE}) && exit 2 +mkdir -p $(dirname ${LOCKFILE}) +echo $$ > ${LOCKFILE} +trap "cleanup" QUIT TERM INT HUP EXIT
+function cleanup() +{ + [ -n "$temp_dir_name" ] && rm -rf $temp_dir_name + rm -f ${LOCKFILE} +} + +mkdir -p "${PUBLICLIST_DIR}" temp_dir_name=`mktemp -d /tmp/mirrorlists.XXXXXX` -trap "rm -rf $temp_dir_name" QUIT TERM INT HUP EXIT
pushd $temp_dir_name > /dev/null 2>&1 /usr/share/mirrormanager/server/generate-publiclist -c /etc/mirrormanager/prod.cfg -o ${temp_dir_name}/publiclist
mirrormanager-commits@lists.fedorahosted.org