summaryrefslogtreecommitdiff
path: root/bin/cuirass.in
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cuirass.in')
-rw-r--r--bin/cuirass.in11
1 files changed, 10 insertions, 1 deletions
diff --git a/bin/cuirass.in b/bin/cuirass.in
index 4553567..56db386 100644
--- a/bin/cuirass.in
+++ b/bin/cuirass.in
@@ -107,7 +107,15 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@"
new-specs)))
(if one-shot?
(process-specs db (db-get-specifications db))
- (begin
+ (let ((pending (db-get-builds db '((status pending)))))
+ ;; First off, restart builds that had not completed or
+ ;; were not even started on a previous run.
+ (spawn-fiber
+ (lambda ()
+ (with-store store
+ (with-database db
+ (restart-builds store db pending)))))
+
(spawn-fiber
(lambda ()
(with-database db
@@ -115,6 +123,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@"
(process-specs db (db-get-specifications db))
(log-message "sleeping for ~a seconds" interval)
(sleep interval)))))
+
(with-database db
(run-cuirass-server db
#:host host