| Index: third_party/buildbot_7_12/buildbot/changes/hgbuildbot.py
|
| diff --git a/third_party/buildbot_7_12/buildbot/changes/hgbuildbot.py b/third_party/buildbot_7_12/buildbot/changes/hgbuildbot.py
|
| deleted file mode 100644
|
| index 1f4ed34c94041ba2717c40f1b94737cf12086be9..0000000000000000000000000000000000000000
|
| --- a/third_party/buildbot_7_12/buildbot/changes/hgbuildbot.py
|
| +++ /dev/null
|
| @@ -1,114 +0,0 @@
|
| -# hgbuildbot.py - mercurial hooks for buildbot
|
| -#
|
| -# Copyright 2007 Frederic Leroy <fredo@starox.org>
|
| -#
|
| -# This software may be used and distributed according to the terms
|
| -# of the GNU General Public License, incorporated herein by reference.
|
| -
|
| -# hook extension to send change notifications to buildbot when a changeset is
|
| -# brought into the repository from elsewhere.
|
| -#
|
| -# default mode is to use mercurial branch
|
| -#
|
| -# to use, configure hgbuildbot in .hg/hgrc like this:
|
| -#
|
| -# [hooks]
|
| -# changegroup = python:buildbot.changes.hgbuildbot.hook
|
| -#
|
| -# [hgbuildbot]
|
| -# # config items go in here
|
| -#
|
| -# config items:
|
| -#
|
| -# REQUIRED:
|
| -# master = host:port # host to send buildbot changes
|
| -#
|
| -# OPTIONAL:
|
| -# branchtype = inrepo|dirname # dirname: branch = name of directory
|
| -# # containing the repository
|
| -# #
|
| -# # inrepo: branch = mercurial branch
|
| -#
|
| -# branch = branchname # if set, branch is always branchname
|
| -
|
| -import os
|
| -
|
| -from mercurial.i18n import gettext as _
|
| -from mercurial.node import bin, hex, nullid
|
| -from mercurial.context import workingctx
|
| -
|
| -# mercurial's on-demand-importing hacks interfere with the:
|
| -#from zope.interface import Interface
|
| -# that Twisted needs to do, so disable it.
|
| -try:
|
| - from mercurial import demandimport
|
| - demandimport.disable()
|
| -except ImportError:
|
| - pass
|
| -
|
| -from buildbot.clients import sendchange
|
| -from twisted.internet import defer, reactor
|
| -
|
| -
|
| -def hook(ui, repo, hooktype, node=None, source=None, **kwargs):
|
| - # read config parameters
|
| - master = ui.config('hgbuildbot', 'master')
|
| - if master:
|
| - branchtype = ui.config('hgbuildbot', 'branchtype')
|
| - branch = ui.config('hgbuildbot', 'branch')
|
| - else:
|
| - ui.write("* You must add a [hgbuildbot] section to .hg/hgrc in "
|
| - "order to use buildbot hook\n")
|
| - return
|
| -
|
| - if branch is None:
|
| - if branchtype is not None:
|
| - if branchtype == 'dirname':
|
| - branch = os.path.basename(os.getcwd())
|
| - if branchtype == 'inrepo':
|
| - branch = workingctx(repo).branch()
|
| -
|
| - if hooktype == 'changegroup':
|
| - s = sendchange.Sender(master, None)
|
| - d = defer.Deferred()
|
| - reactor.callLater(0, d.callback, None)
|
| - # process changesets
|
| - def _send(res, c):
|
| - ui.status("rev %s sent\n" % c['revision'])
|
| - return s.send(c['branch'], c['revision'], c['comments'],
|
| - c['files'], c['username'])
|
| -
|
| - try: # first try Mercurial 1.1+ api
|
| - start = repo[node].rev()
|
| - end = len(repo)
|
| - except TypeError: # else fall back to old api
|
| - start = repo.changelog.rev(bin(node))
|
| - end = repo.changelog.count()
|
| -
|
| - for rev in xrange(start, end):
|
| - # send changeset
|
| - node = repo.changelog.node(rev)
|
| - manifest, user, (time, timezone), files, desc, extra = repo.changelog.read(node)
|
| - parents = filter(lambda p: not p == nullid, repo.changelog.parents(node))
|
| - if branchtype == 'inrepo':
|
| - branch = extra['branch']
|
| - # merges don't always contain files, but at least one file is required by buildbot
|
| - if len(parents) > 1 and not files:
|
| - files = ["merge"]
|
| - change = {
|
| - 'master': master,
|
| - 'username': user,
|
| - 'revision': hex(node),
|
| - 'comments': desc,
|
| - 'files': files,
|
| - 'branch': branch
|
| - }
|
| - d.addCallback(_send, change)
|
| -
|
| - d.addCallbacks(s.printSuccess, s.printFailure)
|
| - d.addBoth(s.stop)
|
| - s.run()
|
| - else:
|
| - ui.status(_('hgbuildbot: hook %s not supported\n') % hooktype)
|
| - return
|
| -
|
|
|