;; Install this file as /etc/guix/machines.scm on berlin.guix.gnu.org (use-modules (ice-9 match) (srfi srfi-1)) ;; These are all hosted at the MDC in Berlin Buch. They are connected to ;; a dedicated VLAN and can only be accessed from berlin.guix.gnu.org. (define hosts '(;;; New machines. We should use DNS for them in the future. ;; hydra-guix-104 ("141.80.167.161" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINuVkwaeU+ddDpDQoxyFboiBnRNyhGDT8yOy8VAyJxZ6" 128) ;; hydra-guix-105 ("141.80.167.162" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH9o9VrkR2OKoGeuyJkzSsLIaDVApkbHEQvgr8aywQf8" 128) ;; hydra-guix-106 ("141.80.167.163" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBWN8i6YSGaRddTUgjodvQ4+g+6qYRe+0t9Mi8zOXawG" 128) ;; hydra-guix-107 ("141.80.167.164" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII+nI0XnLKShi3tZEdPdEVQ1VLlZjgQNSKMTK55FwH/4" 128) ;; hydra-guix-108 ("141.80.167.165" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHvMT+OlslyCzp7PvIvG/m9aCNhk3jnGS4kh8Cxh26CK" 128) ;; hydra-guix-109 ("141.80.167.166" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHkmH+o9P2kmgtjyGU9/vLEmFbxwUlq62lWu3lLc1J5o" 128) ;; hydra-guix-110 ("141.80.167.167" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM2A2GxCw3oF6W2a5P9/K/jw1BWNJdAy9cr7NLRWvHVl" 128) ;; hydra-guix-111 ("141.80.167.168" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILJoZitLeltTfd7dDAnRbuP1uCWmTsYjIKALcadXknMl" 128) ;; hydra-guix-112 #; ("141.80.167.169" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFS6PDp6MVutJiieJgDaLvub83oeTvWYLJnELxqCyO7x" 128) ;; hydra-guix-113 ("141.80.167.170" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMn5ujp4uTRVwYGPr2kgh7YMXISj+WyRxe8cGxzb1KrL" 128) ;; hydra-guix-115 ("141.80.167.172" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG9zXGZ5b6QroN4RybnKLIMZwKtFuMpsNypkUXdFmH88" 128) ;; hydra-guix-116 ("141.80.167.173" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFg0y4UyuTkYoa3hwqj2ByQXYBMQdbPKz7nEz7I1lquL" 128) ;; hydra-guix-117 ("141.80.167.174" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINPPjhX6Z3bgt7EZmIfUdsgFnqp3yLr4msccjwsD2Q8F" 128) ;; hydra-guix-118 ("141.80.167.175" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJfJfTctnzEzVBLZxIq4WIOWY0s9JHcvIztdIYSFlklH" 128) ;; hydra-guix-119 ("141.80.167.176" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGE6FwL94/YDJIioQsLqh/MnwGcXmKYARd/kBGs+RWM7" 128) ;; hydra-guix-120 ("141.80.167.177" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH3rXQZCQbVliJUgavSxNWvA4XUX7cXj7zd5VvUggCbv" 128) ;; hydra-guix-121 #; ("141.80.167.178" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGNVaPCyKRrprBivEWYmtVecaJ+DIkET3gCYzGOuRAcz" 128) ;; hydra-guix-122 ("141.80.167.179" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHladb6HkAEmITzNOmI1kH7A4R1MiKp0Y72aPJNwuIDB" 128) ;; hydra-guix-123 ("141.80.167.180" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOM29Lj7rNDDsU5JOuDgFGfepWY9WHs6WaMLj9/7IceX" 128) ;; hydra-guix-124 ("141.80.167.181" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIODiKP7qIkkDeqvzKG2JsrDlNRe3CTN+icGgQ1J5ZUP+" 128) ;; hydra-guix-125 ("141.80.167.182" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPrlasUtgZgKfJ0oNhBQx/2QIQ+J+jbAT842VoJlBhor" 192) ;; hydra-guix-126 ("141.80.167.183" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIUprP1E2cRkMrwBnl1FkeCQ5UhZRin6dKQrB9p4WrV6" 192) ;; hydra-guix-127 ("141.80.167.184" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHdrEcEoo2AQ6aDXhLUWxLhp4kTq+DJLwXxvgu4As1bo" 192) ;; hydra-guix-128 #; ("141.80.167.185" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAIomlYpFmdaTiWGf4DWs6sc831zbNlU5XBjicHmZINA" 192) ;; hydra-guix-129 ("141.80.167.186" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICBZkQ4ZQgMGs/3druNQLsyFWHVhjtmN/sj1fxrPeUqJ" 192))) (define template-x86_64 (match-lambda ;; Prefer building on the new nodes. ((name key 128) (build-machine (name name) (user "hydra") (system "x86_64-linux") (host-key key) (compression "no") (speed 3) ;don't increase it too much ;or everything goes there (parallel-builds 16))) ((name key 192) (build-machine (name name) (user "hydra") (system "x86_64-linux") (host-key key) (compression "no") (speed 3) ;don't increase it too much ;or everything goes there (parallel-builds 16))) ((ip key ram) (build-machine (name ip) (user "hydra") (system "x86_64-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") (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") (speed .8) ;prefer the "native" AArch64 machines (parallel-builds 1))) (define (x86_64->qemu-aarch64 machine) (build-machine (inherit machine) (system "aarch64-linux") (speed .9) (parallel-builds 1))) (define overdrive ;; The SoftIron OverDrive 1000 donated by ARM: ;; . (list (build-machine ;; 91.160.117.201 or 2a01:e0a:1d:7270:af76:b9b:ca24:c465 (name "overdrive1.guixsd.org") (port 52522) (user "hydra") (system "aarch64-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPf2f93c90oi9s9qGVGWC3sDgG7kEBvIEwR021NsfG+z root@overdrive") (parallel-builds 2)) (build-machine ;; 80.67.176.63 (name "dover.guix.info") (port 9023) (user "hydra") (system "aarch64-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJLRYD5RXZ3Espe+Kv1SzZl8Qc3NZ356Bq+cGjnKsDHY root@linux") (parallel-builds 2)) ;; Note: Temporary SSH tunnel. ;; Disabled 2019-12-08 as it moves elsewhere -- Ludo' #; (build-machine ;;(name "monokuma.lepiller.eu") ;;(port 2222) (name "localhost") (port 2230) (user "hydra") (system "aarch64-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIXfDYhBeVH0GenVp8PplaRF1jtNSOdLeNWf2k8G7K71 root@gnu") (parallel-builds 2)) ;; Note: Temporary SSH tunnel set up for {dmitri,sergei}. (build-machine ;; Dynamic IP. ;; (name "dmitri.tobias.gr") ;; (port 5552) (name "localhost") (port 2223) (user "hydra") (system "aarch64-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICqbQjcGAlYRunem82lXhc0T0xWWQUh53UPXzZzBePVQ nckx@dmitri.tobias.gr") (parallel-builds 2)) (build-machine ;; Dynamic IP. ;; (name "sergei.tobias.gr") ;; (port 5551) (name "localhost") (port 2222) (user "hydra") (system "aarch64-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMbnlRcOJwtlNVc3LcEgagqXNEWya666RiwBHImXtjUJ nckx@sergei.tobias.gr") (parallel-builds 2)))) (define armv7 (list ;; BeagleBoard (2 cores) kindly hosted by Simon Josefsson. (build-machine (name "guix-x15.sjd.se") (user "hydra") (system "armhf-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfXjwCAFWeGiUoOVXEgtIeXxbtymjOTg7ph1ObMAcJ0 root@beaglebone")) (build-machine (name "guix-x15b.sjd.se") (user "hydra") (system "armhf-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEbCOTTg9Tl0E23Mnc0UA4Ib2W5oDqTukk6mT98tOph root@beaglebone")) #;(build-machine (name "hydra-slave1.netris.org") (port 7275) (user "hydra") (system "armhf-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDAe9mXufZXFfFlezafA/G2Nng66ssLLi5xPP+9NhGm root@hydra-slave1") (speed 1.0) (parallel-builds 2)) ;; I/O errors as of 2020-02-27 #;(build-machine (name "hydra-slave2.netris.org") (port 7276) (user "hydra") (system "armhf-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHzlJZzZfPiEcehmLFtQVYVt3j9w4DHPL6YgSC3EHJK+ root@hydra-slave2") (speed 1.0) (parallel-builds 2)) ;; Not responding as of 2020-02-27 #;(build-machine (name "hydra-slave3.netris.org") (port 7274) (user "hydra") (system "armhf-linux") (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBLOVhnS24E+Z1bXLUU4z4gE5+HsFxDxUPA6MbLHmnME root@hydra-slave3") (speed 1.0) (parallel-builds 2)))) (let* ((x86_64 (map template-x86_64 hosts)) (fast (filter-map (match-lambda ((name key 128) (find (lambda (machine) (string=? ((@@ (guix scripts offload) build-machine-name) machine) name)) x86_64)) (_ #f)) hosts))) (append overdrive (map aarch64->armhf overdrive) armv7 x86_64 (map x86_64->i686 x86_64) (map x86_64->qemu-aarch64 fast) (map x86_64->qemu-armhf fast)))