From: Michael Tremer Date: Sat, 9 Sep 2023 13:45:56 +0000 (+0000) Subject: backend: Define background tasks here X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fbc269a1708245e68bab1e1d8b3954191e09a8a5;p=pbs.git backend: Define background tasks here Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/__init__.py b/src/buildservice/__init__.py index aae85352..5e9151b8 100644 --- a/src/buildservice/__init__.py +++ b/src/buildservice/__init__.py @@ -97,6 +97,20 @@ class Backend(object): log.info("Pakfire Build Service initialized at %s" % self.basepath) + def launch_background_tasks(self): + # Launch some initial tasks + self.run_task(self.users.generate_vapid_keys) + self.run_task(self.builders.autoscale) + + # Regularly check the mirrors + self.run_periodic_task(300, self.mirrors.check) + + # Regularly fetch sources + self.run_periodic_task(300, self.sources.fetch) + + # Regularly check for new releases + self.run_periodic_task(300, self.monitorings.check) + def read_config(self, path): c = configparser.ConfigParser() diff --git a/src/web/__init__.py b/src/web/__init__.py index 4da396ba..c2711df7 100644 --- a/src/web/__init__.py +++ b/src/web/__init__.py @@ -255,24 +255,12 @@ class Application(tornado.web.Application): uploads.APIv1DetailHandler), ], default_handler_class=errors.Error404Handler, **settings) - # Launch backend + # Launch backend & background tasks self.backend = Backend("/etc/pakfire/pbs.conf") + self.backend.launch_background_tasks() logging.info("Successfully initialied application") - # Launch some initial tasks - self.backend.run_task(self.backend.users.generate_vapid_keys) - self.backend.run_task(self.backend.builders.autoscale) - - # Regularly check the mirrors - self.backend.run_periodic_task(300, self.backend.mirrors.check) - - # Regularly fetch sources - self.backend.run_periodic_task(300, self.backend.sources.fetch) - - # Regularly check for new releases - self.backend.run_periodic_task(300, self.backend.monitorings.check) - ## UI methods def extract_hostname(self, handler, url):