commit 0b83b1bd2a2b3a48af5e4fd93eb6f697500ef240
parent 3e8dae84947870efda45b72c7cbae6dbebf1bf14
Author: parazyd <parazyd@dyne.org>
Date:   Wed, 28 Jun 2017 19:20:00 +0200
implement orchestration of incremental updates with a shell script
Diffstat:
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/lib/config.def.py b/lib/config.def.py
@@ -10,7 +10,7 @@ cpunm = 4  # number of cpus you want to use for multiprocessing
 logdir = './log'
 spooldir = './spool'
 signingkey = 'CA608125'
-mergedir = './merged'
+mergedir = './merged-volatile'
 mergesubdir = 'dists'
 banpkgs = {'systemd', 'systemd-sysv'}
 checksums = [
@@ -40,7 +40,7 @@ repos = {
     },
     'debian': {
         'name': 'DEBIAN',
-        'host': 'http://deb.debian.org',
+        'host': 'http://ftp.debian.org',
         'dists': 'debian/dists',
         'pool': 'debian/pool',
         'aliases': True,
diff --git a/orchestrate.sh b/orchestrate.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+# orchestration of incremental updates
+
+# make sure these correlate to lib/config.py
+AMPROLLA_UPDATE=/srv/amprolla/amprolla_update.py
+REPO_ROOT=/srv/amprolla
+
+# TODO: remove the while loop and run with cron after testing phase
+
+while true; do
+	ln -snf "$REPO_ROOT"/merged-staging "$REPO_ROOT"/merged
+	# the break call is temporary to catch unhandled exceptions in the testing phase
+	python3 "$AMPROLLA_UPDATE" || break
+	rsync --delete -raX "$REPO_ROOT"/merged-volatile/* "$REPO_ROOT"/merged-production
+	ln -snf "$REPO_ROOT"/merged-production "$REPO_ROOT"/merged
+	rsync --delete -raX "$REPO_ROOT"/merged-volatile/* "$REPO_ROOT"/merged-staging
+	sleep 3600
+done