5.69. Release Notes for Buildbot 0.9.15.post1
( 2018-01-07
)
5.69.1. Bug fixes
Fix worker reconnection fails (issue #3875, issue #3876)
Fix umask set to 0 when using LocalWorker (issue #3878)
Fix Buildbot reconfig, when badge plugin is installed (issue #3879)
Fix (issue #3865) so that now
SVNPoller
works with paths that contain valid UTF-8 characters which are not ASCII.
5.70. Release Notes for Buildbot 0.9.15
( 2018-01-02
)
5.70.1. Bug fixes
Fix builder page not showing any build (issue #3820)
Fix double Workers button in the menu. (issue #3818)
Fix bad icons in the worker action dialog.
Fix url arguments in Buildbot Badges for python3.
Upgrading to guanlecoja-ui version 1.8.0, fixing two issues. Fixed issue where the console view would jump to the top of page when opening the build summary dialog (issue #3657). Also improved sidebar behaviour by remembering previous pinned vs. collapsed state.
Fixes issue with Buildbot
DockerLatentWorker
, where Buildbot can kill running workers by mistake based on the form the worker name (issue #3800).Fixes issue with Buildbot
DockerLatentWorker
not reaping zombies process within its container environment.Update requirement text to use the modern “docker” module from the older “docker-py” module name
When multiple
reporter
orservices
are configured with the same name, an error is now displayed instead of silently discarding all but the last one issue #3813.Fixed exception when using
buildbot.www.auth.CustomAuth
5.70.2. Features
New Buildbot SVG icons for web UI. The web UI now uses a colored favicon according to build results (issue #3785).
paused
andgraceful
Workers States are now stored in the database.Workers States are now displayed in the web UI.
Quarantine timers is now using the
paused
worker state.Quarantine timer is now enabled when a build finish on
EXCEPTION
state.Standalone binaries for buildbot-worker package are now published for windows and linux (
amd64
). This allows to run a buildbot-worker without having a python environment.New
buildbot-worker create-worker --maxretries
for Latent Workers to quit if the master is or becomes unreachable.Badges can now display running as status.
The database schema now supports cascade deletes for all objects instead of raising an error when deleting a record which has other records pointing to it via foreign keys.
Buildbot can properly find its version if installed from a git archive tarball generated from a tag.
Enhanced the test suite to add worker/master protocol interoperability tests between python3 and python2.
5.70.3. Deprecations and Removals
buildbot.util.ascii2unicode() is removed. buildbot.util.bytes2unicode() should be used instead.
5.71. Release Notes for Buildbot 0.9.14
( 2017-12-08
)
5.71.1. Bug fixes
Compile step now properly takes the decodeRC parameter in account (issue #3774)
Fix duplicate build requests results in
BuildRequestsConnectorComponent
when querying the database (issue #3712).GitPoller
now accepts git branch names with UTF-8 characters (issue #3769).Fixed inconsistent use of pointer style mouse cursor by removing it from the .label css rule and instead creating a new .clickable css rule which is used only in places which are clickable and would not otherwise automatically get the pointer icon, for example it is not needed for hyper-links. (issue #3795).
Rebuilding with the same revision now takes new change properties into account instead of re-using the original build change properties (issue #3701).
Worker authentication is now delayed via a DeferredLock until Buildbot configuration is finished. This fixes UnauthorizedLogin errors during buildbot restart (issue #3462).
Fixes python3 encoding issues with Windows Service (issue #3796)
5.71.2. Features
new :ref`badges` plugin which reimplement the buildbot eight png badge system.
In progress worker control API. Worker can now be stopped and paused using the UI. Note that there is no UI yet to look the status of those actions (issue #3429).
Make maximum number of builds fetched on the builders page configurable.
Include context in the log message for GitHubStatusPush
On ‘Builders’ page reload builds when tags change.
Give reporters access to master single in renderables. This allows access to build logs amongst other things
Added possibility to check www user credentials with a custom class.
5.72. Release Notes for Buildbot 0.9.13
( 2017-11-07
)
5.72.1. Deprecations and Removals
Following will help Buildbot to leverage new feature of twisted to implement important features like worker protocol encryption.
The
buildbot
andbuildbot-worker
packages now requires Python 2.7 or Python 3.4+ – Python 2.6 is no longer supported.buildbot
andbuildbot-worker
packages now required Twisted versions >= 16.1.0. Earlier versions of Twisted are not supported.
5.72.2. Bug fixes
Fix Console View forced builds stacking at top (issue:3461)
Improve buildrequest distributor to ensure all builders are processed. With previous version, builder list could be re-prioritized, while running the distributor, meaning some builders would never be run in case of master high load. (issue #3661)
Improve
getOldestRequestTime
function of buildrequest distributor to do sorting and paging in the database layer (issue #3661).Arguments passed to GitLab push notifications now work with Python 3 (issue #3720).
Web hooks change sources which use twisted.web.http.Request have been fixed to use bytes, not native strings. This ensures web hooks work on Python 3. Please report any issues on web hooks in python3, as it is hard for us to test end to end.
Fixed null value of steps and logs in reporter HttpStatusPush api. Fixes (issue #3180)
EC2LatentBuilder now correctly sets tags on spot instances (issue #3739).
Fixed operation of the Try scheduler for a code checked out from Subversion.
Fix buildbot worker startup when running as a windows service
5.72.3. Features
Make parameters for
WarningCountingShellCommand
renderable. These are suppressionList, warningPattern, directoryEnterPattern, directoryLeavePattern and maxWarnCount.GitHubEventHandler
now supports authentication for GitHub instances that do not allow anonymous accessAdded support for renderable builder locks. Previously only steps could have renderable locks.
Added flag to Docker Latent Worker to always pull images
5.73. Release Notes for Buildbot 0.9.12.post1
( 2017-10-10
)
This is a release which only exists for the buildbot_grid_view
package.
5.73.1. Bug fixes
Fix Grid View plugin broken because of merge resolution mistake ( issue #3603 and issue #3688.)
5.74. Release Notes for Buildbot 0.9.12
( 2017-10-05
)
5.74.1. Bug fixes
Fixed many issues related to connecting masters and workers with different major version of Python (issue #3416).
Fixed KeyError in the log when two buildrequests of the same buildset are finished at the same time (issue #3472, issue #3591)
Fix for SVN.purge fails when modified files contain non-ascii characters (issue #3576)
Fix the GitHub change hook on Python 3 (issue #3452).
Fix
reporters.gitlab
to use correct commit status codes (issue #3641).Fixed deadlock issue, when locks are taken at least 3 times by the 3 Buildstep with same configuration (issue #3650)
Fix the Gerrit source step in the presence of multiple Gerrit repos (issue #3460).
Add empty pidfile option to master and worker start script when –nodaemon option is on. (issue #3012).
5.74.2. Features
Add possibility to specify a
PatchParameter
for anyCodebaseParameter
in aForceScheduler
(part of issue #3110).Latent Workers will no longer continually retry if they cannot substantiate (issue #3572)
5.74.3. Deprecations and Removals
buildbot.util.encodeString() has been removed. buildbot.util.unicode2bytes() should be used instead.
5.75. Release Notes for Buildbot 0.9.11
( 2017-09-08
)
5.75.1. Incompatible Changes
Buildbot is not compatible with
python3-ldap
anymore. It now requiresldap3
package for its ldap operations (issue #3530)
5.75.2. Bug fixes
Fix issue with
logviewer
scrolling up indefinitely when loading logs (issue #3154).Do not add the url if it already exists in the step. (issue #3554)
Fix filtering for REST resource attributes when SQL is involved in the backend (eq, ne, and contains operations, when there are several filters) (issue #3526).
The
git
source step now uses git checkout -B rather than git branch -M to create local branches (issue #3537)Fixed Grid View settings. It is now possible to configure “false” values.
Fix performance issue when remote command does not send any line boundary (issue #3517)
Fix regression in GithHub oauth2 v3 api, when using enterprise edition.
Fix the Perforce build step on Python 3 (issue #3493)
Make REST API’s filter __contains use OR connector rather than AND according to what the documentation suggests.
Fixed secret plugins registration, so that they are correctly available in
import buildbot.plugins.secrets
. changes to all secrets plugin to be imported and used.Fix secrets downloaded to worker with too wide permissions.
Fix issue with stop build during latent worker substantiating, the build result was retried instead of cancelled.
pip install 'buildbot[bundle]'
now installsgrid_view
plugin. This fixes issues with the tutorial wheregrid_view
is enabled by default.
5.75.3. Improved Documentation
Fixed documentation regarding log obfuscation for passwords.
Improve documentation of REST API’s __contains filter.
5.75.4. Features
Added autopull for Docker images based on config. (issue #3071)
Allow to expose logs to summary callback of
GerritStatusPush
.Implement GitHub change hook CI skipping (issue #3443). Now buildbot will ignore the event, if the
[ci skip]
keyword (configurable) in commit message. For more info, please check out theskip
parameter ofGitHub
hook.GitHubStatusPush
now support reporting to ssh style URLs, ie git@github.com:Owner/RepoName.gitAdded the possibility to filter builds according to results in Grid View.
OpenStackLatentWorker
now supports V3 authentication.Buildbot now tries harder at finding line boundaries. It now supports several cursor controlling ANSI sequences as well as use of lots of backspace to go back several characters.
UI Improvements so that Buildbot build pages looks better on mobile.
OpenStackLatentWorker
now supports region attribute.The Schedulers
builderNames
parameter can now be aIRenderable
object that will render to a list of builder names.The
LdapUserInfo
now uses the python3-ldap successor ldap3 (issue #3530).Added support for static suppressions parameter for shell commands.
5.76. Release Notes for Buildbot 0.9.10
( 2017-08-03
)
5.76.1. Bug fixes
Fix ‘reconfig master causes worker lost’ error (issue #3392).
Fix bug where object names could not be larger than 150 characters (issue #3449)
Fix bug where notifier names could not be overridden (issue #3450)
Fix exception when shutting down a master (issue #3478)
Fix Manhole support to work with Python 3 and Twisted 16.0.0+ (issue #3160).
AuthorizedKeysManhole
andPasswordManhole
now require a directory containing SSH host keys to be specified.Fix python 3 issue with displaying the properties when fetching builders (issue #3418).
Fix bug when
ShellArg
arguments were rendered only once during an instance’s lifetime.Fix waterfall tiny size of build status indicators (issue #3475)
Fix waterfall natural order of builder list
Fix builder page use ‘pointer’ cursor style for tags (issue #3473)
Fix builder page update tag filter when using the browser’s back button (issue #3474)
5.76.2. Features
added support for builder names in REST API. Note that those endpoints are not (yet) available from the UI, as the events are not sent to the endpoints with builder names.
Implemented new ability to set from by email domain. Implemented
RolesFromDomain
. (issue #3422)
5.77. Release Notes for Buildbot 0.9.9.post2
( 2017-07-06
)
5.77.1. Bug fixes
Fix
tried to complete 100 buildrequests, but only completed 25
issue in buildrequest collapser (issue #3406)Fixed issue when several mail notifiers are used with same parameters, but different modes (issue #3398).
Fixed release scripts for
postN
releases
5.78. Release Notes for Buildbot 0.9.9.post1
( 2017-07-01
)
5.78.1. Bug fixes
Fix regression with
GitHubAuth
when API v3 is used.When using the
GitHubAuth
v4 API, the generated GraphQL to get the user organizations uses a name alias for each organization. These aliases must not contain dashes.
5.79. Release Notes for Buildbot 0.9.9
( 2017-06-29
)
5.79.1. Bug fixes
Fixed a regression inn
UserPasswordAuth
where a list would create an error.Fix non ascii payload handling in base web hook (issue #3321).
Fixed default buildrequest collapsing (issue #3151)
_wait_for_request() would fail to format a log statement due to an invalid type being passed to log.msg (resulting in a broken build)
Fix Windows compatibility with frontend development tool
gulp dev proxy
(issue #3359)
5.79.2. Features
New Grid View UI plugin.
The Change Hooks system is now integrated in the Plugin Infrastructure in Buildbot system, making it easier to subclass hooks. There is still the need to re- factor hook by hook to allow better customizability.
The
GitHubAuth
now allows fetching the user team membership for all organizations the user belongs to. This requires access to a V4 GitHub API(GraphQL).GitLab merge request hook now create a change with repository to be the source repository and branch the source branch. Additional properties are created to point to destination branch and destination repository. This makes
GitLabStatusPush
push the correct status to GitLab, so that pipeline report is visible in the merge request page.The
GitHubEventHandler
now allows the inclusion of white-listed properties for push events.Allow sending a comment to a pull request for Bitbucket Server in
BitbucketServerPRCommentPush
Implement support for Bitbucket Server webhook plugin in
BitbucketServerEventHandler
5.80. Release Notes for Buildbot 0.9.8
( 2017-06-14
)
5.80.1. Core Bug fixes
Fix incompatibility issue of
UserPasswordAuth
with python 3.Fix issue with oauth sequence not working with Firefox (issue #3306)
Update old
addChange
method to accept the new chdict names if only the new name is present. Fixes issue #3191.fix bytes vs string issue on python3 with authorization of rest endpoints.
5.80.2. Core Features
doStepIf
is now renderable.Source step codebase is now renderable.
Step names are now renderable.
Added
giturlparse
utility function to help buildbot components like reporters to parse git url from change sources.Factorized the mail reporter to be able to write new message based reporters, for other backend than SMTP.
The class
Property
now allows being used with Python built in comparators. It will return a Renderable which executes the comparison.
5.80.3. Components Bug fixes
GitLab reporter now correctly sets the status to running instead of pending when a build starts.
GitLab reporter now correctly works when there are multiple codebase, and when the projects names contain url reserved characters.
GitLab reporter now correctly reports the status even if there are several sourcestamps. Better parsing of change repository in GitLab reporter so that it understands ssh urls and https url. GitLab reporter do not use the project field anymore to know the repository to push to.
5.80.4. Components Features
GitLab hook now supports the merge_request event to automatically build from a merge request. Note that the results will not properly displayed in merge_request UI due to https://gitlab.com/gitlab-org/gitlab-ce/issues/33293
Added a https://pushjet.io/ reporter as
buildbot.reporters.pushjet.PushjetNotifier
New build step
Assert
Tests a renderable or constant if it evaluates to true. It will succeed or fail to step according to the result.
5.81. Release Notes for Buildbot 0.9.7
( 2017-05-09
)
5.81.1. Core Bug fixes
Fix
UserPasswordAuth
authentication onpy3
and recent browsers. (issue #3162, issue #3163). Thepy3
fix also requires Twisted https://github.com/twisted/twisted/pull/773.Console View now display changes the same way as in Recent Changes page.
Fix issue with Console View when no change source is configured but still builds have
got_revision
property
5.81.2. Components Bug fixes
Allow renderables in options and definitions of step
CMake
. Currently only dicts and lists with renderables inside are allowed.OAuth
Authentication are now working withRolesFromEmails
.DockerLatentWorker
:_image_exists
does not raise anymore if it encounters an image with<none>
tagFix command line parameters for
Robocopy
stepverbose
option
5.81.3. Core Features
Builds
state_string
is now automatically computed according to theBuildStep.getResultSummary
,BuildStep.description
andupdateBuildSummaryPolicy
from Parameters Common to all Steps. This allows the dashboards and reporters to get a descent summary text of the build without fetching the steps.New
configurators
section, which can be used to create higher level configuration modules for Buildbot.New
JanitorConfigurator
which can be used to create a builder which save disk space by removing old logs from the database.
5.81.4. Components Features
Added a https://pushover.net/ reporter as
buildbot.reporters.pushover.PushoverNotifier
property
argument in SetPropery is now renderable.
5.82. Release Notes for Buildbot 0.9.6
( 2017-04-19
)
5.82.1. Core Bug fixes
buildbot.www.authz.endpointmatchers.AnyControlEndpointMatcher
now actually doesn’t match GET requests. Before it would act like an AnyEndpointMatcher since the GET had a different case.Passing
unicode
builderNames
toForceScheduler
no longer causes an error.Fix issue with :bb:sched::Nightly change classification raising foreign key exceptions (issue #3021)
Fixes an exception found
buildbot_net_usage_data._sendWithUrlib
when running through the tutorial using Python 3.usePTY
configuration of theShellCommand
now works as expected with recent version of buildbot-worker.
5.82.2. Components Bug fixes
pollAtLaunch
of theGitHubPullrequestPoller
now works as expected. Also the author email won’t be displayed as NoneGerritChangeSource
andGerritStatusPush
now use the master’s environment including PATH variable to find the ssh binary.SlaveDirectoryUploadCommand
no longer throws exceptions because the file “is used by another process” under Windows
5.82.3. UI Bug fixes
Fix waterfall scrolling and zooming in current browsers
console_view
now properly usesrevlink
metadata to link to changes.Fixed Console View infinite loading spinner when no change have been recorded yet (issue #3060).
5.82.4. Core Features
new Virtual Builders concept for better integration of frameworks which store the build config along side the source code.
5.82.5. Components Features
BitBucket
now sets theevent
property on each change to what theX-Event-Key
header contains.GitHubPullrequestPoller
now adds additional information about the pull request to properties. The property argument is removed and is populated with the repository full name.GitHub
now sets theevent
property on each change to what theX-GitHub-Event
header contains.Changed
GitHubAuth
now supports GitHub Enterprise when setting newserverURL
argument.GitLab
now sets theevent
property on each change to what theX-GitLab-Event
header contains.GitHub
now process git tag push eventsGitHub
now adds more information about the pull request to the properties. This syncs features withGitHubPullrequestPoller
GitLab
now process git tag push eventsGitLab
now supports authentication with the secret token
5.82.6. UI Features
Reworked Console View and Waterfall View for better usability and better integration with virtual builders
Javascript Data Module collections now have a
$resolved
attribute which allows dashboard to know when the data is loaded.
5.83. Release Notes for Buildbot 0.9.5
( 2017-03-18
)
5.83.1. Bug fixes
Fix issue with compressing empty log
Fix issue with db being closed by wrong thread
Fix issue with buildbot_worker not closing file handles when using the transfer steps
Fix issue with buildbot requesting too many permissions from GitHub’s OAuth
Fix
HTTPStep
to acceptjson
as keyword argument.Updated
OpenStackLatentWorker
to use keystoneauth1 so it will support latest python-novaclient packages.Include
RpmLint
step in steps plugins.
5.83.2. Core Features
Experimental support for Python 3.5 and 3.6. Note that complete support depends on fixes to be released in Twisted 17.2.0.
New experimental Secret Management framework, which allows to securely declare secrets, reusable in your steps.
New Writing Dashboards with Flask or Bottle plugin, which allows to write custom dashboard with traditional server side web frameworks.
Added
AnyControlEndpointMatcher
andEnableSchedulerEndpointMatcher
for better configurability of the access control. If you have access control to your Buildbot, it is recommended you addAnyControlEndpointMatcher
at the end of your access control configuration.Schedulers can now be toggled on and off from the UI. Useful for temporarily disabling periodic timers.
5.83.3. Components Features
FileUpload
now supports setting the url title text that is visible in the web UI.FileUpload
now supports custom description and descriptionDone text.EC2LatentWorker
now provides instance id as the instance property enabling use of the AWS toolkit.Add GitHub pull request Poller to list of available changesources.
OAuth2LoginResource
now supports the token URL parameter. If a user wants to authenticate through OAuth2 with a pre- generated token (such as the access_token provided by GitHub) it can be passed to /auth/login as the token URL parameter and the user will be authenticated to buildbot with those credentials.New reporter
GitHubCommentPush
can comment on GitHub PRsGitPoller
now supports polling tags in a git repository.MultipleFilUpload
now supports the glob parameter. If glob is set to True all workersrcs parameters will be run through glob and the result will be uploaded to masterdestChanged
OpenStackLatentWorker
to default to v2 of the Nova API. The novaclient package has had a deprecation warning about v1.1 and would use v2 anyway.
5.83.4. Deprecations and Removals
master/contrib
andworker/contrib
directories have been moved to their own repository at https://github.com/buildbot/buildbot-contrib/
5.84. Release Notes for Buildbot 0.9.4
( 2017-02-08
)
5.84.1. Database upgrade
A database upgrade is necessary for this release (see upgrade-master
).
5.84.2. Bug fixes
Like for
buildbot start
,buildbot upgrade-master
will now erase an old pidfile if the process is not live anymore instead of just failing.Change properties ‘value’ changed from String(1024) to Text. Requires upgrade master. (bug #3197)
When using REST API, it is now possible to filter and sort in descending order at the same time.
Fix issue with
HttpStatusPush
raisingdatetime is not JSON serializable
error.Fix issue with log viewer not properly rendering color codes.
Fixed log viewer selection and copy-paste for Firefox (bug #3662).
Fix issue with
DelayedCalled
already called, and worker missing notification email never received.schedulers
andchange_source
are now properly taking configuration change in account withbuildbot reconfig
.setuptools
is now explicitly marked as required. The dependency was previously implicit.buildbotNetUsageData
now usesrequests
if available and will default to HTTP if a bogus SSL implementation is found. It will also correctly send information about the platform type.
5.84.3. Features
Buildbot now uses JWT to store its web UI Sessions. Sessions now persist upon buildbot restart. Sessions are shared between masters. Session expiration time is configurable with
c['www']['cookie_expiration_time']
seewww
.Builders page has been optimized and can now be displayed with 4 http requests whatever is the builder count (previously, there was one http request per builder).
Builder and Worker page build list now have the
numbuilds=
option which allows to show more builds.Masters page now shows more information about a master (workers, builds, activity timer)
Workers page improvements:
Shows which master the worker is connected to.
Shows correctly the list of builders that this master is configured on (not the list of
buildermaster
which nobody cares about).Shows list of builds per worker similar to the builders page.
New worker details page displays the list of builds built by this worker using database optimized query.
5.84.4. Deprecations and Removals
Some deprecated broken Contrib Scripts were removed.
buildbot.www.hooks.googlecode
has been removed, since the Google Code service has been shut down.buildbot.util.json
has been deprecated in favor of the standard libraryjson
.simplejson
will not be used anymore if found in the virtualenv.
5.85. Release Notes for Buildbot 0.9.3
( 2017-01-11
)
5.85.1. Bug fixes
Fix
BitbucketStatusPush
ep should start with /
assertion error.Fix duplicate worker use case, where a worker with the same name would make the other worker also disconnect (bug #3656)
GitPoller
:buildPushesWithNoCommits
now rebuilds for a known branch that was updated to an existing commit.Fix issue with log viewer not staying at bottom of the log when loading log lines.
Fixed addBuildURLs in
Trigger
to use results from triggered builds to include in the URL name exposed by API.Fix Wamp
mq
support by removingdebug
,debug_amp
anddebug_app
from themq
config, which is not available in latest version of Python Autobahn. You can now usewamp_debug_level
option instead.fix issue with factory.workdir AttributeError are not properly reported.
5.85.2. Features
Optimize the memory consumption of the log compression process. Buildbot do not load the whole log into memory anymore. This should improve a lot buildbot memory footprint.
Changed the build page so that the preview of the logs are shown in live. It is a preview means the last lines of log. How many lines is configurable per user in the user settings page.
Log viewer line numbers are no longer selectable, so that it is easier to copy paste.
DockerLatentWorker
accepts now renderable DockerfileRenderer function can now return
IRenderable
objects.new
SetProperties
which allows to generate and transform properties separately.Handle new workers in windows_service.py script.
Sort the builders in the waterfall view by name instead of ID.
5.86. Release Notes for Buildbot 0.9.2
( 2016-12-13
)
5.86.1. Bug fixes
Fix
GitHubAuth
to retrieve all organizations instead of only those publicly available.Fixed ref to point to branch instead of commit sha in
GitLabStatusPush
IRC
maybeColorize
is able to highlight single words and stop colorization at the end. The previous implementation only stopped colorization but not boldface.fix compatibility issue with mysql5 (do not set default value for TEXT column).
Fixed addChange in
Change
to use the revlink configuration option to generate the revlink.fix threading issue in
DockerLatentWorker
5.86.2. Features
Implement
BitbucketAuth
.New
GerritEventLogPoller
poller to poll Gerrit changes via http API.New
GerritVerifyStatusPush
can send multiple review status for the same Gerrit change.IRC
appends the builder URL to a successful/failed build if availableMailNotifier
now acceptsuseSmtps
parameter for initiating connection over an SSL/TLS encrypted connection (SMTPS)New support for
Mesos
and Marathon viaMarathonLatentWorker
.Marathon
is a production-grade container orchestration platform for Mesosphere’s Data- center Operating System (DC/OS) and ApacheMesos
.password
inDockerLatentWorker
andHyperLatentWorker
, can be None. In that case, they will be auto-generated from random number.BitbucketServerStatusPush
now acceptskey
,buildName
,endDescription
,startDescription
, andverbose
parameters to control the JSON sent to Stash.Buildbot can now be configured to deny read access to REST api resources based on authorization rules.