<div dir="ltr"><div><div>Hi,<br><br></div>The maintainer of Fabric ( <a href="http://fabfile.org">http://fabfile.org</a> ) did not want to take these Python3 patches<br></div>from Mathias Ertl:<br><div><div><div><div class="gmail_extra"><a href="https://github.com/fabric/fabric/issues/1378" target="_blank">https://github.com/fabric/fabric/issues/1378</a> because they broke compatibility<br></div><div class="gmail_extra">with Python 2.5.<br></div><div class="gmail_extra">Mathias created this fork: <a href="https://github.com/fabric/fabric/issues/1378" target="_blank">https://github.com/mathiasertl/fabric/</a></div><div class="gmail_extra">which works with Python 2.7 and Python 3.x.  He also has started doing releases<br></div><div class="gmail_extra">to Pypi.  The package can be intalled with:<br><br></div><div class="gmail_extra">pip install Fabric3<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">It's not ideal to have a fork, but the code does work, and I've been using it.<br></div><div class="gmail_extra">--<br></div><div class="gmail_extra">Craig<br><br></div><div class="gmail_extra"><div class="gmail_quote">On Sat, Oct 31, 2015 at 4:25 PM, Craig Rodrigues <span dir="ltr"><<a href="mailto:rodrigc@freebsd.org" target="_blank">rodrigc@freebsd.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div>Hi,<br><br></div>I was recently doing QA work at a startup, and extensively used<br></div>Fabric ( <a href="http://fabfile.org" target="_blank">http://fabfile.org</a> ) for execute commands remotely over SSH.<br><br></div><div>I used only a few functions from this library, such as<br></div><div>fabric.api.run() , <a href="http://fabric.api.cd" target="_blank">fabric.api.cd</a>(), fabric.api.put(), fabric.api.get().<br></div><div>This allowed me to run a remote command, change to a remote directory,<br></div><div>put a file, and get a file, all over SSH.<br><br></div><div>For my uses, this worked out quite well.  I really liked this library a lot.<br><br></div><div>The only downside is the library does not work with Python 3.<br></div><div>I've tried this patch to add Python 3 support: <a href="https://github.com/fabric/fabric/issues/1378" target="_blank">https://github.com/fabric/fabric/issues/1378</a><a href="https://github.com/fabric/fabric/issues/1378" target="_blank"></a></div><div>and it works.  However, the author of Fabric is not accepting this patch<br></div><div>because he does not want to drop support for Python 2.5.<br></div><div>The author is working on a rewrite called Pyinvoke ( <a href="http://www.pyinvoke.org/" target="_blank">http://www.pyinvoke.org/</a> )<br></div><div>which will support Python 3, but that is very early pre-alpha stuff.<br><br></div><div>Can anyone recommend an alternate library for doing SSH remote<br></div><div>execution, which works on Python 2 and Python 3, and is simple to use?<br><br></div><div>Since Fabric layers on top of the Paramiko ( <a href="http://paramiko.org" target="_blank">http://paramiko.org</a> ) SSH library,<br></div><div>is using that directly the best way to go?<br></div><div><br>--<br></div><div>Craig<br></div></div>
</blockquote></div><br></div></div></div></div></div>