Buildbot no longer supports Python 2.7 on the Buildbot master.
This page documents the latest, unreleased version of Buildbot. For documentation for released versions, see http://docs.buildbot.net/current/.
5.80. Release Notes for Buildbot v0.8.6p1¶
The following are the release notes for Buildbot v0.8.6p1. Buildbot v0.8.6 was released on March 11, 2012. Buildbot v0.8.6p1 was released on March 25, 2012.
In addition to what’s listed below, the 0.8.6p1 release adds the following.
Builders are no longer displayed in the order they were configured. This was never intended behavior, and will become impossible in the distributed architecture planned for Buildbot-0.9.x. As of 0.8.6p1, builders are sorted naturally: lexically, but with numeric segments sorted numerically.
Slave properties in the configuration are now handled correctly.
The web interface buttons to cancel individual builds now appear when configured.
The ForceScheduler’s properties are correctly updated on reconfig - bug #2248.
If a slave is lost while waiting for locks, it is properly cleaned up - bug #2247.
Crashes when adding new steps to a factory in a reconfig are fixed - bug #2252.
MailNotifier AttributeErrors are fixed - bug #2254.
Cleanup from failed builds is improved - bug #2253.
If you are using the GitHub hook, carefully consider the security implications of allowing un-authenticated change requests, which can potentially build arbitrary code. See bug #2186.
188.8.131.52. Deprecations, Removals, and Non-Compatible Changes¶
Forced builds now require that a
ForceSchedulerbe defined in the Buildbot configuration. For compatible behavior, this should look like:
from buildbot.schedulers.forcesched import ForceScheduler c['schedulers'].append(ForceScheduler( name="force", builderNames=["b1", "b2", ... ]))
Where all of the builder names in the configuration are listed. See the documentation for the much more flexible configuration options now available.
This is the last release of Buildbot that will be compatible with Python 2.4. The next version will minimally require Python-2.5. See bug #2157.
This is the last release of Buildbot that will be compatible with Twisted-8.x.y. The next version will minimally require Twisted-9.0.0. See bug #2182.
buildbot startno longer invokes make if a
Makefile.buildbotexists. If you are using this functionality, consider invoking make directly.
--usernamehas been removed as promised in bug #1711.
StatusReceivers’ checkConfig method should now take an additional errors parameter and call its
addErrormethod to indicate errors.
The Gerrit status callback now gets an additional parameter (the master status). If you use this callback, you will need to adjust its implementation.
SQLAlchemy-Migrate version 0.6.0 is no longer supported. See Buildmaster Requirements.
Older versions of SQLite which could limp along for previous versions of Buildbot are no longer supported. The minimum version is 3.4.0, and 3.7.0 or higher is recommended.
The master-side Git step now checks out ‘HEAD’ by default, rather than master, which translates to the default branch on the upstream repository. See pull request 301.
The format of the repository strings created by
hgbuildbothas changed to contain the entire repository URL, based on the
hgrc. To continue the old (incorrect) behavior, set
hgbuildbot.baseurlto an empty string as suggested in the Buildbot manual.
SVNStep parameter svnurl has been renamed repourl, to be consistent with other master-side source steps.
baseURLhas been merged with
repourlparameter. The behavior of the step is already controlled by
branchTypeparameter, so just use a single argument to specify the repository.
buildbot.process.buildstep.BuildStepsubclass (rather than instance) to
buildbot.process.factory.BuildFactory.addStephas long been deprecated, and will be removed in version 0.8.7.
The hgbuildbot tool now defaults to the ‘inrepo’ branch type. Users who do not explicitly set a branch type would previously have seen empty branch strings, and will now see a branch string based on the branch in the repository (e.g., default).
184.108.40.206. Changes for Developers¶
The interface for runtime access to the master’s configuration has changed considerably. See Configuration for more details.
The DB connector methods
claimBuildRequestnow take an optional
complete_atparameter to specify the completion time explicitly.
Buildbot now sports sourcestamp sets, which collect multiple sourcestamps used to generate a single build, thanks to Harry Borkhuis. See pull request 287.
Schedulers no longer have a
schedulerid, but rather an
objectid. In a related change, the
schedulerstable has been removed, along with the
The Dependent scheduler tracks its upstream buildsets using
buildbot.db.schedulers.StateConnectorComponent, so the
scheduler_upstream_buildsetstable has been removed, along with corresponding (undocumented)
Errors during configuration (in particular in
BuildStepconstructors), should be reported by calling
The IRC status bot now display build status in colors by default. It is controllable and may be disabled with useColors=False in constructor.
Buildbot can now take advantage of authentication done by a front-end web server - see pull request 266.
Buildbot supports a simple cookie-based login system, so users no longer need to enter a username and password for every request. See the earlier commits in pull request 278.
The master-side SVN step now has an export method which is similar to copy, but the build directory does not contain Subversion metadata. (bug #2078)
Propertyinstances will now render any properties in the default value if necessary. This makes possible constructs like
Buildbot has a new web hook to handle push notifications from Google Code - see pull request 278.
Shell command steps will now “flatten” nested lists in the
commandargument. This allows substitution of multiple command-line arguments using properties. See bug #2150.
Steps now take an optional
hideStepIfparameter to suppress the step from the waterfall and build details in the web. (bug #1743)
waitForFinish=Truenow receive a URL to all the triggered builds. This URL is displayed in the waterfall and build details. See bug #2170.
master/contrib/fakemaster.pyscript allows you to run arbitrary commands on a slave by emulating a master. See the file itself for documentation.
MailNotifier allows multiple notification modes in the same instance. See bug #2205.
SVNPoller now allows passing extra arguments via argument
extra_args. See bug #1766
220.127.116.11. Deprecations, Removals, and Non-Compatible Changes¶
BitKeeper support is in the “Last-Rites” state, and will be removed in the next version unless a maintainer steps forward.
For a more detailed description of the changes made in this version, see the Git log itself:
git log buildbot-0.8.5..buildbot-0.8.6