Package: guix-patches;
Reported by: Christopher Baines <mail <at> cbaines.net>
Date: Thu, 10 Nov 2022 14:10:02 UTC
Severity: normal
Tags: patch
Done: Christopher Baines <mail <at> cbaines.net>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 59171 in the body.
You can then email your comments to 59171 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
guix-patches <at> gnu.org
:bug#59171
; Package guix-patches
.
(Thu, 10 Nov 2022 14:10:02 GMT) Full text and rfc822 format available.Christopher Baines <mail <at> cbaines.net>
:guix-patches <at> gnu.org
.
(Thu, 10 Nov 2022 14:10:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Christopher Baines <mail <at> cbaines.net> To: guix-patches <at> gnu.org Subject: [PATCH] services: guix-build-coordinator: Remove duplicate log timestamp. Date: Thu, 10 Nov 2022 14:08:52 +0000
* gnu/services/guix.scm (guix-build-coordinator-shepherd-services, guix-build-coordinator-agent-shepherd-services, guix-build-coordinator-queue-builds-shepherd-services): Set %current-logfile-date-format to "". --- gnu/services/guix.scm | 246 +++++++++++++++++++++++------------------- 1 file changed, 134 insertions(+), 112 deletions(-) diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm index 907824ac61..cc31ec271b 100644 --- a/gnu/services/guix.scm +++ b/gnu/services/guix.scm @@ -333,31 +333,38 @@ (define (guix-build-coordinator-shepherd-services config) (documentation "Guix Build Coordinator") (provision '(guix-build-coordinator)) (requirement '(networking)) - (start #~(make-forkexec-constructor - (list #$(make-guix-build-coordinator-start-script - database-uri-string - allocation-strategy - "/var/run/guix-build-coordinator/pid" - package - #:agent-communication-uri-string - agent-communication-uri-string - #:client-communication-uri-string - client-communication-uri-string - #:hooks hooks - #:parallel-hooks parallel-hooks - #:guile guile)) - #:user #$user - #:group #$group - #:pid-file "/var/run/guix-build-coordinator/pid" - ;; Allow time for migrations to run - #:pid-file-timeout 60 - #:environment-variables - `(,(string-append - "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") - "LC_ALL=en_US.utf8" - "PATH=/run/current-system/profile/bin") ; for hooks - #:log-file "/var/log/guix-build-coordinator/coordinator.log")) - (stop #~(make-kill-destructor)))))) + (start #~(lambda args + (parameterize ((%current-logfile-date-format "")) + (apply + (make-forkexec-constructor + (list #$(make-guix-build-coordinator-start-script + database-uri-string + allocation-strategy + "/var/run/guix-build-coordinator/pid" + package + #:agent-communication-uri-string + agent-communication-uri-string + #:client-communication-uri-string + client-communication-uri-string + #:hooks hooks + #:parallel-hooks parallel-hooks + #:guile guile)) + #:user #$user + #:group #$group + #:pid-file "/var/run/guix-build-coordinator/pid" + ;; Allow time for migrations to run + #:pid-file-timeout 60 + #:environment-variables + `(,(string-append + "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") + "LC_ALL=en_US.utf8" + "PATH=/run/current-system/profile/bin") ; for hooks + #:log-file "/var/log/guix-build-coordinator/coordinator.log") + args)))) + (stop #~(make-kill-destructor)) + (modules + `((shepherd comm) + ,@%default-modules)))))) (define (guix-build-coordinator-activation config) #~(begin @@ -419,61 +426,69 @@ (define (guix-build-coordinator-agent-shepherd-services config) (documentation "Guix Build Coordinator Agent") (provision '(guix-build-coordinator-agent)) (requirement '(networking)) - (start #~(make-forkexec-constructor - (list #$(file-append package "/bin/guix-build-coordinator-agent") - #$(string-append "--coordinator=" coordinator) - #$@(match authentication - (($ <guix-build-coordinator-agent-password-auth> - uuid password) - #~(#$(string-append "--uuid=" uuid) - #$(string-append "--password=" password))) - (($ <guix-build-coordinator-agent-password-file-auth> - uuid password-file) - #~(#$(string-append "--uuid=" uuid) - #$(string-append "--password-file=" - password-file))) - (($ <guix-build-coordinator-agent-dynamic-auth> - agent-name token) - #~(#$(string-append "--name=" agent-name) - #$(string-append "--dynamic-auth-token=" token))) - (($ - <guix-build-coordinator-agent-dynamic-auth-with-file> - agent-name token-file) - #~(#$(string-append "--name=" agent-name) - #$(string-append "--dynamic-auth-token-file=" - token-file)))) - #$(simple-format #f "--max-parallel-builds=~A" - max-parallel-builds) - #$@(if max-allocated-builds - #~(#$(simple-format #f "--max-allocated-builds=~A" - max-allocated-builds)) - #~()) - #$@(if max-1min-load-average - #~(#$(simple-format #f "--max-1min-load-average=~A" - max-1min-load-average)) - #~()) - #$@(if derivation-substitute-urls - #~(#$(string-append - "--derivation-substitute-urls=" + (start + #~(lambda args + (parameterize ((%current-logfile-date-format "")) + (apply + make-forkexec-constructor + (list #$(file-append package "/bin/guix-build-coordinator-agent") + #$(string-append "--coordinator=" coordinator) + #$@(match authentication + (($ <guix-build-coordinator-agent-password-auth> + uuid password) + #~(#$(string-append "--uuid=" uuid) + #$(string-append "--password=" password))) + (($ <guix-build-coordinator-agent-password-file-auth> + uuid password-file) + #~(#$(string-append "--uuid=" uuid) + #$(string-append "--password-file=" + password-file))) + (($ <guix-build-coordinator-agent-dynamic-auth> + agent-name token) + #~(#$(string-append "--name=" agent-name) + #$(string-append "--dynamic-auth-token=" token))) + (($ + <guix-build-coordinator-agent-dynamic-auth-with-file> + agent-name token-file) + #~(#$(string-append "--name=" agent-name) + #$(string-append "--dynamic-auth-token-file=" + token-file)))) + #$(simple-format #f "--max-parallel-builds=~A" + max-parallel-builds) + #$@(if max-allocated-builds + #~(#$(simple-format #f "--max-allocated-builds=~A" + max-allocated-builds)) + #~()) + #$@(if max-1min-load-average + #~(#$(simple-format #f "--max-1min-load-average=~A" + max-1min-load-average)) + #~()) + #$@(if derivation-substitute-urls + #~(#$(string-append + "--derivation-substitute-urls=" (string-join derivation-substitute-urls " "))) - #~()) - #$@(if non-derivation-substitute-urls - #~(#$(string-append - "--non-derivation-substitute-urls=" - (string-join non-derivation-substitute-urls " "))) - #~()) - #$@(map (lambda (system) - (string-append "--system=" system)) - (or systems '()))) - #:user #$user - #:environment-variables - `(,(string-append - "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") - ;; XDG_CACHE_HOME is used by Guix when caching narinfo files - "XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent" - "LC_ALL=en_US.utf8") - #:log-file "/var/log/guix-build-coordinator/agent.log")) - (stop #~(make-kill-destructor)))))) + #~()) + #$@(if non-derivation-substitute-urls + #~(#$(string-append + "--non-derivation-substitute-urls=" + (string-join non-derivation-substitute-urls " "))) + #~()) + #$@(map (lambda (system) + (string-append "--system=" system)) + (or systems '()))) + #:user #$user + #:environment-variables + `(,(string-append + "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") + ;; XDG_CACHE_HOME is used by Guix when caching narinfo files + "XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent" + "LC_ALL=en_US.utf8") + #:log-file "/var/log/guix-build-coordinator/agent.log") + args))) + (stop #~(make-kill-destructor)) + (modules + `((shepherd comm) + ,@%default-modules)))))) (define (guix-build-coordinator-agent-activation config) #~(begin @@ -526,39 +541,46 @@ (define (guix-build-coordinator-queue-builds-shepherd-services config) (provision '(guix-build-coordinator-queue-builds)) (requirement '(networking)) (start - #~(make-forkexec-constructor - (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=" #$glibc-utf8-locales "/lib/locale") - "LC_ALL=en_US.utf8") - #:log-file "/var/log/guix-build-coordinator/queue-builds.log")) - (stop #~(make-kill-destructor)))))) + #~(lambda args + (parameterize ((%current-logfile-date-format "")) + (apply + (make-forkexec-constructor + (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=" #$glibc-utf8-locales "/lib/locale") + "LC_ALL=en_US.utf8") + #:log-file "/var/log/guix-build-coordinator/queue-builds.log") + args)))) + (stop #~(make-kill-destructor)) + (modules + `((shepherd comm) + ,@%default-modules)))))) (define (guix-build-coordinator-queue-builds-activation config) #~(begin -- 2.38.1
guix-patches <at> gnu.org
:bug#59171
; Package guix-patches
.
(Mon, 14 Nov 2022 17:27:02 GMT) Full text and rfc822 format available.Message #8 received at 59171 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Christopher Baines <mail <at> cbaines.net> Cc: 59171 <at> debbugs.gnu.org Subject: Re: bug#59171: [PATCH] services: guix-build-coordinator: Remove duplicate log timestamp. Date: Mon, 14 Nov 2022 18:26:10 +0100
Hi, Christopher Baines <mail <at> cbaines.net> skribis: > * gnu/services/guix.scm (guix-build-coordinator-shepherd-services, > guix-build-coordinator-agent-shepherd-services, > guix-build-coordinator-queue-builds-shepherd-services): Set > %current-logfile-date-format to "". [...] > + (start #~(lambda args > + (parameterize ((%current-logfile-date-format "")) > + (apply > + (make-forkexec-constructor > + (list #$(make-guix-build-coordinator-start-script > + database-uri-string > + allocation-strategy > + "/var/run/guix-build-coordinator/pid" > + package > + #:agent-communication-uri-string > + agent-communication-uri-string > + #:client-communication-uri-string > + client-communication-uri-string > + #:hooks hooks > + #:parallel-hooks parallel-hooks > + #:guile guile)) > + #:user #$user > + #:group #$group > + #:pid-file "/var/run/guix-build-coordinator/pid" > + ;; Allow time for migrations to run > + #:pid-file-timeout 60 > + #:environment-variables > + `(,(string-append > + "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") > + "LC_ALL=en_US.utf8" > + "PATH=/run/current-system/profile/bin") ; for hooks > + #:log-file "/var/log/guix-build-coordinator/coordinator.log") > + args)))) It’s not pretty but I don’t have anything else to offer. Perhaps you can make it slightly less verbose by writing it like this: (start #~(lambda () ;; Arrange so that shepherd does not add a timestamp to ;; the logs produced by the Coordinator. (parameterize … (fork+exec-command (list …) …)))) There are other services in a similar situation. I wonder what we should recommend. Ludo’.
Christopher Baines <mail <at> cbaines.net>
:Christopher Baines <mail <at> cbaines.net>
:Message #13 received at 59171-done <at> debbugs.gnu.org (full text, mbox):
From: Christopher Baines <mail <at> cbaines.net> To: 59171-done <at> debbugs.gnu.org Cc: Ludovic Courtès <ludo <at> gnu.org> Subject: Re: bug#59171: [PATCH] services: guix-build-coordinator: Remove duplicate log timestamp. Date: Sun, 20 Nov 2022 12:06:31 +0000
[Message part 1 (text/plain, inline)]
Ludovic Courtès <ludo <at> gnu.org> writes: > Perhaps you can make it slightly less verbose by writing it like this: > > (start #~(lambda () > ;; Arrange so that shepherd does not add a timestamp to > ;; the logs produced by the Coordinator. > (parameterize … > (fork+exec-command (list …) …)))) > > There are other services in a similar situation. I wonder what we > should recommend. Thanks, I've gone ahead and pushed this with the tweak suggested above as dafab37110677e2968deed817ba4872fe5a8f07c. Chris
[signature.asc (application/pgp-signature, inline)]
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sun, 18 Dec 2022 12:24:11 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.