Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Test nixos-rebuild --build-host #281130

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

roberth
Copy link
Member

@roberth roberth commented Jan 15, 2024

Description of changes

I keep getting deployer # Host key verification failed.
Currently seems to be the target host though, which used to work. A bit puzzling, but probably nothing too crazy, considering that I did change some of the original test setup.
cc @Enzime who authored the original setup for SSH to target. Was UserKnownHostsFile=/dev/null really necessary?

I'd really appreciate some help with this one.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 馃憤 reaction to pull requests you find important.

@@ -119,7 +145,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {

# This test also ensures that sudo is not called without --use-remote-sudo
with subtest("Deploy to root@target"):
deployer.succeed("nixos-rebuild switch -I nixos-config=/root/configuration-1.nix --target-host root@target &>/dev/console")
deployer.succeed("nixos-rebuild switch -I nixos-config=/root/configuration-1.nix --target-host root@target --build-host builder &>/dev/console")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be a good idea to separate this out into another test

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ideally, we would have 4 tests for all combinations of --target-host and --build-host being present and not present

@Enzime
Copy link
Member

Enzime commented Jan 16, 2024

@roberth looks like to me it's failing when copying the closure from builder to target which is because the target's host key needs to known on the builder's side

I think ideally we would run -t on all SSH commands as when given a TTY SSH will prompt for unknown host keys

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants