Anyone have any thoughts on this? I could really use some assistance. Thank
you.

Jean-Philippe


On Fri, Aug 1, 2014 at 6:08 PM, Steinmetz, Jean-Philippe <
[email protected]> wrote:

> Hi,
>
> I'm pretty new to Fabric and am trying to write a simple fab utility that
> uploads a zip file to a remote machine and unzips it. Unfortunately I am
> getting inconsistent errors when I run.
>
> I have tried a couple of different options and get two different errors as
> a result. However, in either case if I comment out the put() operation then
> everything else works okay. In additional tests it seems I can call run()
> as many times as I want, so long as there isn't a put() in the chain.
>
> Test 1:
>
> *def uploadScripts():*
> *    put('scripts.zip')*
> *    run("unzip -o scripts.zip -d scripts", shell=True)*
>
> Results in the following out:
>
> *[localhost] Executing task 'uploadScripts'*
> *Packing up scripts...*
> *Uploading scripts to remote host...*
> *[localhost] Login password for 'jpsteinmetz':*
> *[localhost] put:
> c:\users\jpstei~1\appdata\local\temp\tmpglolrt\scripts.zip ->
> /home/jpsteinmetz/scripts.zip*
> *Unpacking scripts on remote host...*
> *[localhost] run: unzip -o scripts.zip -d scripts*
>
> *Fatal error: run() received nonzero return code 255 while executing!*
>
> *Requested: unzip -o scripts.zip -d scripts*
> *Executed: /bin/bash -l -c "unzip -o scripts.zip -d scripts"*
>
> *Aborting.*
> *Disconnecting from localhost... done.*
>
> If I add an additional line before the put() operation to remove an
> existing scripts.zip on the remote host...
>
> *def uploadScripts():*
> *    run("rm -f scripts.zip", shell=True)*
> *    put('scripts.zip')*
> *    run("unzip -o scripts.zip -d scripts", shell=True)*
>
> Then I get the following error (I've turned on debug logging for
> additional information).
>
> *[localhost] Executing task 'uploadScripts'*
> *Removing old scripts...*
> *[localhost] run: rm -f scripts.zip*
> *DEBUG:paramiko.transport:starting thread (client mode): 0x3556e48L*
> *INFO:paramiko.transport:Connected (version 2.0, client OpenSSH_6.6.1)*
> *DEBUG:paramiko.transport:kex algos:[u'[email protected]
> <u%[email protected]>', u'ecdh-sha2-nistp256',
> u'ecdh-sha2-nistp384', u'ecdh-sha2-nistp521',
> u'diffie-hellman-group-exchange-sha256',
> u'diffie-hellman-group-exchange-sha1', u'diffie-hellman-group14-sha1',
> u'diffie-hellman-group1-sha1'] server key:[u'ssh-rsa', u'ssh-dss',
> u'ecdsa-sha2-nistp256', u'ssh-ed25519'] client encrypt:[u'aes128-ctr',
> u'aes192-ctr', u'aes256-ctr', u'arcfour256', u'arcfour128',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'aes128-cbc', u'3des-cbc', u'blowfish-cbc', u'cast128-cbc', u'aes192-cbc',
> u'aes256-cbc', u'arcfour', u'[email protected]
> <u%[email protected]>'] server encrypt:[u'aes128-ctr',
> u'aes192-ctr', u'aes256-ctr', u'arcfour256', u'arcfour128',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'aes128-cbc', u'3des-cbc', u'blowfish-cbc', u'cast128-cbc', u'aes192-cbc',
> u'aes256-cbc', u'arcfour', u'[email protected]
> <u%[email protected]>'] client mac:[u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-md5', u'hmac-sha1',
> u'[email protected] <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-sha2-256', u'hmac-sha2-512',
> u'hmac-ripemd160', u'[email protected]
> <u%[email protected]>', u'hmac-sha1-96', u'hmac-md5-96'] server
> mac:[u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'hmac-md5', u'hmac-sha1', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-sha2-256', u'hmac-sha2-512',
> u'hmac-ripemd160', u'[email protected]
> <u%[email protected]>', u'hmac-sha1-96', u'hmac-md5-96'] client
> compress:[u'none', u'[email protected] <u%[email protected]>'] server
> compress:[u'none', u'[email protected] <u%[email protected]>'] client
> lang:[u''] server lang:[u''] kex follows?False*
> *DEBUG:paramiko.transport:Ciphers agreed: local=aes128-ctr,
> remote=aes128-ctr*
> *DEBUG:paramiko.transport:using kex diffie-hellman-group1-sha1; server key
> type ssh-rsa; cipher: local aes128-ctr, remote aes128-ctr; mac: local
> hmac-s*
> *ha1, remote hmac-sha1; compression: local none, remote none*
> *DEBUG:paramiko.transport:Switch to new keys ...*
> *DEBUG:paramiko.transport:Adding ssh-rsa host key for localhost:
> 493071a6f3998a5536c903aeb86ab7b8*
> *[localhost] Login password for 'jpsteinmetz':*
> *DEBUG:paramiko.transport:starting thread (client mode): 0x35f8a90L*
> *INFO:paramiko.transport:Connected (version 2.0, client OpenSSH_6.6.1)*
> *DEBUG:paramiko.transport:kex algos:[u'[email protected]
> <u%[email protected]>', u'ecdh-sha2-nistp256',
> u'ecdh-sha2-nistp384', u'ecdh-sha2-nistp521',
> u'diffie-hellman-group-exchange-sha256',
> u'diffie-hellman-group-exchange-sha1', u'diffie-hellman-group14-sha1',
> u'diffie-hellman-group1-sha1'] server key:[u'ssh-rsa', u'ssh-dss',
> u'ecdsa-sha2-nistp256', u'ssh-ed25519'] client encrypt:[u'aes128-ctr',
> u'aes192-ctr', u'aes256-ctr', u'arcfour256', u'arcfour128',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'aes128-cbc', u'3des-cbc', u'blowfish-cbc', u'cast128-cbc', u'aes192-cbc',
> u'aes256-cbc', u'arcfour', u'[email protected]
> <u%[email protected]>'] server encrypt:[u'aes128-ctr',
> u'aes192-ctr', u'aes256-ctr', u'arcfour256', u'arcfour128',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'aes128-cbc', u'3des-cbc', u'blowfish-cbc', u'cast128-cbc', u'aes192-cbc',
> u'aes256-cbc', u'arcfour', u'[email protected]
> <u%[email protected]>'] client mac:[u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-md5', u'hmac-sha1',
> u'[email protected] <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-sha2-256', u'hmac-sha2-512',
> u'hmac-ripemd160', u'[email protected]
> <u%[email protected]>', u'hmac-sha1-96', u'hmac-md5-96'] server
> mac:[u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'[email protected] <u%[email protected]>',
> u'hmac-md5', u'hmac-sha1', u'[email protected]
> <u%[email protected]>', u'[email protected]
> <u%[email protected]>', u'hmac-sha2-256', u'hmac-sha2-512',
> u'hmac-ripemd160', u'[email protected]
> <u%[email protected]>', u'hmac-sha1-96', u'hmac-md5-96'] client
> compress:[u'none', u'[email protected] <u%[email protected]>'] server
> compress:[u'none', u'[email protected] <u%[email protected]>'] client
> lang:[u''] server lang:[u''] kex follows?False*
> *DEBUG:paramiko.transport:Ciphers agreed: local=aes128-ctr,
> remote=aes128-ctr*
> *DEBUG:paramiko.transport:using kex diffie-hellman-group1-sha1; server key
> type ssh-rsa; cipher: local aes128-ctr, remote aes128-ctr; mac: local
> hmac-sha1, remote hmac-sha1; compression: local none, remote none*
> *DEBUG:paramiko.transport:Switch to new keys ...*
> *DEBUG:paramiko.transport:userauth is OK*
> *INFO:paramiko.transport:Authentication (password) successful!*
> *DEBUG:paramiko.transport:[chan 1] Max packet in: 34816 bytes*
> *DEBUG:paramiko.transport:[chan 1] Max packet out: 32768 bytes*
> *INFO:paramiko.transport:Secsh channel 1 opened.*
> *DEBUG:paramiko.transport:[chan 1] Sesch channel 1 request ok*
> *DEBUG:paramiko.transport:[chan 1] Sesch channel 1 request ok*
> *DEBUG:paramiko.transport:[chan 1] EOF received (1)*
> *DEBUG:paramiko.transport:[chan 1] EOF sent (1)*
> *Packing up scripts...*
> *Uploading scripts to remote host...*
> *DEBUG:paramiko.transport:[chan 2] Max packet in: 34816 bytes*
> *DEBUG:paramiko.transport:[chan 2] Max packet out: 32768 bytes*
> *INFO:paramiko.transport:Secsh channel 2 opened.*
> *DEBUG:paramiko.transport:[chan 2] Sesch channel 2 request ok*
> *Traceback (most recent call last):*
> *DEBUG:paramiko.transport:[chan 2] EOF received (2)*
> *  File "C:\Python27\lib\site-packages\fabric\main.py", line 743, in main*
> *    *args, **kwargs*
> *  File "C:\Python27\lib\site-packages\fabric\tasks.py", line 372, in
> execute*
> *    multiprocessing*
> *  File "C:\Python27\lib\site-packages\fabric\tasks.py", line 267, in
> _execute*
> *    return task.run(*args, **kwargs)*
> *  File "C:\Python27\lib\site-packages\fabric\tasks.py", line 174, in run*
> *    return self.wrapped(*args, **kwargs)*
> *  File "D:\tools\python\fabfile.py", line 40, in uploadScripts*
> *    if (put(os.path.join(tempDir, 'scripts.zip')).succeeded == False):*
> *  File "C:\Python27\lib\site-packages\fabric\network.py", line 639, in
> host_prompting_wrapper*
> *DEBUG:paramiko.transport:[chan 2] EOF sent (2)*
> *    return func(*args, **kwargs)*
> *  File "C:\Python27\lib\site-packages\fabric\operations.py", line 346, in
> put*
> *    ftp = SFTP(env.host_string)*
> *  File "C:\Python27\lib\site-packages\fabric\sftp.py", line 30, in
> __init__*
> *    self.ftp = connections[host_string].open_sftp()*
> *  File "C:\Python27\lib\site-packages\paramiko\client.py", line 345, in
> open_sftp*
> *    return self._transport.open_sftp_client()*
> *  File "C:\Python27\lib\site-packages\paramiko\transport.py", line 717,
> in open_sftp_client*
> *    return SFTPClient.from_transport(self)*
> *  File "C:\Python27\lib\site-packages\paramiko\sftp_client.py", line 114,
> in from_transport*
> *    return cls(chan)*
> *  File "C:\Python27\lib\site-packages\paramiko\sftp_client.py", line 98,
> in __init__*
> *    raise SSHException('EOF during negotiation')*
> *paramiko.ssh_exception.SSHException: EOF during negotiation*
> *Disconnecting from localhost... DEBUG:paramiko.transport:EOF in transport
> thread*
> *done.*
> *DEBUG:paramiko.transport:EOF in transport thread*
>
> I am running Windows 7 with Python 2.7.8 and the following packages:
>
> boto (2.31.1)
> ecdsa (0.11)
> Fabric (1.9.0)
> paramiko (1.14.0)
> pip (1.5.6)
> pycrypto (2.6)
> pywin32 (219)
> setuptools (3.8.1)
>
> The SSH server is OpenSSH 6.6.1p1-3 running through cygwin (64-bit). SSH
> itself seems to run just fine as I can putty into it without any problems
> and can also use psftp to upload the same zip file.
>
> Any insight into why this might be happening is greatly appreciated.
>
> Cheers,
>
> Jean-Philippe Steinmetz
>
_______________________________________________
Fab-user mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/fab-user

Reply via email to