[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Better support remote deployment
From: |
Tomas Volf |
Subject: |
Re: Better support remote deployment |
Date: |
Tue, 21 Nov 2023 02:33:45 +0100 |
On 2023-11-16 16:23:00 +0100, Ludovic Courtès wrote:
> Hi,
>
> Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>
> > Felix Lechner <felix.lechner@lease-up.com> writes:
>
> [...]
>
> >> How about a 'remote-user-profile'?
> >
> > 'guix package' is already the command we use to create profiles; maybe
> > it could accept a '--remote' argument to operate on a remote machine?
> > Or is this not what 'GUIX_DAEMON_SOCKET=ssh://your-target guix package
> > -m manifest.scm' can already accomplish? :-)
>
> Doing that confuses ‘guix package’ because it’d try to perform the
> effectful part (switching symlinks) locally, even though everything was
> built on another machine. (It’s also slow due to RPC round trips, as
> Efraim wrote.)
>
> But yeah, I think we could do something along these lines by isolating
> the effectful bits and evaluating them remotely when needed, like we did
> to achieve code sharing between ‘guix deploy’ and ‘guix system
> reconfigure’.
>
> That said, I wonder if this would really be more convenient than SSH’ing
> into the target machine and running the commands right there. Perhaps
> I’m missing something about the use case?
I was following the debate, but maybe I have missed something, so I will put
forward my use case as well. I have two properties I would like to have from a
"remote deploy" mechanism, and they are not satisfied by SSH-ing to the machine
and running the commands there.
1. No need for `guix pull'. I run (a little) custom Guix, so running `guix
pull' is somewhat expensive. I do not want to do it just to deploy something
(be it a system, or home, or profile).
2. No need to copy over the definitions. My configurations are part of a git
repository, which I would like to keep local to just my development machine. So
rsync-ing it over to the remote machine in order to run command there is
something I would like to avoid.
If, however, I can build a profile locally, `guix copy' it over, and *then* SSH
into the machine and somehow activate the profile (be it home or regular
profile), that would work for me. Is that currently possible?
>
> Ludo’.
>
Thanks,
Tomas
--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.
signature.asc
Description: PGP signature
- Re: Better support remote deployment, (continued)
- Re: Better support remote deployment, Maxim Cournoyer, 2023/11/07
- Re: Better support remote deployment, Ricardo Wurmus, 2023/11/07
- Re: Better support remote deployment, Maxim Cournoyer, 2023/11/07
- Re: Better support remote deployment, Felix Lechner, 2023/11/07
- Re: Better support remote deployment, Maxim Cournoyer, 2023/11/08
- Re: Better support remote deployment, Efraim Flashner, 2023/11/09
- Re: Better support remote deployment, Maxim Cournoyer, 2023/11/09
- Re: Better support remote deployment, Ludovic Courtès, 2023/11/16
- Re: Better support remote deployment, Felix Lechner, 2023/11/16
- Re: Better support remote deployment,
Tomas Volf <=
- Re: Better support remote deployment, Maxim Cournoyer, 2023/11/22