From cbe64c316dda4307d8ae47ca9f696ff874fb4e28 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 13 Dec 2023 12:48:47 +0000 Subject: [PATCH] services: guix: Remove guix-build-coordinator-queue-builds service. This has been effectively replaced by the bffe. * gnu/services/guix.scm (): Remove record type. (guix-build-coordinator-queue-builds-shepherd-services, guix-build-coordinator-queue-builds-activation, guix-build-coordinator-queue-builds-account): Remove procedures (guix-build-coordinator-queue-builds-service-type): Remove service type. Change-Id: I2a233fb10b12cc9bfddebaa35928b25c243f82a2 --- doc/guix.texi | 52 ----------------- gnu/services/guix.scm | 133 ------------------------------------------ 2 files changed, 185 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index f869a6bae4..76b4eae67f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -38763,58 +38763,6 @@ the coordinator database, and is used by the agent to authenticate. @end table @end deftp -The Guix Build Coordinator package contains a script to query an -instance of the Guix Data Service for derivations to build, and then -submit builds for those derivations to the coordinator. The service -type below assists in running this script. This is an additional tool -that may be useful when building derivations contained within an -instance of the Guix Data Service. - -@defvar guix-build-coordinator-queue-builds-service-type -Service type for the -guix-build-coordinator-queue-builds-from-guix-data-service script. Its -value must be a @code{guix-build-coordinator-queue-builds-configuration} -object. -@end defvar - -@deftp {Data Type} guix-build-coordinator-queue-builds-configuration -Data type representing the options to the queue builds from guix data -service script. - -@table @asis -@item @code{package} (default: @code{guix-build-coordinator}) -The Guix Build Coordinator package to use. - -@item @code{user} (default: @code{"guix-build-coordinator-queue-builds"}) -The system user to run the service as. - -@item @code{coordinator} (default: @code{"http://localhost:8746"}) -The URI to use when connecting to the coordinator. - -@item @code{systems} (default: @code{#f}) -The systems for which to fetch derivations to build. - -@item @code{systems-and-targets} (default: @code{#f}) -An association list of system and target pairs for which to fetch -derivations to build. - -@item @code{guix-data-service} (default: @code{"https://data.guix.gnu.org"}) -The Guix Data Service instance from which to query to find out about -derivations to build. - -@item @code{guix-data-service-build-server-id} (default: @code{#f}) -The Guix Data Service build server ID corresponding to the builds being -submitted. Providing this speeds up the submitting of builds as -derivations that have already been submitted can be skipped before -asking the coordinator to build them. - -@item @code{processed-commits-file} (default: @code{"/var/cache/guix-build-coordinator-queue-builds/processed-commits"}) -A file to record which commits have been processed, to avoid needlessly -processing them again if the service is restarted. - -@end table -@end deftp - @subsubheading Guix Data Service The @uref{http://data.guix.gnu.org,Guix Data Service} processes, stores and provides data about GNU Guix. This includes information about diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm index 389903451a..ff6cce507e 100644 --- a/gnu/services/guix.scm +++ b/gnu/services/guix.scm @@ -88,19 +88,6 @@ guix-build-coordinator-agent-service-type - guix-build-coordinator-queue-builds-configuration - guix-build-coordinator-queue-builds-configuration? - guix-build-coordinator-queue-builds-configuration-package - guix-build-coordinator-queue-builds-configuration-user - guix-build-coordinator-queue-builds-coordinator - guix-build-coordinator-queue-builds-configuration-systems - guix-build-coordinator-queue-builds-configuration-system-and-targets - guix-build-coordinator-queue-builds-configuration-guix-data-service - guix-build-coordinator-queue-builds-configuration-guix-data-service-build-server-id - guix-build-coordinator-queue-builds-configuration-processed-commits-file - - guix-build-coordinator-queue-builds-service-type - guix-data-service-configuration guix-data-service-configuration? @@ -250,31 +237,6 @@ (agent-name guix-build-coordinator-agent-dynamic-auth-with-file-agent-name) (token-file guix-build-coordinator-agent-dynamic-auth-with-file-token-file)) -(define-record-type* - guix-build-coordinator-queue-builds-configuration - make-guix-build-coordinator-queue-builds-configuration - guix-build-coordinator-queue-builds-configuration? - (package guix-build-coordinator-queue-builds-configuration-package - (default guix-build-coordinator)) - (user guix-build-coordinator-queue-builds-configuration-user - (default "guix-build-coordinator-queue-builds")) - (coordinator guix-build-coordinator-queue-builds-coordinator - (default "http://localhost:8746")) - (systems guix-build-coordinator-queue-builds-configuration-systems - (default #f)) - (systems-and-targets - guix-build-coordinator-queue-builds-configuration-system-and-targets - (default #f)) - (guix-data-service - guix-build-coordinator-queue-builds-configuration-guix-data-service - (default "https://data.guix.gnu.org")) - (guix-data-service-build-server-id - guix-build-coordinator-queue-builds-configuration-guix-data-service-build-server-id - (default #f)) - (processed-commits-file - guix-build-coordinator-queue-builds-configuration-processed-commits-file - (default "/var/cache/guix-build-coordinator-queue-builds/processed-commits"))) - (define* (make-guix-build-coordinator-start-script database-uri-string allocation-strategy pid-file @@ -559,101 +521,6 @@ (description "Run a Guix Build Coordinator agent."))) -(define (guix-build-coordinator-queue-builds-shepherd-services config) - (match-record config - (package user coordinator systems systems-and-targets - guix-data-service - guix-data-service-build-server-id - processed-commits-file) - (list - (shepherd-service - (documentation "Guix Build Coordinator queue builds from Guix Data Service") - (provision '(guix-build-coordinator-queue-builds)) - (requirement '(networking)) - (start - #~(lambda _ - (parameterize ((%current-logfile-date-format "")) - (fork+exec-command - (list - #$(file-append - package - "/bin/guix-build-coordinator-queue-builds-from-guix-data-service") - #$(string-append "--coordinator=" coordinator) - #$@(map (lambda (system) - (string-append "--system=" system)) - (or systems '())) - #$@(map (match-lambda - ((system . target) - (string-append "--system-and-target=" system "=" target))) - (or systems-and-targets '())) - #$@(if guix-data-service - #~(#$(string-append "--guix-data-service=" guix-data-service)) - #~()) - #$@(if guix-data-service-build-server-id - #~(#$(simple-format - #f - "--guix-data-service-build-server-id=~A" - guix-data-service-build-server-id)) - #~()) - #$@(if processed-commits-file - #~(#$(string-append "--processed-commits-file=" - processed-commits-file)) - #~())) - #:user #$user - #:environment-variables - `(,(string-append - "GUIX_LOCPATH=" - #$(libc-utf8-locales-for-target) "/lib/locale") - "LC_ALL=en_US.utf8") - #:log-file "/var/log/guix-build-coordinator/queue-builds.log")))) - (stop #~(make-kill-destructor)) - (modules - `((shepherd comm) - ,@%default-modules)))))) - -(define (guix-build-coordinator-queue-builds-activation config) - #~(begin - (use-modules (guix build utils)) - - (define %user - (getpw #$(guix-build-coordinator-queue-builds-configuration-user - config))) - - (mkdir-p "/var/log/guix-build-coordinator") - - ;; Allow writing the processed commits file - (mkdir-p "/var/cache/guix-build-coordinator-queue-builds") - (chown "/var/cache/guix-build-coordinator-queue-builds" - (passwd:uid %user) - (passwd:gid %user)))) - -(define (guix-build-coordinator-queue-builds-account config) - (list (user-account - (name (guix-build-coordinator-queue-builds-configuration-user config)) - (group "nogroup") - (system? #t) - (comment "Guix Build Coordinator queue-builds user") - (home-directory "/var/empty") - (shell (file-append shadow "/sbin/nologin"))))) - -(define guix-build-coordinator-queue-builds-service-type - (service-type - (name 'guix-build-coordinator-queue-builds) - (extensions - (list - (service-extension shepherd-root-service-type - guix-build-coordinator-queue-builds-shepherd-services) - (service-extension activation-service-type - guix-build-coordinator-queue-builds-activation) - (service-extension account-service-type - guix-build-coordinator-queue-builds-account))) - (description - "Run the guix-build-coordinator-queue-builds-from-guix-data-service -script. - -This is a script to assist in having the Guix Build Coordinator build -derivations stored in an instance of the Guix Data Service."))) - ;;; ;;; Guix Data Service