From: Michael Tremer Date: Sun, 8 Oct 2017 14:09:55 +0000 (+0100) Subject: Regularly pull sources X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6cd8afe78402e8e4f372257ece84fbfdd59983a9;p=pbs.git Regularly pull sources Signed-off-by: Michael Tremer --- diff --git a/Makefile.am b/Makefile.am index a3ba0769..70912722 100644 --- a/Makefile.am +++ b/Makefile.am @@ -124,8 +124,7 @@ manager_PYTHON = \ src/manager/__init__.py \ src/manager/base.py \ src/manager/builds.py \ - src/manager/repositories.py \ - src/manager/sources.py + src/manager/repositories.py managerdir = $(buildservicedir)/manager diff --git a/src/crontab/pakfire-build-service b/src/crontab/pakfire-build-service index 602de7e7..1eaf1334 100644 --- a/src/crontab/pakfire-build-service +++ b/src/crontab/pakfire-build-service @@ -1,6 +1,9 @@ # Send queued emails once a minute * * * * * nobody pakfire-build-service process-message-queue &>/dev/null +# Pull sources +*/5 * * * * nobody pakfire-build-service pull-sources &>/dev/null + # Send updates to Bugzilla */5 * * * * nobody pakfire-build-service send-bug-updates &>/dev/null diff --git a/src/manager/__init__.py b/src/manager/__init__.py index 096e26a5..27d0046f 100644 --- a/src/manager/__init__.py +++ b/src/manager/__init__.py @@ -3,4 +3,3 @@ from .builds import BuildsFailedRestartEvent, CheckBuildDependenciesEvent from .builds import CreateTestBuildsEvent, DistEvent from .repositories import RepositoriesUpdateEvent -from .sources import SourcesPullEvent diff --git a/src/manager/sources.py b/src/manager/sources.py deleted file mode 100644 index 10405654..00000000 --- a/src/manager/sources.py +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/python - -from .. import git - -from . import base - -class SourcesPullEvent(base.Event): - # This should run whenever possible, so the user can see his commits - # very quickly in the build service. - priority = 1 - - @property - def interval(self): - return self.pakfire.settings.get_int("source_update_interval", 60) - - def run(self): - for source in self.pakfire.sources.get_all(): - repo = git.Repo(self.pakfire, source.id, mode="mirror") - - # If the repository is not yet cloned, we need to make a local - # clone to work with. - if not repo.cloned: - repo.clone() - - # Otherwise we just fetch updates. - else: - repo.fetch() - - # Import all new revisions. - repo.import_revisions() diff --git a/src/scripts/pakfire-build-service b/src/scripts/pakfire-build-service index 7b39ef4b..c60dee1e 100644 --- a/src/scripts/pakfire-build-service +++ b/src/scripts/pakfire-build-service @@ -29,6 +29,9 @@ class Cli(object): # Sends all queued messages "process-message-queue" : self.backend.messages.process_queue, + # Pull sources + "pull-sources" : self.backend.sources.pull, + # Send bug updates to Bugzilla "send-bug-updates" : self.backend.bugzilla.send_all, } diff --git a/src/scripts/pakfire-manager b/src/scripts/pakfire-manager index 42f1aa91..c6b67a7e 100644 --- a/src/scripts/pakfire-manager +++ b/src/scripts/pakfire-manager @@ -23,7 +23,6 @@ events = ( pakfire.buildservice.manager.CreateTestBuildsEvent, pakfire.buildservice.manager.DistEvent, pakfire.buildservice.manager.RepositoriesUpdateEvent, - pakfire.buildservice.manager.SourcesPullEvent, ) # Add all events to the scheduler.