Add a test for ControlMaster

This commit is contained in:
Alexander Bantyev 2023-05-17 11:34:45 +04:00
parent 61cdb0b057
commit 992e2ed0cf
No known key found for this signature in database
GPG key ID: 48ABA304F3A30FE9

View file

@ -23,6 +23,12 @@ in {
nix.settings.substituters = lib.mkForce [ ]; nix.settings.substituters = lib.mkForce [ ];
nix.settings.experimental-features = [ "nix-command" ]; nix.settings.experimental-features = [ "nix-command" ];
services.getty.autologinUser = "root"; services.getty.autologinUser = "root";
programs.ssh.extraConfig = ''
Host *
ControlMaster auto
ControlPath ~/.ssh/master-%h:%r@%n:%p
ControlPersist 15m
'';
}; };
server = server =
@ -62,6 +68,10 @@ in {
client.wait_for_text("done") client.wait_for_text("done")
server.succeed("nix-store --check-validity ${pkgA}") server.succeed("nix-store --check-validity ${pkgA}")
# Check that ControlMaster is working
client.send_chars("nix copy --to ssh://server ${pkgA} >&2; echo done\n")
client.wait_for_text("done")
client.copy_from_host("key", "/root/.ssh/id_ed25519") client.copy_from_host("key", "/root/.ssh/id_ed25519")
client.succeed("chmod 600 /root/.ssh/id_ed25519") client.succeed("chmod 600 /root/.ssh/id_ed25519")