Subject: bug#53342: Environmental variables for cuirass service ?

From: Nicolas Graves <[email-masked]>
Date: Tue, 18 Jan 2022 11:29:45 +0100

Hi,

(In short), I'm looking for a way to add environmental variables to a
cuirass register job.

I've recently setup a cuirass server to ease my contributions to guix.
While everything seems to work fine when not using the flat channel (for
emacs-pgtk), I get the following error when added to cuirass
specifications :

2022-01-18T09:59:09 error: fatal: uncaught exception 'wrong-type-arg' in 'r
estart-builds' fiber!
2022-01-18T09:59:09 error: exception arguments: ("struct-vtable" "Wrong typ
e argument in position 1 (expecting struct): ~S" (#f) (#f))
In ice-9/boot-9.scm:
  1747:15  7 (with-exception-handler #<procedure 7f778dfed030 at ic?> ?)
  1752:10  6 (with-exception-handler _ _ #:unwind? _ # _)
  1685:16  5 (raise-exception _ #:continuable? _)
  1780:13  4 (_ #<&compound-exception components: (#<&assertion-fail?>)
   2137:6  3 (_ _ . _)
  1747:15  2 (with-exception-handler #<procedure 7f778e07f2d0 at ic?> ?)
In cuirass/utils.scm:
   299:22  1 (_)
In unknown file:
           0 (make-stack #t)
ERROR: In procedure make-stack:
In procedure struct-vtable: Wrong type argument in position 1 (expecting st
ruct): #f

Some deprecated features have been used.  Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information.  Set it to "no" to suppress
this message.

Not very verbose. I took a look at the gnu/services/cuirass.scm file to
see if there was a way to add environment-variables, but it doesn't seem
that it's the case.

Is there another way to setup global environmental variables on the
server ? Or should I add such an option in the cuirass service
definition and commit a patch ?

Thanks in advance,
Cheers,

Nicolas Graves