unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] hydra: Use the new 'systems' field for build-machine definitions.
@ 2020-08-28  4:02 Maxim Cournoyer
  2020-08-28  6:39 ` Mathieu Othacehe
  0 siblings, 1 reply; 5+ messages in thread
From: Maxim Cournoyer @ 2020-08-28  4:02 UTC (permalink / raw)
  To: guix-devel; +Cc: Maxim Cournoyer

* hydra/machines-bayfront.scm (harbourfront): Change system to
systems, and include i686-linux in the list of systems.
(milano): Likewise.
(harbourfront-i686): Remove.
(milano-i686): Likewise.
(dover, redhill): Adapt to use the new systems field.
* hydra/machines-for-berlin.scm (template-x86_64): Change system to
systems, and include i686-linux in the list of systems.
(x86_64->i686): Remove.
(aarch64->armhf, x86_64->qemu-aarch64, x86_64->childhurd)
(overdrive, armv7): Adapt to use the new systems field.
---
 hydra/berlin-nodes.scm        |  2 +-
 hydra/machines-bayfront.scm   | 19 ++++-------------
 hydra/machines-for-berlin.scm | 40 ++++++++++++++++-------------------
 3 files changed, 23 insertions(+), 38 deletions(-)

diff --git a/hydra/berlin-nodes.scm b/hydra/berlin-nodes.scm
index 8f8f38e..37f1b6c 100644
--- a/hydra/berlin-nodes.scm
+++ b/hydra/berlin-nodes.scm
@@ -4,7 +4,7 @@
 (use-modules (sysadmin build-machines)
              (sysadmin people)
              (srfi srfi-1)
-			 (ice-9 match))
+             (ice-9 match))
 
 (define nodes
   '((101
diff --git a/hydra/machines-bayfront.scm b/hydra/machines-bayfront.scm
index bbb7d48..9f5cc9c 100644
--- a/hydra/machines-bayfront.scm
+++ b/hydra/machines-bayfront.scm
@@ -1,34 +1,26 @@
 (define harbourfront
   (build-machine
     (name "harbourfront.guix.info")
-    (system "x86_64-linux")
+    (systems '("x86_64-linux" "i686-linux"))
     (user "bayfront")
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBfd3VZqyoKoZG3X772eDBrN2MPhnNDDnVA34hpf0f9b root@(none)")
     (parallel-builds 3)
     (speed 1.0)))
     
-(define harbourfront-i686
-  (build-machine (inherit harbourfront)
-    (system "i686-linux")))
-
 (define milano
   (build-machine
     (name "milano-guix-1.di.unimi.it")
-    (system "x86_64-linux")
+    (systems '("x86_64-linux" "i686-linux"))
     (user "bayfront")
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPJFpBJSaOK2aDaR48Fm8udhLK9fl5YwNlq43uaLBeRv root@(none)")
     (parallel-builds 3)
     (speed 1.0)))
 
-(define milano-i686
-  (build-machine (inherit milano)
-    (system "i686-linux")))
-
 (define dover
   (build-machine
     (name "dover.guix.info")
     (port 9023)
-    (system "aarch64-linux")
+    (systems '("aarch64-linux"))
     (user "bayfront")
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJLRYD5RXZ3Espe+Kv1SzZl8Qc3NZ356Bq+cGjnKsDHY root@linux")
     (parallel-builds 3)
@@ -38,7 +30,7 @@
   (build-machine
     (name "redhill.guix.info")
     (port 9022)
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (user "bayfront")
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+FYr1NUTsXrJgquSTMz0Izkqw3ob7pCU+JPFHgEhHa root@redhill")
     (parallel-builds 3)
@@ -46,10 +38,7 @@
  
 (list
   harbourfront
-  harbourfront-i686
   milano
-  milano-i686
   dover
   redhill
 )
-
diff --git a/hydra/machines-for-berlin.scm b/hydra/machines-for-berlin.scm
index 69c918a..9ebea04 100644
--- a/hydra/machines-for-berlin.scm
+++ b/hydra/machines-for-berlin.scm
@@ -133,7 +133,7 @@
      (build-machine
       (name name)
       (user "hydra")
-      (system "x86_64-linux")
+      (systems '("x86_64-linux" "i686-linux"))
       (host-key key)
       (compression "no")
       (speed 3)                                   ;don't increase it too much
@@ -143,7 +143,7 @@
      (build-machine
       (name name)
       (user "hydra")
-      (system "x86_64-linux")
+      (systems '("x86_64-linux" "i686-linux"))
       (host-key key)
       (compression "no")
       (speed 3)                                   ;don't increase it too much
@@ -153,41 +153,37 @@
      (build-machine
       (name ip)
       (user "hydra")
-      (system "x86_64-linux")
+      (systems '("x86_64-linux" "i686-linux"))
       (host-key key)
       (compression "no")
       (speed 2)
       (parallel-builds 2)))))
 
-(define (x86_64->i686 machine)
-  (build-machine (inherit machine)
-   (system "i686-linux")))
-
 (define (aarch64->armhf machine)
   (build-machine
    (inherit machine)
-   (system "armhf-linux")
+   (systems '("armhf-linux"))
    (speed .9)
    (parallel-builds 1)))            ;limit to favor the "real" ARMv7 machines
 
 (define (x86_64->qemu-armhf machine)
   (build-machine
    (inherit machine)
-   (system "armhf-linux")
+   (systems '("armhf-linux"))
    (speed .8)                       ;prefer the "native" AArch64 machines
    (parallel-builds 1)))
 
 (define (x86_64->qemu-aarch64 machine)
   (build-machine
    (inherit machine)
-   (system "aarch64-linux")
+   (systems '("aarch64-linux"))
    (speed .9)
    (parallel-builds 1)))
 
 (define (x86_64->childhurd machine)
   (build-machine
    (inherit machine)
-   (system "i586-gnu")
+   (systems '("i586-gnu"))
    (parallel-builds 1)))
 
 (define overdrive
@@ -198,7 +194,7 @@
          (name "overdrive1.guixsd.org")
          (port 52522)
          (user "hydra")
-         (system "aarch64-linux")
+         (systems '("aarch64-linux"))
          (host-key
           "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPf2f93c90oi9s9qGVGWC3sDgG7kEBvIEwR021NsfG+z root@overdrive")
          (parallel-builds 2))
@@ -208,7 +204,7 @@
          (name "dover.guix.info")
          (port 9023)
          (user "hydra")
-         (system "aarch64-linux")
+         (systems '("aarch64-linux"))
          (host-key
           "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJLRYD5RXZ3Espe+Kv1SzZl8Qc3NZ356Bq+cGjnKsDHY root@linux")
          (parallel-builds 2))
@@ -222,7 +218,7 @@
 	     (name "localhost")
 	     (port 2230)
 	     (user "hydra")
-	     (system "aarch64-linux")
+	     (systems '("aarch64-linux"))
 	     (host-key
 	      "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIXfDYhBeVH0GenVp8PplaRF1jtNSOdLeNWf2k8G7K71 root@gnu")
          (parallel-builds 2))
@@ -234,7 +230,7 @@
          ;; (port 5552)
          (name "localhost") (port 2223)
          (user "hydra")
-         (system "aarch64-linux")
+         (systems '("aarch64-linux"))
          (host-key
           "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICqbQjcGAlYRunem82lXhc0T0xWWQUh53UPXzZzBePVQ nckx@dmitri.tobias.gr")
          (parallel-builds 2))
@@ -245,7 +241,7 @@
          ;; (port 5551)
          (name "localhost") (port 2222)
          (user "hydra")
-         (system "aarch64-linux")
+         (systems '("aarch64-linux"))
          (host-key
           "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMbnlRcOJwtlNVc3LcEgagqXNEWya666RiwBHImXtjUJ nckx@sergei.tobias.gr")
          (parallel-builds 2))))
@@ -256,20 +252,20 @@
    (build-machine
     (name "guix-x15.sjd.se")
     (user "hydra")
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfXjwCAFWeGiUoOVXEgtIeXxbtymjOTg7ph1ObMAcJ0 root@beaglebone"))
 
    (build-machine
     (name "guix-x15b.sjd.se")
     (user "hydra")
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEbCOTTg9Tl0E23Mnc0UA4Ib2W5oDqTukk6mT98tOph root@beaglebone"))
 
    #;(build-machine
     (name "hydra-slave1.netris.org")
     (port 7275)
     (user "hydra")
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDAe9mXufZXFfFlezafA/G2Nng66ssLLi5xPP+9NhGm root@hydra-slave1")
     (speed 1.0)
     (parallel-builds 2))
@@ -279,7 +275,7 @@
     (name "hydra-slave2.netris.org")
     (port 7276)
     (user "hydra")
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHzlJZzZfPiEcehmLFtQVYVt3j9w4DHPL6YgSC3EHJK+ root@hydra-slave2")
     (speed 1.0)
     (parallel-builds 2))
@@ -289,7 +285,7 @@
     (name "hydra-slave3.netris.org")
     (port 7274)
     (user "hydra")
-    (system "armhf-linux")
+    (systems '("armhf-linux"))
     (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBLOVhnS24E+Z1bXLUU4z4gE5+HsFxDxUPA6MbLHmnME root@hydra-slave3")
     (speed 1.0)
     (parallel-builds 2))))
@@ -305,7 +301,7 @@
        (fast/hurd (filter (compose childhurd-ip? build-machine-name) fast)))
   (append overdrive (map aarch64->armhf overdrive)
 	  armv7
-	  x86_64 (map x86_64->i686 x86_64)
+	  x86_64
 	  (map x86_64->qemu-aarch64 fast)
 	  (map x86_64->qemu-armhf fast)
           (map x86_64->childhurd fast/hurd)))
-- 
2.27.0



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] hydra: Use the new 'systems' field for build-machine definitions.
  2020-08-28  4:02 [PATCH] hydra: Use the new 'systems' field for build-machine definitions Maxim Cournoyer
@ 2020-08-28  6:39 ` Mathieu Othacehe
  2020-08-31  3:06   ` Maxim Cournoyer
  0 siblings, 1 reply; 5+ messages in thread
From: Mathieu Othacehe @ 2020-08-28  6:39 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: guix-devel


Hello Maxim,

>         (fast/hurd (filter (compose childhurd-ip? build-machine-name) fast)))
>    (append overdrive (map aarch64->armhf overdrive)
>  	  armv7
> -	  x86_64 (map x86_64->i686 x86_64)
> +	  x86_64
>  	  (map x86_64->qemu-aarch64 fast)
>  	  (map x86_64->qemu-armhf fast)
>            (map x86_64->childhurd fast/hurd)))

You could also get rid of "x86_64->qemu-aarch64" and
"x86_64->qemu-armhf" adding:

--8<---------------cut here---------------start------------->8---
(define template-x86_64
  (match-lambda
    ;; Prefer building on the new nodes.
    ((name key 128)
     (build-machine
      (name name)
      (user "hydra")
      (systems ("x86_64-linux" "i686-linux"
                "aarch64-linux" "armhf-linux"))
      (host-key key)
      (compression "no")
--8<---------------cut here---------------end--------------->8---

Otherwise, this looks good :)

Thanks,

Mathieu


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] hydra: Use the new 'systems' field for build-machine definitions.
  2020-08-28  6:39 ` Mathieu Othacehe
@ 2020-08-31  3:06   ` Maxim Cournoyer
  2020-09-03  5:31     ` Mathieu Othacehe
  0 siblings, 1 reply; 5+ messages in thread
From: Maxim Cournoyer @ 2020-08-31  3:06 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: guix-devel

Hello Mathieu,

Mathieu Othacehe <othacehe@gnu.org> writes:

> Hello Maxim,
>
>>         (fast/hurd (filter (compose childhurd-ip? build-machine-name) fast)))
>>    (append overdrive (map aarch64->armhf overdrive)
>>  	  armv7
>> -	  x86_64 (map x86_64->i686 x86_64)
>> +	  x86_64
>>  	  (map x86_64->qemu-aarch64 fast)
>>  	  (map x86_64->qemu-armhf fast)
>>            (map x86_64->childhurd fast/hurd)))
>
> You could also get rid of "x86_64->qemu-aarch64" and
> "x86_64->qemu-armhf" adding:

The reason I've kept those in is that they are used to dial the speed
field of the emulated build machines down, to prefer native hardware.
I'm not sure if this is still useful / worth the additional complexity?

> (define template-x86_64
>   (match-lambda
>     ;; Prefer building on the new nodes.
>     ((name key 128)
>      (build-machine
>       (name name)
>       (user "hydra")
>       (systems ("x86_64-linux" "i686-linux"
>                 "aarch64-linux" "armhf-linux"))
>       (host-key key)
>       (compression "no")
>
> Otherwise, this looks good :)

Thanks! I don't have SSH access to these machines, but it'll be
necessary to reconfigure them before updating those files.

Maxim


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] hydra: Use the new 'systems' field for build-machine definitions.
  2020-08-31  3:06   ` Maxim Cournoyer
@ 2020-09-03  5:31     ` Mathieu Othacehe
  2020-09-07 19:29       ` Maxim Cournoyer
  0 siblings, 1 reply; 5+ messages in thread
From: Mathieu Othacehe @ 2020-09-03  5:31 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: guix-devel


Hello Maxim,

> The reason I've kept those in is that they are used to dial the speed
> field of the emulated build machines down, to prefer native hardware.
> I'm not sure if this is still useful / worth the additional complexity?

Oh, I missed that detail. Then I guess you can feel free to proceed :).

> Thanks! I don't have SSH access to these machines, but it'll be
> necessary to reconfigure them before updating those files.

I'll take care of that. Hopefully with Ludo recent SSH fixes it will go
smoother than last time, when I had to run deploy in a bash loop.

Thanks,

Mathieu


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] hydra: Use the new 'systems' field for build-machine definitions.
  2020-09-03  5:31     ` Mathieu Othacehe
@ 2020-09-07 19:29       ` Maxim Cournoyer
  0 siblings, 0 replies; 5+ messages in thread
From: Maxim Cournoyer @ 2020-09-07 19:29 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: guix-devel

Hello Mathieu,

Mathieu Othacehe <othacehe@gnu.org> writes:

> Hello Maxim,
>
>> The reason I've kept those in is that they are used to dial the speed
>> field of the emulated build machines down, to prefer native hardware.
>> I'm not sure if this is still useful / worth the additional complexity?
>
> Oh, I missed that detail. Then I guess you can feel free to proceed :).

Pushed!  Thank you,

Maxim


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-09-07 19:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-28  4:02 [PATCH] hydra: Use the new 'systems' field for build-machine definitions Maxim Cournoyer
2020-08-28  6:39 ` Mathieu Othacehe
2020-08-31  3:06   ` Maxim Cournoyer
2020-09-03  5:31     ` Mathieu Othacehe
2020-09-07 19:29       ` Maxim Cournoyer

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).