From: Michael Tremer Date: Tue, 21 Jan 2025 15:04:41 +0000 (+0000) Subject: builders: Fix showing running jobs X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f62033171ad8750db03a88f5525577d420c9a378;p=pbs.git builders: Fix showing running jobs Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/builders.py b/src/buildservice/builders.py index 03c53488..76496b76 100644 --- a/src/buildservice/builders.py +++ b/src/buildservice/builders.py @@ -493,29 +493,26 @@ class Builder(database.Base, database.BackendMixin, database.SoftDeleteMixin): def can_build(self, job): return job.arch in self.supported_arches - # Jobs + # Running Jobs - @property - def jobs(self): - jobs = self.backend.jobs._get_jobs(""" - SELECT - jobs.* - FROM - jobs - WHERE - deleted_at IS NULL - AND - started_at IS NOT NULL - AND - finished_at IS NULL - AND - builder_id = %s - ORDER BY - started_at DESC""", - self.id, + async def get_running_jobs(self): + stmt = ( + sqlalchemy + .select( + jobs.Job, + ) + .where( + jobs.Job.deleted_at == None, + jobs.Job.started_at != None, + jobs.Job.finished_at == None, + jobs.Job.builder == self, + ) + .order_by( + jobs.Job.started_at.desc(), + ) ) - return list(jobs) + return await self.db.fetch_as_list(stmt) # Max Jobs diff --git a/src/templates/builders/show.html b/src/templates/builders/show.html index f253f5c9..2e4b4eff 100644 --- a/src/templates/builders/show.html +++ b/src/templates/builders/show.html @@ -161,12 +161,14 @@ {% endif %} - {% if builder.jobs %} + {# Show any running jobs #} + {% set jobs = builder.get_running_jobs() %} + {% if jobs %}
{{ _("Running Jobs") }}
- {{ JobsList(builder.jobs) }} + {{ JobList(jobs) }}
{% endif %}