From: Michael Tremer Date: Tue, 21 Jan 2025 17:21:06 +0000 (+0000) Subject: builders: Implement fetching uploads X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=add3759355d98151a264e54b47c8bd1c61c250d5;p=pbs.git builders: Implement fetching uploads Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/builders.py b/src/buildservice/builders.py index 0b680dc9..d66a99ad 100644 --- a/src/buildservice/builders.py +++ b/src/buildservice/builders.py @@ -12,6 +12,7 @@ from sqlalchemy import BigInteger, Boolean, Column, DateTime, ForeignKey, Intege from . import base from . import database from . import jobs +from . import uploads from .decorators import * from .errors import * @@ -823,6 +824,27 @@ class Builder(database.Base, database.BackendMixin, database.SoftDeleteMixin): }) + # Uploads + + def get_uploads(self): + """ + Returns all uploads that belong to this builder + """ + stmt = ( + sqlalchemy + .select(uploads.Upload) + .where( + uploads.Upload.builder == self, + uploads.Upload.expires_at > sqlalchemy.func.current_timestamp(), + ) + .order_by( + uploads.Upload.created_at.desc(), + ) + ) + + return self.db.fetch(stmt) + + class BuilderStats(base.Object): def init(self, builder, data): self.builder = builder