[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: “Towards Guix for DevOps”

From: Jan Nieuwenhuizen
Subject: Re: “Towards Guix for DevOps”
Date: Sat, 27 Jul 2019 12:47:30 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Ludovic Courtès writes:

> Jakob wrote a lovely post about the ongoing work implementing ‘guix
> deploy’ as part of GSoC:
> Check it out!

Yes, this is excellent.  I started playing with it using a
script (see attached).  It took me a few iterations to get all bits
right; I mistook the host's signing-key's error message for an ssh
authentication problem, e.g.

This works great so I am already using it now; together with channels it
simplifies my deployments a lot.

I found that I cannot deploy to older machines, running 0.16 or earlier.
Not really a problem but it should at least be documented, I think.

Here's what deploying to a 0.16 machine gives me

--8<---------------cut here---------------start------------->8---
+ guix deploy deploy-vm.scm
substitute: updating substitutes from ''... 
substitute: updating substitutes from ''... 
substitute: updating substitutes from ''... 
sending 142 store items (745 MiB) to 'localhost'...
sending 3 store items (0 MiB) to 'localhost'...
           7 (primitive-load 
In guix/ui.scm:
  1659:12  6 (run-guix-command _ . _)
In guix/store.scm:
   623:10  5 (call-with-store _)
In srfi/srfi-1.scm:
    640:9  4 (for-each #<procedure 19c9020 at guix/scripts/deploy.scm:81:16 
(machine)> (#<<machine> system: #…>))
In guix/store.scm:
  1803:24  3 (run-with-store #<store-connection 256.99 10e3a80> _ 
#:guile-for-build _ #:system _ #:target _)
In gnu/machine/ssh.scm:
    339:2  2 (_ _)
In guix/remote.scm:
   122:20  1 (_ _)
    66:17  0 (%remote-eval _ _)

guix/remote.scm:66:17: In procedure %remote-eval:
Throw to key `srfi-34' with args `(#<inferior-object #<condition 
&action-exception-error [service: user-homes action: start key: match-error 
args: ("match" "no matching pattern" "#<<user-account> name: \"root\" password: 
\"\" uid: 0 group: \"root\" supplementary-groups: () comment: \"System 
administrator\" home-directory: #<procedure home-directory (x)> 
create-home-directory?: #t shell: 
\"/gnu/store/qn1ax1fkj16x280m1rv7mcimfmn9l2pf-bash-4.4.23/bin/bash\" system?: 
#f>")] 716f00>>)'.
+ ssh -i id_rsa -p 10022 root@localhost guix system list-generations
--8<---------------cut here---------------end--------------->8---

After manually reconfiguring the machine to 1.0 it works, but that
already starts to feel clumsy :)

Anyway, very impressive and a big thank you Jakob!


I've also put this up on https://gitlab/janneke/deploy

Description: Bourne shell script

Attachment: bare-bones.scm
Description: Binary data

Attachment: deploy-vm.scm
Description: Binary data

Attachment: channels.scm
Description: Binary data

Jan Nieuwenhuizen <address@hidden> | GNU LilyPond
Freelance IT | Avatar®

reply via email to

[Prev in Thread] Current Thread [Next in Thread]