]> git.ipfire.org Git - pbs.git/commitdiff
Drop scheduler code which is no longer needed
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 17 Oct 2017 16:11:43 +0000 (17:11 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 17 Oct 2017 16:11:43 +0000 (17:11 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Makefile.am
po/POTFILES.in
src/buildservice/scheduler.py [deleted file]

index 4866f73e848ea1c000f7c6ac1e6c79cdf39b7a08..2dc367bcb0fd56f9d95913513063a182c141b0d5 100644 (file)
@@ -95,7 +95,6 @@ buildservice_PYTHON = \
        src/buildservice/misc.py \
        src/buildservice/packages.py \
        src/buildservice/repository.py \
-       src/buildservice/scheduler.py \
        src/buildservice/sessions.py \
        src/buildservice/settings.py \
        src/buildservice/sources.py \
index f652982d7ba3d998b7a1e5484854c6fdbb527aec..44486a58eea23deb37f3dceff236b1514e2eaef3 100644 (file)
@@ -16,7 +16,6 @@ src/buildservice/mirrors.py
 src/buildservice/misc.py
 src/buildservice/packages.py
 src/buildservice/repository.py
-src/buildservice/scheduler.py
 src/buildservice/sessions.py
 src/buildservice/settings.py
 src/buildservice/sources.py
diff --git a/src/buildservice/scheduler.py b/src/buildservice/scheduler.py
deleted file mode 100644 (file)
index 1274be6..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/usr/bin/python
-
-import logging
-import multiprocessing
-import time
-import traceback
-
-from . import Backend
-
-class Event(object):
-       interval = None
-
-       priority = 0
-
-       def __init__(self, *args, **kwargs):
-               self.args = args
-               self.kwargs = kwargs
-
-               self._next_start_time = 0
-
-               self.scheduler = None
-
-       def __repr__(self):
-               if hasattr(self, "_next_start_time"):
-                       return "<%s next_start_in=%ds>" % \
-                               (self.__class__.__name__, self._next_start_time - time.time())
-
-               return "<%s>" % self.__class__.__name__
-
-       def run(self, *args, **kwargs):
-               raise NotImplemented
-
-       def run_subprocess_background(self, method, *args):
-               arguments = [method,] + list(args)
-
-               process = multiprocessing.Process(target=self.fork, args=arguments)
-               process.daemon = False
-
-               # Start the process.
-               process.start()
-
-               return process
-
-       def run_subprocess(self, *args):
-               process = self.run_subprocess_background(*args)
-
-               # Wait until process has finished.
-               process.join()
-
-       @staticmethod
-       def fork(method, *args, **kwargs):
-               # Create new pakfire instance.
-               backend = Backend()
-
-               return method(backend, *args, **kwargs)
-
-
-class Scheduler(object):
-       def __init__(self):
-               self._queue = []
-
-       def add_event(self, event, start_time=None):
-               event.scheduler = self
-
-               self._queue.append(event)
-
-               # Set initial start time.
-               if start_time is None:
-                       start_time = time.time()
-
-               event._next_start_time = start_time
-
-       def sort_queue(self):
-               self._queue.sort(key=lambda e: (e.priority, e._next_start_time))
-
-       def run(self):
-               while self._queue:
-                       self.sort_queue()
-                       print self._queue
-
-                       for event in self._queue:
-                               # If the event has to be started some time in
-                               # the future.
-                               if event._next_start_time <= time.time():
-                                       try:
-                                               logging.info("Running %s..." % event)
-
-                                               event.run(*event.args, **event.kwargs)
-
-                                       # In case the user interrupts the scheduler.
-                                       except KeyboardInterrupt:
-                                               # Stop immediately.
-                                               return
-
-                                       except:
-                                               traceback.print_exc()
-
-                                       finally:
-                                               # Set the next execution time if the event
-                                               # should be run again.
-                                               if event.interval:
-                                                       event._next_start_time = time.time() + event.interval
-
-                                               # Otherwise remove it from the queue.
-                                               else:
-                                                       self._queue.remove(event)
-
-                                       # Get back to outer loop and sort the queue again.
-                                       break
-
-                       # Sleep a bit.
-                       time.sleep(1)