From 27f14634102a73d4252d86b912f67e9ad464be1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 20 Nov 2018 16:42:30 +0100 Subject: base: Keep going when a Git error is raised. * src/cuirass/base.scm (process-specs): Catch 'git-error around call to 'process'. --- src/cuirass/base.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/cuirass/base.scm b/src/cuirass/base.scm index b321778..c7447fa 100644 --- a/src/cuirass/base.scm +++ b/src/cuirass/base.scm @@ -734,4 +734,13 @@ started)." ;; 'spawn-fiber' returns zero values but we need one. *unspecified*)))) - (for-each process jobspecs)) + (for-each (lambda (spec) + ;; Catch Git errors, which might be transient, and keep going. + (catch 'git-error + (lambda () + (process spec)) + (lambda (key error) + (log-message "Git error while fetching inputs of '~a': ~s~%" + (assq-ref spec #:name) + (git-error-message error))))) + jobspecs)) -- cgit v1.2.3