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>

Reply via email to