Switch to using parallel-ssh instead of fabric redux
This has all of the commits from #400 plus some more to fix travis and fix some minor issues. I wanted to make changes before I merged it into master, and I wanted to be able to more easily test things on my machine.
It appears the ssh2-python is currently incompatible with PyPy, so I'm going to hold off on this until ParallelSSH/ssh2-python#16 gets addressed.
ssh2-python has fixed the issue on their end, but still waiting for a new parallel-ssh release with the fix there.
This needs more testing before merging. I've found a few cases where it seems like options aren't being resolved or sent to Storm properly.
@dan-blanchard I'd be happy to have a look. Any pointers to reproduce the cases would be helpful.
This is very close to being ready to merge. I am currently being foiled by ParallelSSH/ssh2-python#51 though.
I've tested this with submitting topologies and running them locally, and it all seems to work now.
Ugh, the ssh2-python devs removed the wheels from PyPI (breaking the cardinal rule of never removing packages from PyPI). The pypy build will continue to fail until they put the latest version back. 😭
Seems like there's still an issue with getting all of the options resolved properly with this branch. A topology.subprocess.timeout setting I had in config.json was not being applied when deploying with this branch. I'll figure that out next week I guess.