mirror of
https://cgit.krebsco.de/krops
synced 2024-11-23 03:29:48 +01:00
target: use default port from SSH config
This is the expected behavior. The SSH config is also implicitly used for other SSH-related settings.
This commit is contained in:
parent
05f0d3b5c1
commit
9fc8cbf8e8
3 changed files with 8 additions and 6 deletions
|
@ -57,9 +57,9 @@ let {
|
|||
elemAt' = xs: i: if lib.length xs > i then lib.elemAt xs i else null;
|
||||
filterNull = lib.filterAttrs (n: v: v != null);
|
||||
in {
|
||||
user = lib.getEnv "LOGNAME";
|
||||
user = lib.maybeEnv "LOGNAME" null;
|
||||
host = lib.maybeEnv "HOSTNAME" (lib.maybeHostName "localhost");
|
||||
port = "22";
|
||||
port = null;
|
||||
path = "/var/src";
|
||||
sudo = false;
|
||||
extraOptions = [];
|
||||
|
@ -70,6 +70,10 @@ let {
|
|||
path = elemAt' parse 6;
|
||||
} else s);
|
||||
|
||||
mkUserPortSSHOpts = target:
|
||||
(lib.optionals (target.user != null) ["-l" target.user]) ++
|
||||
(lib.optionals (target.port != null) ["-p" target.port]);
|
||||
|
||||
shell = let
|
||||
isSafeChar = lib.testString "[-+./0-9:=A-Z_a-z]";
|
||||
quoteChar = c:
|
||||
|
|
|
@ -20,8 +20,7 @@ in
|
|||
else
|
||||
writers.writeDash "krops.${target.host}.${lib.firstWord command}" ''
|
||||
exec ${openssh}/bin/ssh ${lib.escapeShellArgs (lib.flatten [
|
||||
(lib.optionals (target.user != "") ["-l" target.user])
|
||||
"-p" target.port
|
||||
(lib.mkUserPortSSHOpts target)
|
||||
(if allocateTTY then "-t" else "-T")
|
||||
target.extraOptions
|
||||
target.host
|
||||
|
|
|
@ -224,8 +224,7 @@ let
|
|||
|
||||
ssh' = target: concatMapStringsSep " " quote (flatten [
|
||||
"${openssh}/bin/ssh"
|
||||
(optionals (target.user != "") ["-l" target.user])
|
||||
"-p" target.port
|
||||
(mkUserPortSSHOpts target)
|
||||
"-T"
|
||||
target.extraOptions
|
||||
]);
|
||||
|
|
Loading…
Reference in a new issue