-
-
Notifications
You must be signed in to change notification settings - Fork 309
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hydra-queue-runner: fix building on machines specified with the ssh-ng
protocol
#918
Conversation
…ng` protocol Most of my machines in `/etc/nix/machines` are specified as `ssh-ng://foobar` where `foobar` is defined in e.g. `~/.ssh/config`. The problem here is that while it's possible to use the remote Nix installation via SSH, `hydra-queue-runner` refuses to do so since `ssh(1)` can't resolve hostnames that begin with `ssh-ng://`. To work around this problem, this prefix will be drop if it exists on a machine declaration that was chosen for a build step.
It seems like we would be better served by using Nix's own store abstractions instead of running our own |
Well, I have an entry like this in my
With this patch on a Hydra,
Not sure if I agree here. First of all, this |
Fixes: #688 |
This PR just makes hydra-queue-runner treat Currently hydra-queue-runner uses the |
Hmm yeah, so I know the difference between But if you've got already a draft for using Nix's store abstraction in Hydra (and hence allow both protocols), that's way better, so 👍 for closing it then :) |
To be clear, the code that I wrote isn't usable because it doesn't support cancellation. |
The current code supports cancellation? I'm not sure that's ever worked for me. |
It does support cancellation, and it often does work :) |
I thought the exact log message was "maybe cancelling build" and it finishes the current step and aborts the rest? |
Where is that branch again? I've been thinking if some of legacy ssh store and remote store methods were split up to separate the parts hydra needs to do separately, it could work. That split would be of no use to Nix itself, but I think the separation could be worth it for hydra's sake alone. |
Looks like I never committed anything, but I recovered this from my stash: https://pastebin.com/suP2ZX2D |
Most of my machines in
/etc/nix/machines
are specified asssh-ng://foobar
wherefoobar
is defined in e.g.~/.ssh/config
. Theproblem here is that while it's possible to use the remote Nix
installation via SSH,
hydra-queue-runner
refuses to do so sincessh(1)
can't resolve hostnames that begin with
ssh-ng://
.To work around this problem, this prefix will be drop if it exists on a
machine declaration that was chosen for a build step.
cc @grahamc @edolstra