[Buildbot-devel] Added change revision from one git repo for another

Shakthi Kannan shakthimaan at gmail.com
Fri Jul 29 05:58:40 UTC 2011


Hi,

--- On Thu, Jul 28, 2011 at 6:37 PM, David Ignacio <dignacio at litl.com> wrote:
| I think we'd need to see your master.cfg to rule out any gotchas in
| there.  It could be that possibly you have a typo in a filter for your
| schedulers?
\--

=== master.cfg ===

c = BuildmasterConfig = {}

from buildbot.buildslave import BuildSlave
c['slaves'] = [BuildSlave("a", "aa"),
               BuildSlave("b", "bb"),
               BuildSlave("c", "cc")]

c['slavePortnum'] = 9989

from buildbot.changes.gitpoller import GitPoller
a_poller = GitPoller(
        'git://path/to/a.git',
        branch='master')

b_poller = GitPoller(
        'git://path/to/b.git',
        branch='master')

from buildbot.changes.svnpoller import SVNPoller
c_poller = SVNPoller(svnurl="https://path/to/project",
                             project='c')

c['change_source'] = [ a_poller, b_poller ]

from buildbot.scheduler import Scheduler
from buildbot.schedulers.filter import ChangeFilter

c_filter = ChangeFilter(project='c')

c['schedulers'] = []
c['schedulers'].append(Scheduler(name="atests", branch="master",
                                 treeStableTimer=None,
                                 builderNames=["atests"]))
c['schedulers'].append(Scheduler(name="ctests",
                                 treeStableTimer=None,
                                 change_filter=c_filter,
                                 builderNames=["ctests"]))
c['schedulers'].append(Scheduler(name="btests", branch="master",
                                 treeStableTimer=None,
                                 builderNames=["btests"]))

from buildbot.process.factory import BuildFactory
from buildbot.steps.source import Git
from buildbot.steps.shell import ShellCommand
from buildbot.steps import source

a_factory = BuildFactory()
a_factory.addStep(Git(repourl='git://path/to/a.git', mode='copy'))
a_factory.addStep(ShellCommand(command=["python", "manage.py", "syncdb"]))
a_factory.addStep(ShellCommand(command=["python", "manage.py", "test"]))

b_factory = BuildFactory()
b_factory.addStep(Git(repourl='git://path/to/b.git', mode='copy'))
b_factory.addStep(ShellCommand(command=["make", "test"]))

c_factory = BuildFactory()
c_factory.addStep(source.SVN(mode='update',
                                     baseURL="https://path/to/project",
                                     defaultBranch='trunk'))
c_factory.addStep(ShellCommand(command=["python", "common/tests.py", "-v"]))

from buildbot.config import BuilderConfig

c['builders'] = []
c['builders'].append(
    BuilderConfig(name="atests",
      slavenames=["a"],
      factory=a_factory))
c['builders'].append(
    BuilderConfig(name="ctests",
      slavenames=["c"],
      factory=c_factory))
c['builders'].append(
    BuilderConfig(name="btests",
      slavenames=["b"],
      factory=b_factory))

c['status'] = []

from buildbot.status import html
from buildbot.status.web import auth, authz
authz_cfg=authz.Authz(
    # change any of these to True to enable; see the manual for more
    # options
    gracefulShutdown = False,
    forceBuild = True, # use this to test your slave once it is set up
    forceAllBuilds = False,
    pingBuilder = False,
    stopBuild = True,
    stopAllBuilds = True,
    cancelPendingBuild = True,
)
c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg))

from buildbot.status.mail import MailNotifier

mn = MailNotifier(fromaddr="buildbot at foo.com",
                  sendToInterestedUsers=False,
                  extraRecipients=['admin at foo.com'])

c['status'].append(mn)

c['projectName'] = "Foo"
c['projectURL'] = "https://foo.com"

c['buildbotURL'] = "http://foo.com:8010/"

####### DB URL

# This specifies what database buildbot uses to store change and scheduler
# state.  You can leave this at its default for all but the largest
# installations.
c['db_url'] = "sqlite:///state.sqlite"

=== END ===

I had used 0.8.3 initially and then upgraded to 0.8.4 and now 0.8.4p2.
I did buildbot upgrade-master <master>, and buildslave upgrade-slave
<instances>.

SK

-- 
Shakthi Kannan
http://www.shakthimaan.com




More information about the devel mailing list