handle name resolution errors more gracefully from shell.py

This change will catch socket.gaierror exceptions from shell.py and
return a more friendly message to the user
pull/15727/head
Peter Sprygada 9 years ago
parent fbec9ce58b
commit 91f67ac37a

@ -101,12 +101,15 @@ class Shell(object):
if not look_for_keys: if not look_for_keys:
look_for_keys = password is None look_for_keys = password is None
try:
self.ssh.connect(host, port=port, username=username, password=password, self.ssh.connect(host, port=port, username=username, password=password,
timeout=timeout, look_for_keys=look_for_keys, pkey=pkey, timeout=timeout, look_for_keys=look_for_keys, pkey=pkey,
key_filename=key_filename, allow_agent=allow_agent) key_filename=key_filename, allow_agent=allow_agent)
self.shell = self.ssh.invoke_shell() self.shell = self.ssh.invoke_shell()
self.shell.settimeout(timeout) self.shell.settimeout(timeout)
except socket.gaierror:
raise ShellError("unable to resolve host name")
if self.kickstart: if self.kickstart:
self.shell.sendall("\n") self.shell.sendall("\n")

Loading…
Cancel
Save