Caution
Buildbot no longer supports Python 2.7 on the Buildbot master.
5.32. Release Notes for Buildbot 0.9.1¶
The following are the release notes for Buildbot 0.9.1.
This version was released on November 1, 2016.
See Upgrading to Buildbot 0.9.0 for a guide to upgrading from 0.8.x to 0.9.x
5.32.1. Master¶
5.32.1.1. Features¶
Add support for hyper.sh via
HyperLatentWorkerHyper is a CaaS solution for hosting docker container in the cloud, billed to the second. It forms a very cost efficient solution to run your CI in the cloud.The
Triggerstep now supportsunimportantSchedulerNamesadd a UI button to allow to cancel the whole queue for a builder
Buildbot log viewer now support 256 colors ANSI codes
new
GitHubwhich correctly checkout the magic branch likerefs/pull/xx/merge.MailNotifiernow supports a schedulers constructor argument that allows you to send mail only for builds triggered by the specified list of schedulers.MailNotifiernow supports a branches constructor argument that allows you to send mail only for builds triggered by the specified list of branches.Optimization of the data api filtering, sorting and paging, speeding up a lot the UI when the master has lots of builds.
GerritStatusPushnow accepts anotifyparameter to control who gets emailed by Gerrit.Add a
format_fnparameter to theHttpStatusPushreporter to customize the information being pushed.Latent Workers can now start in parallel.
The build started by latent worker will be created while the latent worker is substantiated.
Latent Workers will now report startup issues in the UI.
- Workers will be temporarily put in quarantine in case of build preparation issues.
This avoids master and database overload in case of bad worker configuration. The quarantine is implemented with an exponential back-off timer.
Master Stop will now stop all builds, and wait for all workers to properly disconnect. Previously, the worker connections was stopped, which incidentally made all their builds marked retried. Now, builds started with a
Triggereablescheduler will be cancelled, while other builds will be retried. The master will make sure that all latent workers are stopped.The
MessageFormatterclass also allows inline-templates with thetemplateparameter.The
MessageFormatterclass allows custom mail’s subjects with thesubjectandsubject_nameparameters.The
MessageFormatterclass allows extending the context given to the Templates via thectxparameter.The new
MessageFormatterMissingWorkerclass allows to customize the message sent when a worker is missing.The
OpenStackLatentWorkerworker now supports rendering the block device parameters. Thevolume_sizeparameter will be automatically calculated if it isNone.
5.32.1.2. Fixes¶
fix the UI to allow to cancel a buildrequest (bug #3582)
GitHubchange hook now correctly use the refs/pull/xx/merge branch for testing PRs.Fix the UI to better adapt to different screen width (bug #3614)
Don’t log
AlreadyClaimedError. They are normal in case ofTriggercancelling, and in a multimaster configuration.Fix issues with worker disconnection. When a worker disconnects, its current buildstep must be interrupted and the buildrequests should be retried.
Fix the worker missing email notification.
Fix issue with worker builder list not being updated in UI when buildmaster is reconfigured (bug #3629)
5.32.1.3. Changes for Developers¶
5.32.1.4. Features¶
New
SharedServicecan be used by steps, reporters, etc to implement per master resource limit.New
HTTPClientServicecan be used by steps, reporters, etc to implement HTTP client. This class will automatically choose between treq and txrequests, whichever is installed, in order to access HTTP servers. This class comes with a fake implementation helping to write unit tests.All HTTP reporters have been ported to
HTTPClientService
5.32.1.5. Fixes¶
5.32.1.6. Deprecations, Removals, and Non-Compatible Changes¶
By default, non-distinct commits received via
buildbot.status.web.hooks.github.GitHubEventHandlernow get recorded as aChange. In this way, a commit pushed to a branch that is not being watched (e.g. a dev branch) will still get acted on when it is later pushed to a branch that is being watched (e.g. master). In the past, such a commit would get ignored and not built because it was non-distinct. To disable this behavior and revert to the old behavior, install aChangeFilterthat checks thegithub_distinctproperty:
ChangeFilter(filter_fn=lambda c: c.properties.getProperty('github_distinct'))
setup.py ‘scripts’ have been converted to console_scripts entry point. This makes them more portable and compatible with wheel format. Most consequences are for the windows users:
buildbot.batdoes not exist anymore, and is replaced bybuildbot.exe, which is generated by the console_script entrypoint.buildbot_service.pyis replaced bybuildbot_windows_service.exe, which is generated by the console_script entrypoint As this script has been written in 2006, has only inline documentation and no unit tests, it is not guaranteed to be working. Please help improving the windows situation.
The
userandpasswordparameters of theHttpStatusPushreporter have been deprecated in favor of theauthparameter.The
template_nameparameter of theMessageFormatterclass has been deprecated in favor oftemplate_filename.
5.32.2. Worker¶
5.32.2.1. Fixes¶
5.32.2.2. Changes for Developers¶
5.32.2.3. Deprecations, Removals, and Non-Compatible Changes¶
The worker now requires at least Twisted 10.2.0.
setup.py ‘scripts’ have been converted to console_scripts entry point. This makes them more portable and compatible with wheel format. Most consequences are for the windows users:
buildbot_worker.batdoes not exist anymore, and is replaced bybuildbot_worker.exe, which is generated by the console_script entrypoint.buildbot_service.pyis replaced bybuildbot_worker_windows_service.exe, which is generated by the console_script entrypoint As this script has been written in 2006, has only inline documentation and no unit tests, it is not guaranteed to be working. Please help improving the windows situation.
AbstractLatentWorkeris now inbuildbot.worker.latentinstead ofbuildbot.worker.base.
5.32.3. Details¶
For a more detailed description of the changes made in this version, see the git log itself:
git log v0.9.0..v0.9.1