Differences between revisions 3 and 4
Revision 3 as of 2011-03-03 14:51:39
Size: 1697
Editor: charlus
Comment:
Revision 4 as of 2011-08-16 08:36:20
Size: 1926
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

/!\ ''Please note: The administration pages have all been migrated to the new PSF Systems Wiki. Please no longer add information to these pages. If you need access to the new wiki, please contact psf@python.org for details.''

Mercurial setup

/!\ Please note: The administration pages have all been migrated to the new PSF Systems Wiki. Please no longer add information to these pages. If you need access to the new wiki, please contact psf@python.org for details.

Mercurial services (hg.python.org) are currently hosted on dinsdale.python.org. Everything is under user hg's home directory in /data/hg.

Mercurial itself uses a recent stable build, with a couple of custom patches. The Mercurial tree is in ~hg/mercurial. The patches are in named branch local, which is branched off branch stable. This source tree is installed in ~hg/lib/python, using make install-home.

Scripts are in ~hg/bin, which is versioned using Mercurial:

  • genauth regenerates the .ssh/authorized_keys file using the current committers' public keys

  • hg-ssh is used as a shell for remote logins of user hg, in order to restrict them to a few safe commands

  • gcrepos detects "stale" repositories in a directory ("stale" meaning having received no new changesets since their creation), so as to enable garbage-collecting of unused server-side clones; this still needs wrapping in a cronjob

  • hg itself is the Mercurial executable installed by make install-home

Public repos are in ~hg/repos. They are served using two mechanisms:

  • for the ssh://... URLs (which allowing pushing), by the hg-ssh script mentioned above

  • for the http://hg.python.org/... URLs, using WSGI script ~hg/wsgi/python.wsgi run by a mod_wsgi instance in daemon mode under user hg. This script itself uses configuration file ~hg/repos.conf.

Noteworthy amongsth these repos are:

  • hooks contains a variety of hooks used for other repos (such as whitespace checking)

  • pymigr contains scripts and data for the SVN to Mercurial conversion

  • test is a test repo for committers


CategoryPythonWebsite

Admin/Mercurial (last edited 2013-11-20 10:53:23 by MarcAndreLemburg)

Unable to edit the page? See the FrontPage for instructions.