aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/coordinator.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-build-coordinator/coordinator.scm')
-rw-r--r--guix-build-coordinator/coordinator.scm20
1 files changed, 20 insertions, 0 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index c8727c8..a38045b 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -42,6 +42,8 @@
build-coordinator-metrics-registry
build-coordinator-allocation-strategy
+ perform-coordinator-service-startup
+
submit-build
new-agent
new-agent-password
@@ -82,8 +84,26 @@
build-coordinator
(make-build-allocator-thread build-coordinator))
+ (start-hook-processing-threads build-coordinator)
+
build-coordinator))
+(define* (perform-coordinator-service-startup build-coordinator
+ #:key
+ (update-datastore? #t)
+ (pid-file #f)
+ (trigger-build-allocation? #t))
+ (when update-datastore?
+ (datastore-update (build-coordinator-datastore build-coordinator)))
+
+ (when pid-file
+ (call-with-output-file pid-file
+ (lambda (port)
+ (simple-format port "~A\n" (getpid)))))
+
+ (when trigger-build-allocation?
+ (trigger-build-allocation build-coordinator)))
+
(define* (submit-build build-coordinator derivation-file
#:key
requested-uuid