]> git.ipfire.org Git - pbs.git/commitdiff
hub: Require a repository when a new build is created
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 18 Oct 2022 18:22:30 +0000 (18:22 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 18 Oct 2022 18:22:30 +0000 (18:22 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/hub/builds.py

index fe4de4501184b2cf57485971b032a1c993c6a977..fd2d40442cb7d880d74653f53c4e3adeb64d9691 100644 (file)
@@ -36,6 +36,9 @@ class CreateHandler(BaseHandler):
                if not upload.has_perm(self.current_user):
                        raise tornado.web.HTTPError(403, "No permission for using upload %s" % upload)
 
+               # Fetch the repository
+               repo_name = self.get_argument("repo")
+
                with self.db.transaction():
                        # Import the package
                        try:
@@ -47,8 +50,10 @@ class CreateHandler(BaseHandler):
                                # XXX probably send something better than this
                                raise tornado.web.HTTPError(404, "Could not find distribution: %s" % e)
 
-                       # XXX Fetch the repository
-                       repo = self.backend.repos.get_by_id(1)
+                       # Find the repository
+                       repo = self.current_user.get_repo(distro, repo_name)
+                       if not repo:
+                               raise tornado.web.HTTPError(404, "Could not find repository: %s" % repo_name)
 
                        # Create a new build
                        build = self.backend.builds.create(repo, package, owner=self.user)