diff options
Diffstat (limited to 'guix-build-coordinator')
-rw-r--r-- | guix-build-coordinator/utils.scm | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/guix-build-coordinator/utils.scm b/guix-build-coordinator/utils.scm index 1401ac8..69cd743 100644 --- a/guix-build-coordinator/utils.scm +++ b/guix-build-coordinator/utils.scm @@ -445,13 +445,19 @@ context." (with-exception-handler (lambda (exn) - (let ((log-string - (get-output-string log-port))) + (let* ((log-string + (get-output-string log-port)) + (lines + (string-split log-string #\newline)) + (last-n-lines + (if (< 10 (length lines)) + (take-right lines 10) + lines))) (close-output-port log-port) (simple-format (current-error-port) "exception when substituting derivation: ~A:\n ~A\n" - exn log-string) + exn (string-join last-n-lines "\n")) (raise-exception exn))) (lambda () (parameterize ((current-build-output-port log-port)) |