* David Powell <David.Powell at sun.com> [2008-12-16 22:00]:
> Mark J. Nelson wrote:
> > - project gate management: as relates to above, best practices, managing 
> > synchronization from either clone or snapshot
> 
>    Very important.  Setting up a project gate, notification lists, etc.
>    is a lot more complicated than it was.  The easy answer is "make an
>    opensolaris project", but that's not always appropriate.

  It's different than it was, but I'm not sure it's more complicated.
  In the interest of giving Mark source material, here's what I've done
  a few times now.

  1.  Create a project account on the machine hosting the project gate.
      Insert committers' public keys into project account's
      .ssh/authorized_keys file, or agree on a common password.  (This
      approach is easier than working out umask issues.)

  2.  Use the notify extension for sending push notifications.  Have a
      mode 0666 file in .hg/SUNWnotify to contain the list of addresses.
      I've been using

$ cat .hg/hgrc
[extensions]
hgext.notify =

[hooks]
# one email for each incoming changeset
incoming.notify = python:hgext.notify.hook
# batch emails when many changesets incoming at one time
changegroup.notify = python:hgext.notify.hook

[email]
from = Certificate Gate <pkg at rosseau.sfbay.sun.com>

[smtp]
host = localhost

[notify]
sources = serve push pull bundle
diffstat = False
test = False
config = /dpool/pkg/cert-gate/.hg/SUNWnotify
domain = eng.sun.com
maxdiff = -1

      and

$ cat .hg/SUNWnotify
[usersubs]
sch at sun.com = *
daniel.price at sun.com = *

      You could of course use NetAdmin to manage alias membership, and
      keep your SUNWnotify file 0600.

  3.  That's it, although you can fiddle with notify settings and
      templates to get all kinds of outcomes.  Some teams might like to
      run hg serve to make their project gate browsable.

  If you're trying to talk about advantages, I think it's worth
  mentioning how easy it is to export and import patches, which is
  something we've used on pkg(5).  Very convenient for passing around
  small fixes.

  - Stephen

-- 
sch at sun.com  http://blogs.sun.com/sch/

Reply via email to