From patchwork Mon Aug 19 16:41:24 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Jakob L. Kreuze" X-Patchwork-Id: 14965 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 6E1AE172F0; Mon, 19 Aug 2019 17:42:13 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 24FE8172ED for ; Mon, 19 Aug 2019 17:42:13 +0100 (BST) Received: from localhost ([::1]:55564 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1hzkjU-0004Hw-I5 for patchwork@mira.cbaines.net; Mon, 19 Aug 2019 12:42:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41193) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1hzkjL-0004GC-Iy for guix-patches@gnu.org; Mon, 19 Aug 2019 12:42:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hzkjK-0001x5-AX for guix-patches@gnu.org; Mon, 19 Aug 2019 12:42:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:51644) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hzkjK-0001wy-66 for guix-patches@gnu.org; Mon, 19 Aug 2019 12:42:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hzkjK-0003fx-2e for guix-patches@gnu.org; Mon, 19 Aug 2019 12:42:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37083] [PATCH 0/1] (Help needed!) machine: Implement 'digital-ocean-environment-type'. Resent-From: zerodaysfordays@sdf.lonestar.org (Jakob L. Kreuze) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 19 Aug 2019 16:42:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 37083 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37083@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.156623290714095 (code B ref -1); Mon, 19 Aug 2019 16:42:01 +0000 Received: (at submit) by debbugs.gnu.org; 19 Aug 2019 16:41:47 +0000 Received: from localhost ([127.0.0.1]:60465 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hzkj4-0003fF-T7 for submit@debbugs.gnu.org; Mon, 19 Aug 2019 12:41:47 -0400 Received: from lists.gnu.org ([209.51.188.17]:45186) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hzkiz-0003ez-90 for submit@debbugs.gnu.org; Mon, 19 Aug 2019 12:41:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41149) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1hzkix-0004EH-S3 for guix-patches@gnu.org; Mon, 19 Aug 2019 12:41:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hzkiv-0001o9-89 for guix-patches@gnu.org; Mon, 19 Aug 2019 12:41:38 -0400 Received: from mx.sdf.org ([205.166.94.20]:65068) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hzkiu-0001ni-RS for guix-patches@gnu.org; Mon, 19 Aug 2019 12:41:37 -0400 Received: from Upsilon (pool-173-76-53-40.bstnma.fios.verizon.net [173.76.53.40]) (authenticated (0 bits)) by mx.sdf.org (8.15.2/8.14.5) with ESMTPSA id x7JGfTQM011147 (using TLSv1.2 with cipher AES256-GCM-SHA384 (256 bits) verified NO) for ; Mon, 19 Aug 2019 16:41:35 GMT From: zerodaysfordays@sdf.lonestar.org (Jakob L. Kreuze) Date: Mon, 19 Aug 2019 12:41:24 -0400 Message-ID: <87ftlxf6q3.fsf@sdf.lonestar.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hi all, I've spent the past couple of days attempting to add rudimentary support to 'guix deploy' for some more complicated use-cases. I think I've made some decent progress, but I've reached a point where I'm having an issue that's beyond my abilities. 'deploy-digital-ocean' gets to a point where there's a droplet running a "bootstrap" configuration of the Guix System, but I can't keep an open SSH channel for sending over the operating-system configuration specified for the deployment. sending 3 store items (0 MiB) to '167.71.253.223'... ;;; [2019/08/19 12:21:33.409456, 0] write_to_channel_port: [GSSH ERROR] Remote channel is closed: # Backtrace: In ice-9/eval.scm: 619:8 19 (_ #(#(#))) In guix/ui.scm: 1692:12 18 (run-guix-command _ . _) In guix/store.scm: 623:10 17 (call-with-store _) In srfi/srfi-1.scm: 640:9 16 (for-each # …) In guix/scripts/deploy.scm: 96:20 15 (_ _) In ice-9/boot-9.scm: 829:9 14 (catch _ _ # …) In guix/store.scm: 1803:24 13 (run-with-store # _ # _ …) In unknown file: 12 (_ # #<…> …) 11 (_ # #<…> …) 10 (_ # #<…> …) In guix/monads.scm: 482:9 9 (_ _) In unknown file: 8 (_ # #<…> …) In guix/remote.scm: 134:10 7 (_ _) In guix/store.scm: 1696:38 6 (_ #) In guix/ssh.scm: 358:4 5 (send-files # _ _ # _ # …) In guix/store.scm: 1568:12 4 (export-paths # _ # …) 1548:22 3 (export-path # _ # …) 697:13 2 (process-stderr _ _) 660:10 1 (dump-port # # …) In unknown file: 0 (put-bytevector # # …) ERROR: In procedure put-bytevector: Throw to key `guile-ssh-error' with args `("write_to_channel_port" "Remote channel is closed" # #f)'. I can connect to the droplet over SSH, but trying to manually deploy to the droplet with 'managed-host-environment-type' fails with the same error. I am still able to deploy to my various Guix QEMU guests using 'managed-host-environment-type' without fail -- this seems to be specific to Digital Ocean droplets running this configuration. (use-modules (gnu)) (use-service-modules networking ssh) (operating-system (host-name "gnu-bootstrap") (timezone "Etc/UTC") (bootloader (bootloader-configuration (bootloader grub-bootloader) (target "/dev/vda") (terminal-outputs '(console)))) (file-systems (cons (file-system (mount-point "/") (device "/dev/vda1") (type "ext4")) %base-file-systems)) (services (append (list (static-networking-service "eth0" "~a" #:netmask "~a" #:gateway "~a" #:name-servers '("84.200.69.80" "84.200.70.40")) (service openssh-service-type (openssh-configuration (permit-root-login 'without-password)))) %base-services))) I suspect there may an issue with the configuration of the bootstrap system's SSH daemon, but the logs are devoid of anything particularly telling. If anyone is willing to offer up their knowledge of SSH to suggest what could be going wrong, I would appreciate it greatly. Thank you, Jakob Jakob L. Kreuze (1): machine: Implement 'digital-ocean-environment-type'. doc/guix.texi | 21 +- gnu/local.mk | 1 + gnu/machine/digital-ocean.scm | 409 ++++++++++++++++++++++++++++++++++ 3 files changed, 428 insertions(+), 3 deletions(-) create mode 100644 gnu/machine/digital-ocean.scm