[Buildbot-devel] Multiple change sources and scheduler issues
Duncan Ferguson
duncan.ferguson at altinity.com
Tue Jul 1 12:34:10 UTC 2008
Hiya,
I have set up my buildbot v0.77 with a number of change sources and
Schedulers. The problem I have is that when a change is detected all
schedulers are triggered, not just the one configured for the
particular svn repository.
Triggering all the schedulers hits hard - I am currently monitoring 15
SVN repositories which build on 10 different os and arch
combinations. If I set up Nightlies instead I am building packages
every night that might not have been changed in a few weeks, so its
unnecessary work. Setting up the builds as manually triggered doesn't
make the best use of buildbot and wont necessarily pick up on bad
commits until the packages are needed (and then its a scrabble to get
the issue sorted).
Below is a cut down example of how I have set this up (I don't know
python at all so the below might not be as efficient as it could be)
but I hope with will give enough insight - what am I missing or what
have I done wrong? How are schedulers meant to be associated with a
particular change source only?
Thanks
Duncs
=======================
packages = [
{
'name': "package_1",
'url': "http://svn/repo1",
'title': "PKG1",
'category':"pkg1",
'status_port':8011,
},
{
'name': "package_2",
'url': "http://svn/repo2",
'title': "PKG2",
'category':"pkg2",
'status_port':8012,
},
]
for package in packages:
c['change_source'].append(
SVNPoller(
svnurl = package['url'],
svnuser = svn_user,
svnpasswd = svn_pass,
)
)
for package in common_packages:
build = factory.BuildFactory()
build.addStep(
ShellCommand,
description="Creating package",
descriptionDone="Package created",
command=["make","package"],
workdir='.',
haltOnFailure="True",
)
c['schedulers'].append(
Scheduler(
name="sched_"+package['title']
branch=None,
treeStableTimer=60,
builderNames=[package['title'],],
)
)
More information about the devel
mailing list