summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Hirschhorn <max.hirschhorn@mongodb.com>2019-01-03 18:22:46 -0500
committerMax Hirschhorn <max.hirschhorn@mongodb.com>2019-01-03 18:22:46 -0500
commit63af6676e353eafa00b6178737085606836e6139 (patch)
tree48283cdf0fb24535fcb2493ec0318bc2691b79bf
parente83d3967bab59f0a99b61c3d96685c2b47598423 (diff)
downloadmongo-63af6676e353eafa00b6178737085606836e6139.tar.gz
SERVER-37490 Increase ssh ConnectTimeout from 10 to 30 seconds.
-rw-r--r--etc/evergreen.yml2
-rwxr-xr-xpytests/powertest.py11
2 files changed, 8 insertions, 5 deletions
diff --git a/etc/evergreen.yml b/etc/evergreen.yml
index ffdbea3e2c9..d1ff95b0456 100644
--- a/etc/evergreen.yml
+++ b/etc/evergreen.yml
@@ -3078,7 +3078,7 @@ functions:
# For ssh disable the options GSSAPIAuthentication, CheckHostIP, StrictHostKeyChecking
# & UserKnownHostsFile, since these are local connections from one AWS instance to another.
- key: ssh_connection_options
- value: -o GSSAPIAuthentication=no -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o ConnectionAttempts=20
+ value: -o GSSAPIAuthentication=no -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=30 -o ConnectionAttempts=20
- key: ssh_retries
value: "10"
- key: set_sudo
diff --git a/pytests/powertest.py b/pytests/powertest.py
index aad08ea0e5e..c7006233128 100755
--- a/pytests/powertest.py
+++ b/pytests/powertest.py
@@ -1749,7 +1749,7 @@ Examples:
default_ssh_connection_options = ("-o ServerAliveCountMax=10"
" -o ServerAliveInterval=6"
" -o StrictHostKeyChecking=no"
- " -o ConnectTimeout=10"
+ " -o ConnectTimeout=30"
" -o ConnectionAttempts=20")
test_options.add_option("--sshConnection", dest="ssh_connection_options",
help="Server ssh additional connection options, i.e., '-i ident.pem'"
@@ -2234,9 +2234,12 @@ Examples:
ssh_user, ssh_host = get_user_host(ssh_user_host)
mongod_host = ssh_host
- ssh_connection_options = "{} {}".format(default_ssh_connection_options,
- options.ssh_connection_options
- if options.ssh_connection_options else "")
+ # As described in http://man7.org/linux/man-pages/man5/ssh_config.5.html, ssh uses the value of
+ # the first occurrence for each parameter, so we have the default connection options follow the
+ # user-specified --sshConnection options.
+ ssh_connection_options = "{} {}".format(options.ssh_connection_options
+ if options.ssh_connection_options else "",
+ default_ssh_connection_options)
# For remote operations requiring sudo, force pseudo-tty allocation,
# see https://stackoverflow.com/questions/10310299/proper-way-to-sudo-over-ssh.
# Note - the ssh option RequestTTY was added in OpenSSH 5.9, so we use '-tt'.