Add select-guix-revision-for-branch-and-datetime
To get the guix revision that was on a branch at a given date and time.
This commit is contained in:
parent
9fa2e9e5ac
commit
fc6aeab4ed
1 changed files with 21 additions and 0 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
(define-module (guix-data-service model guix-revision)
|
(define-module (guix-data-service model guix-revision)
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
|
#:use-module (srfi srfi-19)
|
||||||
#:use-module (ice-9 match)
|
#:use-module (ice-9 match)
|
||||||
#:use-module (squee)
|
#:use-module (squee)
|
||||||
#:export (count-guix-revisions
|
#:export (count-guix-revisions
|
||||||
|
|
@ -8,6 +9,7 @@
|
||||||
insert-guix-revision
|
insert-guix-revision
|
||||||
guix-commit-exists?
|
guix-commit-exists?
|
||||||
guix-revision-exists?
|
guix-revision-exists?
|
||||||
|
select-guix-revision-for-branch-and-datetime
|
||||||
guix-revisions-cgit-url-bases))
|
guix-revisions-cgit-url-bases))
|
||||||
|
|
||||||
(define (count-guix-revisions conn)
|
(define (count-guix-revisions conn)
|
||||||
|
|
@ -59,6 +61,25 @@
|
||||||
(exec-query conn query))))
|
(exec-query conn query))))
|
||||||
(string=? result "t")))
|
(string=? result "t")))
|
||||||
|
|
||||||
|
(define (select-guix-revision-for-branch-and-datetime conn branch datetime)
|
||||||
|
(define query
|
||||||
|
"
|
||||||
|
SELECT guix_revisions.id,
|
||||||
|
guix_revisions.commit,
|
||||||
|
guix_revisions.store_path,
|
||||||
|
guix_revisions.git_repository_id
|
||||||
|
FROM guix_revisions
|
||||||
|
INNER JOIN git_branches
|
||||||
|
ON git_branches.commit = guix_revisions.commit
|
||||||
|
AND git_branches.git_repository_id = guix_revisions.git_repository_id
|
||||||
|
WHERE git_branches.name = $1 AND git_branches.datetime >= $2
|
||||||
|
ORDER BY git_branches.datetime ASC
|
||||||
|
LIMIT 1")
|
||||||
|
|
||||||
|
(car
|
||||||
|
(exec-query conn query (list branch
|
||||||
|
(date->string datetime "~1 ~3")))))
|
||||||
|
|
||||||
(define (guix-revisions-cgit-url-bases conn guix-revision-ids)
|
(define (guix-revisions-cgit-url-bases conn guix-revision-ids)
|
||||||
(map
|
(map
|
||||||
car
|
car
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue