diff options
author | Ed Bartosh <ed.bartosh@linux.intel.com> | 2016-09-16 17:22:29 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-09-20 15:18:51 +0100 |
commit | 62955224a6d99e9f581d2bef924058070bfa4c43 (patch) | |
tree | caf415e1ecb93e6ccc68f9e12fa10c16a009b02a | |
parent | 7e9a89e3fde5e71cb859799635974ec41790c44d (diff) | |
download | bitbake-contrib-62955224a6d99e9f581d2bef924058070bfa4c43.tar.gz |
toaster: implement signal_runbuilds function
This function reads pid of runbuilds process from
BUILDDIR/.runbuilds.pid and sends SIGUSR1 to it. signal_runbuilds
function will be used in Toaster code to notify runbuilds when
build is scheduled, finished or cancelled.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/toaster/orm/models.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/toaster/orm/models.py b/lib/toaster/orm/models.py index 8ee0c8737..38d014a7f 100644 --- a/lib/toaster/orm/models.py +++ b/lib/toaster/orm/models.py @@ -33,9 +33,10 @@ from django.conf import settings import django.db.models.signals import sys -import os.path +import os import re import itertools +from signal import SIGUSR1 import logging logger = logging.getLogger("toaster") @@ -1736,6 +1737,11 @@ def invalidate_cache(**kwargs): except Exception as e: logger.warning("Problem with cache backend: Failed to clear cache: %s" % e) +def signal_runbuilds(): + """Send SIGUSR1 to runbuilds process""" + with open(os.path.join(os.getenv('BUILDDIR'), '.runbuilds.pid')) as pidf: + os.kill(int(pidf.read()), SIGUSR1) + django.db.models.signals.post_save.connect(invalidate_cache) django.db.models.signals.post_delete.connect(invalidate_cache) django.db.models.signals.m2m_changed.connect(invalidate_cache) |