commit 992d24959e7e85852557df8ad553c711af5a9729
parent 32b7d87eeed5748306269f5eb1eaaf55e06bba3c
Author: parazyd <parazyd@dyne.org>
Date: Mon, 6 Nov 2017 13:55:29 +0100
use the locking functions
Diffstat:
5 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/amprolla_init.py b/amprolla_init.py
@@ -12,6 +12,7 @@ from time import time
from lib.config import (aliases, arches, categories, cpunm, mainrepofiles,
repos, spooldir, suites)
+from lib.lock import check_lock, free_lock
from lib.net import download
from lib.parse import parse_release
@@ -87,6 +88,8 @@ def main():
if __name__ == '__main__':
t1 = time()
+ check_lock()
main()
+ free_lock()
t2 = time()
print('total time: %s' % (t2 - t1))
diff --git a/amprolla_merge.py b/amprolla_merge.py
@@ -14,6 +14,7 @@ import lib.globalvars as globalvars
from lib.config import (aliases, arches, banpkgs, categories, cpunm, mergedir,
mergesubdir, pkgfiles, repos, repo_order, signrelease,
spooldir, srcfiles, suites)
+from lib.lock import check_lock, free_lock
from lib.package import (load_packages_file, merge_packages_many,
write_packages)
from lib.release import write_release
@@ -195,6 +196,8 @@ def main():
if __name__ == '__main__':
t1 = time()
+ check_lock()
main()
+ free_lock()
t2 = time()
print('total time: %s' % (t2 - t1))
diff --git a/amprolla_merge_contents.py b/amprolla_merge_contents.py
@@ -11,10 +11,11 @@ from os import makedirs
from os.path import dirname, join, isfile
from time import time
+import lib.globalvars as globalvars
from amprolla_merge import prepare_merge_dict
from lib.config import (arches, categories, cpunm, mergedir, mergesubdir,
repos, spooldir)
-import lib.globalvars as globalvars
+from lib.lock import check_lock, free_lock
def merge_contents(filelist):
@@ -105,6 +106,8 @@ def main():
if __name__ == '__main__':
t1 = time()
+ check_lock()
main()
+ free_lock()
t2 = time()
print('total time: %s' % (t2 - t1))
diff --git a/amprolla_update.py b/amprolla_update.py
@@ -11,11 +11,12 @@ from time import time
import requests
import lib.globalvars as globalvars
+from amprolla_merge import gen_release, merge, prepare_merge_dict
from lib.config import aliases, cpunm, repos, repo_order, spooldir
+from lib.lock import check_lock, free_lock
from lib.log import info, warn
from lib.parse import compare_dict, get_date, get_time, parse_release
from lib.net import download
-from amprolla_merge import gen_release, merge, prepare_merge_dict
def remote_is_newer(remote, local):
@@ -142,6 +143,8 @@ def main():
if __name__ == '__main__':
t1 = time()
+ check_lock()
main()
+ free_lock()
t2 = time()
print('total time: %s' % (t2 - t1))
diff --git a/orchestrate.sh b/orchestrate.sh
@@ -10,6 +10,7 @@ REPO_ROOT="${REPO_ROOT:-/srv/amprolla}"
# TODO: Remove the while loop and run with cron after testing phase
while true; do
+ [ -f "/tmp/amprolla.lock" ] || {
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" || {
@@ -29,6 +30,7 @@ while true; do
# handle obsolete package logs
cat "$REPO_ROOT"/log/*-oldpackages.txt | sort | uniq > "$REPO_ROOT"/log/oldpackages.txt
+ }
sleep 3600
done