Package: fabric Version: 1.8.2-1 Severity: minor --- Please enter the report below this line. --- Not sure this is not a python-paramiko bug
I have a very simple fabfile: ===== fabfile.py ===== from fabric.api import run, env env.use_ssh_config = True def host_type(): run('hostname -f') run('lsb_release -a') ================ If I run this with a ~.ssh/config like: ===== ~/.ssh/config ===== Host * User = root Compression = yes ControlMaster = auto ControlPath = ~/.ssh/sock/ssh_%r@%h:%p ControlPersist = 2h ForwardAgent = yes HashKnownHosts = no ServerAliveInterval = 250 IdentityFile ~/.ssh/id_rsa =================== I got errors like this: ========== fab -H test_host host_type 1 ↵ [test_host] Executing task 'host_type' [test_host] run: hostname -f Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/fabric/main.py", line 743, in main *args, **kwargs File "/usr/lib/python2.7/dist-packages/fabric/tasks.py", line 368, in execute multiprocessing File "/usr/lib/python2.7/dist-packages/fabric/tasks.py", line 264, in _execute return task.run(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/fabric/tasks.py", line 171, in run return self.wrapped(*args, **kwargs) File "/home/lminoza/src/fab/fabfile.py", line 7, in host_type run('hostname -f') File "/usr/lib/python2.7/dist-packages/fabric/network.py", line 639, in host_prompting_wrapper return func(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/fabric/operations.py", line 1042, in run shell_escape=shell_escape) File "/usr/lib/python2.7/dist-packages/fabric/operations.py", line 909, in _run_command channel=default_channel(), command=wrapped_command, pty=pty, File "/usr/lib/python2.7/dist-packages/fabric/state.py", line 388, in default_channel chan = _open_session() File "/usr/lib/python2.7/dist-packages/fabric/state.py", line 380, in _open_session return connections[env.host_string].get_transport().open_session() File "/usr/lib/python2.7/dist-packages/fabric/network.py", line 151, in __getitem__ self.connect(key) File "/usr/lib/python2.7/dist-packages/fabric/network.py", line 143, in connect self[key] = connect(user, host, port, cache=self) File "/usr/lib/python2.7/dist-packages/fabric/network.py", line 444, in connect sock=sock File "/usr/lib/python2.7/dist-packages/paramiko/client.py", line 273, in connect self._auth(username, password, pkey, key_filenames, allow_agent, look_for_keys) File "/usr/lib/python2.7/dist-packages/paramiko/client.py", line 387, in _auth key = pkey_class.from_private_key_file(key_filename, password) File "/usr/lib/python2.7/dist-packages/paramiko/pkey.py", line 182, in from_private_key_file key = cls(filename=filename, password=password) File "/usr/lib/python2.7/dist-packages/paramiko/rsakey.py", line 55, in __init__ self._from_private_key_file(filename, password) File "/usr/lib/python2.7/dist-packages/paramiko/rsakey.py", line 165, in _from_private_key_file data = self._read_private_key_file('RSA', filename, password) File "/usr/lib/python2.7/dist-packages/paramiko/pkey.py", line 254, in _read_private_key_file with open(filename, 'r') as f: IOError: [Errno 2] No such file or directory: ' /home/lminoza/.ssh/id_rsa' ========== It takes me hours to view the space at the beginning of the past on the last line. Rewriting my ~/.ssh/config file with single space instead of ' = ' between keys and values makes me able to log on my servers and use fabric. --- System information. --- Architecture: amd64 Kernel: Linux 3.14-1-amd64 Debian Release: jessie/sid 500 unstable http.debian.net 500 testing-updates http.debian.net 500 testing security.debian.org 500 testing http.debian.net 500 stable-updates http.debian.net 500 stable security.debian.org 500 stable http.debian.net 101 experimental http.debian.net 100 wheezy-backports http.debian.net --- Package information. --- Depends (Version) | Installed ===================================-+-=========== python (>= 2.7) | 2.7.6-2 python (<< 2.8) | 2.7.6-2 python-paramiko (>= 1.6) | 1.14.0-2 python-pkg-resources | 4.0.1-1 python-nose | 1.3.3-1 Package's Recommends field is empty. Suggests (Version) | Installed ===========================-+-=========== libjs-jquery | 1.7.2+dfsg-3 -- Landry MINOZA MGI Sud-Ouest Pour le compte du département informatique de l’établissement public de musée d’Orsay et de l’Orangerie Chef de projet technique Linux et réseaux E-mail : landry.min...@musee-orsay.fr<mailto:landry.min...@musee-orsay.fr> Tél :01 40 49 47 15 Musée d’Orsay et de l’Orangerie :62 rue de Lille - 75343 Paris Cedex 07 | www.musee-orsay.fr<http://www.musee-orsay.fr> MGI France :5 rue Sextius Michel - 75015 Paris | RCS: Paris B 382 770 584 | www.mgi.fr<http://www.mgi.fr> MGI SO :281 route d'Espagne - 31100 Toulouse | RCS: Toulouse B 421 125 816 | www.mgi.fr<http://www.mgi.fr> MGI Suisse :5 avenue de Rothorn - CH3960 Sierre | TVA 517-269 | www.mgiconsultants.ch<http://www.mgiconsultants.ch>