git: 'latest-repository-commit' logs its progress.

* guix/git.scm (latest-repository-commit): Add #:log-port and honor it.
This commit is contained in:
Ludovic Courtès 2018-11-27 14:48:32 +01:00 committed by Ludovic Courtès
parent 2f24b9ca8b
commit 35cb37ea9c
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 6 additions and 1 deletions

View File

@ -154,6 +154,7 @@ data, respectively [<branch name> | <sha1> | <tag name>]."
(define* (latest-repository-commit store url
#:key
(log-port (%make-void-port "w"))
(cache-directory
(%repository-cache-directory))
(ref '(branch . "master")))
@ -164,11 +165,14 @@ REF is pair whose key is [branch | commit | tag] and value the associated
data, respectively [<branch name> | <sha1> | <tag name>].
Git repositories are kept in the cache directory specified by
%repository-cache-directory parameter."
%repository-cache-directory parameter.
Log progress and checkout info to LOG-PORT."
(define (dot-git? file stat)
(and (string=? (basename file) ".git")
(eq? 'directory (stat:type stat))))
(format log-port "updating checkout of '~a'...~%" url)
(let*-values
(((checkout commit)
(update-cached-checkout url
@ -177,6 +181,7 @@ Git repositories are kept in the cache directory specified by
(url-cache-directory url cache-directory)))
((name)
(url+commit->name url commit)))
(format log-port "retrieved commit ~a~%" commit)
(values (add-to-store store name #t "sha256" checkout
#:select? (negate dot-git?))
commit)))