diff options
author | Christopher Baines <mail@cbaines.net> | 2021-12-19 21:06:25 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2021-12-19 21:06:25 +0000 |
commit | 598221621e57e0b9cd29fe3e489eb2de2a47b1e9 (patch) | |
tree | aba15bff35c0922961c51404f0efc65a11c484ed | |
parent | de011c72666b01fd531819451c408228c8595a3a (diff) | |
download | build-coordinator-598221621e57e0b9cd29fe3e489eb2de2a47b1e9.tar build-coordinator-598221621e57e0b9cd29fe3e489eb2de2a47b1e9.tar.gz |
Report the total bytes when reporting upload progress
-rw-r--r-- | guix-build-coordinator/agent.scm | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/guix-build-coordinator/agent.scm b/guix-build-coordinator/agent.scm index fd5a3a8..1fe0333 100644 --- a/guix-build-coordinator/agent.scm +++ b/guix-build-coordinator/agent.scm @@ -115,7 +115,7 @@ (define uploads-condition-variable (make-condition-variable)) - (define (with-upload-monitoring lgr file p) + (define (with-upload-monitoring lgr file total-bytes p) (define upload-progress-record (make-upload-progress file 0)) @@ -154,10 +154,11 @@ ": " (format #f - "~2,2f" + "~2,2f/~2,2f" (/ (upload-progress-bytes-sent upload-progress) - 1000000)) + 1000000) + (/ total-bytes 1000000)) "MB sent"))) upload-slots))))) @@ -835,10 +836,13 @@ but the guix-daemon claims it's unavailable" (make-exception-with-irritants missing-output-name)))) - (submit-one-output missing-output-name - missing-output - (assoc-ref compressed-outputs - missing-output-name))) + (let ((compressed-file + (assoc-ref compressed-outputs + missing-output-name))) + (submit-one-output missing-output-name + missing-output + (stat:size (stat compressed-file)) + compressed-file))) (attempt-submit-build-result))) (raise-exception @@ -857,12 +861,13 @@ but the guix-daemon claims it's unavailable" #:log (build-log-procedure lgr build-id))) #:unwind? #t)) - (define (submit-one-output output-name output compressed-file) + (define (submit-one-output output-name output bytes compressed-file) (retry-on-error (lambda () (with-upload-monitoring lgr (derivation-output-path output) + bytes (lambda (report-bytes-sent) (log-msg lgr 'INFO build-id ": submitting output " @@ -880,9 +885,12 @@ but the guix-daemon claims it's unavailable" (log-msg lgr 'INFO build-id ": build successful, submitting outputs") (for-each (match-lambda ((output-name . output) - (submit-one-output output-name - output - (assoc-ref compressed-outputs output-name)))) + (let ((compressed-file + (assoc-ref compressed-outputs output-name))) + (submit-one-output output-name + output + (stat:size (stat compressed-file)) + compressed-file)))) outputs) (log-msg lgr 'INFO build-id ": finished submitting outputs, reporting build success")) |