aboutsummaryrefslogtreecommitdiff
path: root/guix-data-service/model/git-repository.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-data-service/model/git-repository.scm')
-rw-r--r--guix-data-service/model/git-repository.scm13
1 files changed, 13 insertions, 0 deletions
diff --git a/guix-data-service/model/git-repository.scm b/guix-data-service/model/git-repository.scm
index 5f35cd3..16c57bf 100644
--- a/guix-data-service/model/git-repository.scm
+++ b/guix-data-service/model/git-repository.scm
@@ -4,6 +4,7 @@
#:export (all-git-repositories
git-repository-id->url
git-repository-url->git-repository-id
+ git-repositories-containing-commit
guix-revisions-and-jobs-for-git-repository))
@@ -56,3 +57,15 @@ ORDER BY 1 DESC NULLS FIRST, 2 DESC LIMIT 10;")
conn
query
(list git-repository-id)))
+
+(define (git-repositories-containing-commit conn commit)
+ (define query
+ "
+SELECT id, label, url, cgit_url_base
+FROM git_repositories WHERE id IN (
+ SELECT git_repository_id
+ FROM git_branches
+ WHERE commit = $1
+)")
+
+ (exec-query conn query (list commit)))