[SciPy-dev] The future of SciPy and its development infrastructure

Pauli Virtanen pav@iki...
Wed Feb 25 20:03:50 CST 2009

Tue, 24 Feb 2009 23:32:43 -0600, Peter Wang wrote:
[clip: SVN post-commit hook for the git mirror]
> How does the above interact with, and what are the ramifications for: 
> - user accounts and permissions

The CGI idea may have been too complicated.

The simplest way to go is probably just to run an update script directly
from SVN post-commit hook, sudoed and backgrounded. If it needs to be
on a different host, run it via SSH+public key. eg.

	ssh -i PRIVATEKEY USERNAME@HOST /home/USERNAME/bin/sync-scipy-git $REV $REPOS \
		< /dev/null > /dev/null 2>&1 &

If you want me to maintain this, I think the hook can just SSH to my account
on new.scipy.org. I'll then make sure that the script ~/bin/sync-scipy-git
works as intended -- everything runs then on my account, which makes things
simple. It's also easy to migrate this to run under another user, if necessary.

Btw, git and git-svn are not yet installed on new.scipy.org...

(Also, I got carried away and wrote also the CGI solution:
http://github.com/pv/git-svn-automirror/, so it's there if we want to use it...)

> - subdomains (git-to-svn for numpy and various scipy subdomains like
> mpi4py, etc.)

Subdomains are probably not important for this mirroring business, especially
if we take the SSH/sudo way.

If we end up liking Git a lot and switching away from SVN, it might be nice
to have git.scipy.org running gitweb, though. But this is probably for the

> - logging/monitoring (so we can detect if the CGI goes wrong/zombie/
> berserk)

The script can itself log what it does, and maybe one can also set some 
ulimits in it.

The most important thing probably is that the post-commit hook backgrounds
the Git mirror update, so that the update can't lock up the SVN repo even if
it goes haywire.

Pauli Virtanen

More information about the Scipy-dev mailing list