diff options
author | Christopher Baines <mail@cbaines.net> | 2019-03-01 07:29:49 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2019-03-01 07:29:49 +0000 |
commit | 853a2e4125d13a8fbb62ce4217d06bad85a1ea06 (patch) | |
tree | a235e0e4b510b9bdd7899dade4e24ace9672ad1c | |
parent | 6d0eaab4e792188822417754a17439a54fb1ad6d (diff) | |
download | data-service-853a2e4125d13a8fbb62ce4217d06bad85a1ea06.tar data-service-853a2e4125d13a8fbb62ce4217d06bad85a1ea06.tar.gz |
Handle failures in load-new-guix-revision
Currently, I think the desired commit can be missing, if patches come
in gradually, and the series changes after the first laminar job has
been run. Therefore, try to ignore some errors and just delete the
job.
-rw-r--r-- | guix-data-service/jobs/load-new-guix-revision.scm | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/guix-data-service/jobs/load-new-guix-revision.scm b/guix-data-service/jobs/load-new-guix-revision.scm index b9b1380..3fd461b 100644 --- a/guix-data-service/jobs/load-new-guix-revision.scm +++ b/guix-data-service/jobs/load-new-guix-revision.scm @@ -108,11 +108,17 @@ (derivation->output-path derivation))) (define (channel->guix-store-item store channel) - (dirname - (readlink - (string-append (channel->manifest-store-item store - channel) - "/bin")))) + (catch + #t + (lambda () + (dirname + (readlink + (string-append (channel->manifest-store-item store + channel) + "/bin")))) + (lambda args + (simple-format #t "guix-data-service: load-new-guix-revision: error: ~A\n" args) + #f))) (define (extract-information-from store conn url commit store_path) (let ((inf (open-inferior/container store store_path @@ -144,7 +150,8 @@ (channel (name 'guix) (url url) (commit commit))))) - (extract-information-from store conn url commit store-item))))) + (and store-item + (extract-information-from store conn url commit store-item)))))) (define (select-job-for-commit conn commit) (let ((result |