ssh - Why does Fabric throw 'TypeError: argument must be an int, or have a fileno() method'? -
when running fabric task on remote server following stack trace:
[x.x.x.x] run: git fetch && git reset --hard origin/develop exception in thread thread-2: traceback (most recent call last): file "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner self.run() file "/var/lib/jenkins/jobs/deploy/workspace/.pyenv/lib/python2.6/site-packages/ssh/agent.py", line 115, in run self._communicate() file "/var/lib/jenkins/jobs/deploy/workspace/.pyenv/lib/python2.6/site-packages/ssh/agent.py", line 125, in _communicate events = select([self._agent._conn, self.__inr], [], [], 0.5) typeerror: argument must int, or have fileno() method.
the fact fabric task trying perform git fetch , exceptions raised in ssh/agent.py makes me think wrong ssh authentication.
the same user can run git fetch outside of fabric, , task runs fine on laptop.
what's going on here? how resolve issue?
an issue raised on fabric's issue tracker mentions error might arise not having ssh-agent running on host.
i solved problem starting ssh-agent , adding user's key:
$> eval `ssh-agent` $> ssh-add ~/.ssh/id_rsa
success!
Comments
Post a Comment