From: Michael Tremer Date: Wed, 3 May 2023 17:20:30 +0000 (+0000) Subject: jobs: Wait until repositories are rewritten after finish X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8a28be697893f74121b17804d9fd7f0d59e9841c;p=pbs.git jobs: Wait until repositories are rewritten after finish Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/builds.py b/src/buildservice/builds.py index c2190a8f..e0b5cd07 100644 --- a/src/buildservice/builds.py +++ b/src/buildservice/builds.py @@ -519,10 +519,6 @@ class Build(base.DataObject): if self.has_finished(): return - # On success, update all repositories - if not job.has_failed(): - await self._update_repos() - # If all jobs have finished, the build has finished if all((j.has_finished() for j in self.jobs)): return await self.finished(success=True) @@ -723,7 +719,7 @@ class Build(base.DataObject): This method should be called if the repositories should be updated """ await asyncio.gather( - *(repo.has_changed() for repo in self.repos), + *(repo.update() for repo in self.repos), ) ## Bugs diff --git a/src/buildservice/jobs.py b/src/buildservice/jobs.py index 2f567a84..2448a0f2 100644 --- a/src/buildservice/jobs.py +++ b/src/buildservice/jobs.py @@ -462,6 +462,10 @@ class Job(base.DataObject): log=await self.tail_log(100), ) + # On success, update all repositories + if success: + await self.build._update_repos() + # Propagate any changes to the build return await self.build._job_finished(job=self)