summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2020-04-28 16:21:21 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2020-04-28 16:21:21 -0700
commit97ea3377d7030d39b2f7340ebf060eb072ec2343 (patch)
treebac6ff99df200e10511d0da3ab69484855c88651
parentgitignore: missed var for snapshot (diff)
downloadgentoo-mirrorstats-97ea3377.tar.gz
gentoo-mirrorstats-97ea3377.tar.bz2
gentoo-mirrorstats-97ea3377.zip
mirmon-snapshots.sh: test refactor of runner
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-rwxr-xr-x[-rw-r--r--]mirmon-snapshots.sh36
1 files changed, 27 insertions, 9 deletions
diff --git a/mirmon-snapshots.sh b/mirmon-snapshots.sh
index 692a1ef..894e94b 100644..100755
--- a/mirmon-snapshots.sh
+++ b/mirmon-snapshots.sh
@@ -1,18 +1,36 @@
#!/bin/bash
-cd /var/www/mirrorstats.gentoo.org/gentoo-mirrorstats/snapshots_mirrors
+set -e
+
+MODE=snapshots
+SRC=distfiles
+SITEDIR=/var/www/mirrorstats.gentoo.org
+REPODIR=${SITEDIR}/gentoo-mirrorstats/
+MODEDIR=${SITEDIR}/${MODE}_mirrors/
+VARDIR=${SITEDIR}/var/${MODE}
+HTDOCS=${SITEDIR}/htdocs/${MODE}
+MIRMON=$(readlink -f "${SITEDIR}"/mirmon/mirmon)
+CONFFILE=$(readlink -f "${MODEDIR}"/mirmon.conf)
+
# Grab mirrors from the web
-[[ -d ./var ]] || mkdir ./var
-../get-mirrors-from-distfiles-xml.rb > ./var/g.mirrors
+mkdir -p "${VARDIR}"
+"${REPODIR}"/get-mirrors-from-${SRC}-xml.rb > "${VARDIR}"/g.mirrors.tmp && mv -f "${VARDIR}"/g.mirrors{.tmp,}
+
# fatal if the state file is NOT present.
-[[ -e ./var/mirmon.state ]] || touch ./var/mirmon.state
+[[ -e ${VARDIR}/mirmon.state ]] || touch "${VARDIR}/mirmon.state"
+
# run mirmon
-/usr/bin/perl ../../mirmon/mirmon -c ./mirmon.conf -q -get update
+/usr/bin/perl "${MIRMON}" -c "${CONFFILE}" -q -get update
+
# Set up a nice link to our mirror page directly:
-[[ -d ../../htdocs/snapshots ]] || mkdir ../../htdocs/snapshots
+mkdir -p ${HTDOCS}
sed \
-e 's#mirrors</H2>#<a href="http://www.gentoo.org/main/en/mirrors2.xml">mirrors</a></H2>#' \
- >../../htdocs/snapshots/index.html <../../htdocs/snapshots/index-wip.html
+ >"${HTDOCS}"/index.html.tmp <"${HTDOCS}"/index-wip.html \
+ && mv -f "${HTDOCS}"/index.html{.tmp,}
+
# Generate a json file containing the state of each mirror
-../json/generate-json.py /var/www/mirrorstats.gentoo.org/gentoo-mirrorstats/snapshots_mirrors/var/mirmon.state \
- > ../../htdocs/snapshots/state.json
+../json/generate-json.py \
+ "${VARDIR}"/mirmon.state \
+ >"${HTDOCS}"/state.json.tmp \
+ && mv -f "${HTDOCS}"/state.json{.tmp,}