Hello, I did some work to improve SSH integration in git-review tool, mainly to address those issues:
- Allow plink.exe to be used as the SSH client - Respect GIT_SSH (https://bugs.launchpad.net/git-review/+bug/1024054) - Scp path separator should not be OS-dependent (https://bugs.launchpad.net/git-review/+bug/1024073) It brings us also close to fixing those bugs: - Doesn't parse ssh-aliased urls (https://bugs.launchpad.net/git-review/+bug/912125) - git review assumes the wrong port (https://bugs.launchpad.net/git-review/+bug/1075751) In order to achieve this, I decided to get rid of "scp/scp.exe/pscp.exe" dependency completely and allow git-review to adjust options for ssh/ssh.exe/plink.exe accordingly. I have written a trivial SSH wrapper with a simple rcp protocol support written to allow fetching "hooks/commit-msg" using ssh/ssh.exe/plink.exe directly without invoking any for of "scp". The code is available to play with on: git clone git://github.com/saper/simple-scp-client.git Use scp.py -p 29418 [email protected] to fetch the hooks file from the Gerrit instance. There is also a simple test suite, but you need to adjust global variables listed on the top of the file before running it. I have tested this on Python 2.5 on ancient Solaris with ancient OpenSSH Python 2.5/2.7 on Gentoo Linux box with OpenSSH Python 2.7 on FreeBSD with OpenSSH Python 2.7.2 on Windows Vista using Git for Windows ssh.exe Python 2.7.2 on Windows Vista using plink.exe, without bash Python 3.2 is in the works, unfortunately the subprocess module there insists on using buffers instead of strings so a slightly different implementation is needed incompatible with 2.x. If you think this is a good idea, I can work on putting this code into git-review. Basically all SSH invocations will be done via this code and "set_hooks_commit_msg" will be greatly simplified. Feedback welcome:) There are few mostly cosmeting changes awaiting review in Gerrit: https://review.openstack.org/#/q/status:open+project:openstack-infra/git-review,n,z which I think (except https://review.openstack.org/#/c/18392/ and maybe https://review.openstack.org/#/c/17552/) could go into the new release, before completely reworking SSH layer. Big thanks to fungi for reviewing those patches continuously! Marcin Cieślak _______________________________________________ OpenStack-Infra mailing list [email protected] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
