- Table Of Contents
- 1. Buildbot Tutorial
- 2. Buildbot Manual
- 2.1. Introduction
- 2.2. Installation
- 2.3. Concepts
- 2.4. Secret Management
- 2.5. Configuration
- 2.5.1. Configuring Buildbot
- 2.5.2. Global Configuration
- 2.5.3. Change Sources and Changes
- 2.5.5. Schedulers
- 2.5.6. Workers
- 2.5.7. Builder Configuration
- 2.5.8. Projects
- 2.5.9. Build Factories
- 2.5.10. Build Sets
- 2.5.11. Properties
- 2.5.12. Build Steps
- 2.5.12.1. Parameters Common to all Steps
- 2.5.12.2. Common Parameters of source checkout operations
- 2.5.12.3. Bzr
- 2.5.12.4. CVS
- 2.5.12.5. Darcs
- 2.5.12.6. Gerrit
- 2.5.12.7. GitHub
- 2.5.12.8. GitLab
- 2.5.12.9. Git
- 2.5.12.10. Mercurial
- 2.5.12.11. Monotone
- 2.5.12.12. P4
- 2.5.12.13. Repo
- 2.5.12.14. SVN
- 2.5.12.15. GitCommit
- 2.5.12.16. GitTag
- 2.5.12.17. GitPush
- 2.5.12.18. GitDiffInfo
- 2.5.12.19. ShellCommand
- 2.5.12.20. Shell Sequence
- 2.5.12.21. Compile
- 2.5.12.21. Compile
- 2.5.12.22. Configure
- 2.5.12.23. CMake
- 2.5.12.24. Visual C++
- 2.5.12.25. Cppcheck
- 2.5.12.26. Robocopy
- 2.5.12.27. Test
- 2.5.12.28. TreeSize
- 2.5.12.29. PerlModuleTest
- 2.5.12.30. SubunitShellCommand
- 2.5.12.31. HLint
- 2.5.12.32. MaxQ
- 2.5.12.33. Trigger
- 2.5.12.34. BuildEPYDoc
- 2.5.12.35. PyFlakes
- 2.5.12.36. Sphinx
- 2.5.12.37. PyLint
- 2.5.12.38. Trial
- 2.5.12.39. RemovePYCs
- 2.5.12.40. HTTP Requests
- 2.5.12.41. Worker Filesystem Steps
- 2.5.12.42. Transferring Files
- 2.5.12.44. MasterShellCommand
- 2.5.12.45. LogRenderable
- 2.5.12.47. SetProperty
- 2.5.12.46. Assert
- 2.5.12.48. SetProperties
- 2.5.12.49. SetPropertyFromCommand
- 2.5.12.51. RpmBuild
- 2.5.12.52. RpmLint
- 2.5.12.53. MockBuildSRPM Step
- 2.5.12.54. MockRebuild
- 2.5.12.55. DebPbuilder
- 2.5.12.57. DebLintian
- 2.5.13. Interlocks
- 2.5.14. Report Generators
- 2.5.15. Reporters
- 2.5.15.1. ReporterBase
- 2.5.15.2. BitbucketServerCoreAPIStatusPush
- 2.5.15.2. BitbucketServerCoreAPIStatusPush
- 2.5.15.3. BitbucketServerPRCommentPush
- 2.5.15.4. BitbucketServerStatusPush
- 2.5.15.6. GerritStatusPush
- 2.5.15.5. BitbucketStatusPush
- 2.5.15.7. GerritVerifyStatusPush
- 2.5.15.9. GitHubStatusPush
- 2.5.15.10. GitLabStatusPush
- 2.5.15.11. HttpStatusPush
- 2.5.15.12. IRC Bot
- 2.5.15.13. MailNotifier
- 2.5.15.14. PushjetNotifier
- 2.5.15.15. PushoverNotifier
- 2.5.15.16. Telegram Bot
- 2.5.15.17. ZulipStatusPush
- 2.5.16. Web Server
- 2.5.17. Change Hooks
- 2.5.18. Custom Services
- 2.5.19. DbConfig
- 2.5.20. Configurators
- 2.5.21. Manhole
- 2.5.22. Multimaster
- 2.5.23. Multiple-Codebase Builds
- 2.5.24. Miscellaneous Configuration
- 2.5.25. Testing Utilities
- 2.6. Customization
- 2.7. Command-line Tool
- 2.8. Resources
- 2.9. Optimization
- 2.10. Plugin Infrastructure in Buildbot
- 2.11. Deployment
- 2.12. Upgrading
- 3. Buildbot Development
- 3.1. Development Quick-start
- 3.2. Submitting Pull Requests
- 3.3. General Documents
- 3.3.1. Master Organization
- 3.3.2. Buildbot Coding Style
- 3.3.3. Buildbot’s Test Suite
- 3.3.4. Configuration
- 3.3.6. Writing Schedulers
- 3.3.7. Utilities
- 3.3.8. Build Result Codes
- 3.3.9. WWW Server
- 3.3.10. Javascript Data Module
- 3.3.11. Base web application
- 3.3.12. Authentication
- 3.3.13. Authorization
- 3.3.14. Master-Worker API
- 3.3.15. Master-Worker connection with MessagePack over WebSocket protocol
- 3.3.16. Claiming Build Requests
- 3.3.17. String Encodings
- 3.3.18. Metrics
- 3.3.19. Secrets
- 3.3.22. Statistics Service
- 3.3.23. How to package Buildbot plugins
- 3.4. REST API
- 3.5. REST API Specification
- 3.5.1. builder
- 3.5.2. buildrequest
- 3.5.3. build
- 3.5.4. buildset
- 3.5.5. build_data
- 3.5.6. change
- 3.5.7. changesource
- 3.5.8. forcescheduler
- 3.5.9. identifier
- 3.5.10. logchunk
- 3.5.11. log
- 3.5.12. master
- 3.5.13. patch
- 3.5.14. project
- 3.5.15. rootlink
- 3.5.16. scheduler
- 3.5.17. sourcedproperties
- 3.5.18. sourcestamp
- 3.5.19. spec
- 3.5.20. step
- 3.5.21. worker
- 3.5.22. test_result
- 3.5.23. testresultset
- 3.5.24. Raw endpoints
- 3.6. Data API
- 3.7. Database
- 3.8.1. Buildsets connector
- 3.8.2. Buildrequests connector
- 3.8.3. Builders connector
- 3.8.4. Builds connector
- 3.8.5. Build data connector
- 3.8.6. Steps connector
- 3.8.7. Logs connector
- 3.8.8. Changes connector
- 3.8.9. Change sources connector
- 3.8.10. Schedulers connector
- 3.8.11. Source stamps connector
- 3.8.12. State connector
- 3.8.13. Users connector
- 3.8.14. Masters connector
- 3.8.15. Workers connector
- 3.8. Database connectors API
- 3.9. Messaging and Queues
- 3.10. Classes
- 3.10.1. Builds
- 3.10.2. Workers
- 3.10.3. BuildFactory
- 3.10.4. Change Sources
- 3.10.5. RemoteCommands
- 3.10.6. BuildSteps
- 3.10.7. BaseScheduler
- 3.10.8. ForceScheduler
- 3.10.9. IRenderable
- 3.10.10. IProperties
- 3.10.11. IConfigurator
- 3.10.12. ResultSpecs
- 3.10.13. Protocols
- 3.10.14. WorkerManager
- 3.10.15. Logs
- 3.10.16. LogObservers
- 3.10.17. Authentication
- 3.10.18. Avatars
- 3.10.19. Web Server Classes
- 4. Release Notes
- 6. API Indices
- Release Notes
- 5.1. Buildbot 2.10.5 ( 2021-04-05 )
- 5.29. Release Notes for Buildbot 1.8.2 ( 2019-05-22 )
- 5.42. Release Notes for Buildbot 0.9.15.post1 ( 2018-01-07 )
- 5.60. Release Notes for Buildbot 0.9.1
- 5.61. Release Notes for Buildbot 0.9.0
- 5.62. Release Notes for Buildbot 0.9.0rc4
- 5.63. Release Notes for Buildbot 0.9.0rc3
- 5.64. Release Notes for Buildbot 0.9.0rc2
- 5.65. Release Notes for Buildbot 0.9.0rc1
- 5.66. Release Notes for Buildbot 0.9.0b9
- 5.67. Release Notes for Buildbot 0.9.0b8
- 5.68. Release Notes for Buildbot 0.9.0b7
- 5.69. Release Notes for Buildbot 0.9.0b6
- 5.70. Release Notes for Buildbot 0.9.0b5
- 5.71. Release Notes for Buildbot 0.9.0b4
- 5.72. Release Notes for Buildbot 0.9.0b3
- 5.73. Release Notes for Buildbot 0.9.0b2
- 5.74. Release Notes for Buildbot 0.9.0b1
- 5.75. Release Notes for Buildbot 0.8.11
- 5.76. Release Notes for Buildbot 0.8.10
- 5.77. Release Notes for Buildbot 0.8.9
- 5.78. Release Notes for Buildbot v0.8.8
- 5.79. Release Notes for Buildbot v0.8.7
- 5.80. Release Notes for Buildbot v0.8.6p1
- Other
4. Release Notes
Caution
Buildbot no longer supports Python 2.7 on the Buildbot master.
4. Release Notes
4.1. Buildbot 3.9.0
( 2023-08-16
)
4.1.1. Bug fixes
Fixed missed invocations of methods decorated with
util.debounce
when debouncer was being stopped under certain conditions. This caused step and build state string updates to be sometimes missed.Improved stale connection handling in
GerritChangeSource
.GerritChangeSource
will instruct the ssh client to send periodic keepalive messages and will reconnect if the server does not reply for 45 seconds (default).GerritChangeSource
now hasssh_server_alive_interval_s
andssh_server_alive_count_max
options to control this behavior.Fixed unnecessary build started under the following conditions: there is an existing Nightly scheduler,
onlyIfChanged
is set to true and there is version upgrade from v3.4.0 (issue #6793).Fixed performance of changes data API queries with custom filters.
Prevent possible event loss during reconfig of reporters (issue #6982).
Fixed exception thrown when worker copies directories in Solaris operating system (issue #6870).
Fixed excessive log messages due to JWT token decoding error (issue #6872).
Fixed excessive log messages when otherwise unsupported
/auth/login
endpoint is accessed when usingRemoteUserAuth
authentication plugin.
4.1.2. Features
Introduce a way to group builders by project. A new
projects
list is added to the configuration dictionary. Builders can be associated to the entries in that list by the newproject
argument.Grouping builders by project allows to significantly clean up the UI in larger Buildbot installations that contain hundreds or thousands of builders for a smaller number of unrelated codebases. This is currently implemented only in experimental React UI.
Added support specifying the project in
GitHubPullrequestPoller
. Previously it was forced to be equal to GitHub’s repository full name.Reporter
BitbucketServerCoreAPIStatusPush
now supportsBuildRequestGenerator
and generates build status for build requests (by default).Buildbot now has
copy-db
script migrate all data stored in the database from one database to another. This may be used to change database engine types. For example a sqlite database may be migrated to Postgres or MySQL when the load and data size grows.Added cron features like last day of month to
Nightly
Scheduler.Buildrequests can now have their priority changed, using the
/buildrequests
API.The force scheduler can now set a build request priority.
Added support for specifying builder descriptions in markdown which is later rendered to HTML for presentation in the web frontend.
Build requests are now sorted according to their buildrequest. Request time is now used as a secondary sort key.
Significantly improved performance of reporters or reporters with slower generators which is important on larger Buildbot installations.
Schedulers can now set a default priority for the buildrequests that it creates. It can either be an integer or a function.
Implement support for shallow submodule update using git.
GerritChangeSource
will now log a small number of previous log lines coming fromssh
process in case of connection failure.
4.1.3. Deprecations and Removals
Deprecated
projectName
andprojectURL
configuration dictionary keys.
4.2. Buildbot 3.8.0
( 2023-04-16
)
4.2.1. Bug fixes
Fixed compatibility issues with Python 3.11.
Fixed compatibility with Autobahn v22.4.1 and newer.
Fixed issue with overriding env when calling ShellMixin.makeRemoteShellCommand
Buildbot will now include the previous location of moved files when evaluating a Github commit. This fixes an issue where a commit that moves a file out of a folder, would not be shown in the web UI for a builder that is tracking that same folder.
Improved reliability of Buildbot log watching to follow log files even after rotation. This improves reliability of Buildbot start and restart scripts.
Fixed handling of occasional errors that happen when attempting to kill a master-side process that has already exited.
Fixed a race condition in PyLint step that may lead to step throwing exceptions.
Fixed compatibility with qemu 6.1 and newer when using LibVirtWorker with
cheap_copy=True
(default).Fixed an issue with secrets provider stripping newline from ssh keys sent in git steps.
Fixed occasional errors that happen when killing processes on Windows. TASKKILL command may return code 255 when process has already exited.
Fixed deleting secrets from worker that contain ‘~’ in their destination path.
4.2.2. Changes
Buildbot now requires NodeJS 14.18 or newer to build the frontend.
The URLs emitted by the Buildbot APIs have been changed to include slash after the hash (
#
) symbol to be compatible with what React web UI supports.
4.2.3. Improved Documentation
Replace statement “https is unsupported” with a more detailed disclaimer.
4.2.4. Features
Add a way to disable default
WarningCountingShellCommand
parser.Added health check API that latent workers can use to specify that a particular worker will not connect and build should not wait for it and mark itself as failure immediately.
Implemented a way to customize TLS setting for
LdapUserInfo
.
4.3. Buildbot 3.7.0
( 2022-12-04
)
4.3.1. Bug fixes
Improved statistics capture to avoid negative build duration.
Improved reliability of “buildbot stop” (issue #3535).
Cancelled builds now have stop reason included into the state string.
Fixed
custom_class
change hook checks to allow hook without a plugin.Added treq response wrapper to fix issue with missing url attribute.
Fixed Buildbot Worker being unable to start on Python 2.7 due to issue in a new version of Automat dependency.
4.3.2. Features
- Expanded
ChangeFilter
filtering capabilities: New
<attribute>_not_eq
parameters to require no match<attribute>_re
now support multiple regexesNew
<attribute>_not_re
parameters to require no match by regexNew
property_<match_type>
parameters to perform filtering on change properties.
- Expanded
Exposed frontend configuration as implementation-defined JSON document that can be queried separately.
Added support for custom branch keys to
OldBuildCanceller
. This is useful in Version Control Systems such as Gerrit that have multiple branch names for the same logical branch that should be tracked by the canceller.p4port
argument of theP4
step has been marked renderable.Added automatic generation of commands for Telegram bot without need to send them manually to BotFather.
4.3.3. Deprecations and Removals
This release includes an experimental web UI written using React framework. The existing web UI is written using AngularJS framework which is no longer maintained. The new web UI can be tested by installing
buildbot-www-react
package and'base_react': {}
key-value to www plugins. Currently no web UI plugins are supported. The existing web UI will be deprecated on subsequent Buildbot released and eventually replaced with the React-based web UI on Buildbot 4.0.
4.4. Buildbot 3.6.1
( 2022-09-22
)
4.4.1. Bug fixes
Fixed handling of last line in logs when Buildbot worker 3.5 and older connects to Buildbot master 3.6 (issue #6632).
Fixed worker
cpdir
command handling when using PB protocol (issue #6539)
4.5. Buildbot 3.6.0
( 2022-08-25
)
4.5.1. Bug fixes
Fixed compatibility with Autobahn 22.4.x.
Fixed a circular import that causes errors in certain cases.
Fixed issue with
DockerLatentWorker
accumulating connections with the docker server (issue #6538).Fixed documentation build for ReadTheDocs: Sphinx and Python have been updated to latest version.
Fixed build pending and canceled status reports to GitLab.
Fixed compatibility of hvac implementation with Vault 1.10.x (issue #6475).
Fixed a race condition in
PyLint
step that may lead to step throwing exceptions.Reporters now always wait for previous report to completing upload before sending another one. This works around a race condition in GitLab build reports ingestion pipeline (issue #6563).
Fixed “retry fetch” and “clobber on failure” git checkout options.
Improved Visual Studio installation path retrieval when using MSBuild and only ‘BuildTools’ are installed.
Fixed search for Visual Studio executables by inspecting both
C:\Program Files
andC:\Program Files (x86)
directories.Fixed Visual Studio based steps causing an exception in
getResultSummary
when being skipped.Fixed issue where workers would immediately retry login on authentication failure.
Fixed sending emails when using Twisted 21.2 or newer (issue #5943)
4.5.2. Features
Implemented support for App password authentication in
BitbucketStatusPush
reporter.Cancelled build requests now generate build reports.
Implemented support for
--no-verify
git option to theGitCommit
step.HTTPClientService
now accepts full URL in its methods. Previously only a relative URL was supported.Callback argument of class
LineBoundaryFinder
is now optional and deprecated.Added
VS2019
,VS2022
,MsBuild15
,MsBuild16
,MsBuild17
steps.Names of transfer related temporary files are now prefixed with
buildbot-transfer-
.buildbot try
now accepts empty diffs and prints a warning instead of rejecting the diff.Implemented note event handling in GitLab www hook.
4.5.3. Deprecations and Removals
Removed support for Python 3.6 from master. Minimal python version for the master is now 3.7. The Python version requirements for the worker don’t change: 2.7 or 3.4 and newer.
buildbot
package now requires Twisted versions >= 18.7.0
4.6. Buildbot 3.5.0
( 2022-03-06
)
4.6.1. Bug fixes
Improved handling of “The container operating system does not match the host operating system” error on Docker on Windows to mark the build as erroneous so that it’s not retried.
Fixed rare
AlreadyCalledError
exceptions in the logs when worker worker connection is lost at the same time it is delivering final outcome of a command.Fixed errors when accessing non-existing build via REST API when an endpoint matching rule with builder filter was present.
Fixed an error in
CMake
passing options and definitions on the cmake command line.Fixed an error when handling command management errors on the worker side (regression since v3.0.0).
Fixed updating build step summary with mock state changes for MockBuildSRPM and MockRebuild.
Fixed support for optional
builder
parameter used in RebuildBuildEndpointMatcher (issue #6307).Fixed error that caused builds to become stuck in building state until next master restart if builds that were in the process of being interrupted lost connection to the worker.
Fixed Gerrit change sources to emit changes with proper branch name instead of one containing
refs/heads/
as the prefix.Fixed handling of
build_wait_timeout
on latent workers which previously could result in latent worker being shut down while a build is running in certain scenarios (issue #5988).Fixed problem on MySQL when using master names or builder tags that differ only by case.
Fixed timed schedulers not scheduling builds the first time they are enabled with
onlyIfChanged=True
when there are no important changes. In such case the state of the code is not known, so a build must be run to establish the baseline.Switched Bitbucket OAuth client from the deprecated ‘teams’ APIs to the new ‘workspaces’ APIs
Fixed errors when killing a process on a worker fails due to any reason (e.g. permission error or process being already exited) (issue #6140).
Fixed updates to page title in the web UI. Web UI now shows the configured buildbot title within the page title.
4.6.2. Improved Documentation
Fixed brackets in section 2.4.2.4 - How to populate secrets in a build (issue #6417).
4.6.3. Features
The use of Renderables when constructing payload For JSONStringDownload is now allowed.
Added
alwaysPull
support when usingdockerfile
parameter ofDockerLatentWorker
.Base Debian image has been upgraded to Debian Bullseye for the Buildbot master.
Added rendering support to
docker_host
andhostconfig
parameters ofDockerLatentWorker
.MailNotifier
reporter now sends HTML messages by default.MessageFormatter
will now use a default subject value if one is not specified.The default templates used in message formatters have been improved to supply more information. Separate default templates for html messages have been provided.
Added
buildbot_title
,result_names
andis_buildset
keys to the data passed toMessageFormatter
instances for message rendering.Added
target
support when usingdockerfile
parameter ofDockerLatentWorker
.Simplified
prioritizeBuilders
default function to make an example easier to customize.Buildbot now exposes its internal framework for writing tests of custom build steps. Currently the API is experimental and subject to change.
Implemented detection of too long step and builder property names to produce errors at config time if possible.
4.6.4. Deprecations and Removals
Deprecated
subject
argument ofBuildStatusGenerator
andBuildSetStatusGenerator
status generators. Usesubject
argument of corresponding message formatters.
4.7. Buildbot 3.4.1
( 2022-02-09
)
4.7.1. Bug fixes
Updated Bitbucket API URL for
BitbucketPullrequestPoller
.Fixed a crash in
BitbucketPullrequestPoller
(issue #4153)Fixed installation of master and worker as Windows service from wheel package (regression since 3.4.0) (issue #6294)
Fixed occasional exceptions when using Visual Studio steps (issue #5698).
Fixed rare “Did you maybe forget to yield the method” errors coming from the log subsystem.
4.8. Buildbot 3.4.0
( 2021-10-15
)
4.8.1. Bug fixes
Database migrations are now handled using Alembic (1.6.0 or newer is required) (issue #5872).
AMI for latent worker is now set before making spot request to enable dynamically setting AMIs for instantiating workers.
Fixed
GitPoller
fetch commands timing out on huge repositoriesFixed a bug that caused Gerrit review comments sometimes not to be reported.
Fixed a critical bug in the
MsBuild141
step (regression since Buildbot v2.8.0) (issue #6262).Implemented renderable support in secrets list of
RemoveWorkerFileSecret
.Fixed issues that prevented Buildbot from being used in Setuptools 58 and newer due to dependencies failing to build (issue #6222).
4.8.2. Improved Documentation
Fixed help text for
buildbot create-master
so it states that--db
option is passed verbatim tomaster.cfg.sample
instead ofbuildbot.tac
.Added documentation of properties available in the formatting context that is presented to message formatters.
4.8.3. Features
MsBuild steps now handle correctly rebuilding or cleaning a specific project. Previously it could only be done on the entire solution.
Implemented support for controlling
filter
option ofgit clone
.Optimized build property filtering in the database instead of in Python code.
Implemented support of
SASL PLAIN
authentication toIRC
reporter.The
want_logs
(previouslywantLogs
) argument to message formatters will now implywantSteps
if selected.Added information about log URLs to message formatter context.
Implemented a way to ask for only logs metadata (excluding content) in message formatters via
want_logs
andwant_logs_content
arguments.Implemented support for specifying pre-processor defines sent to the compiler in the
MsBuild
steps.Introduced
HvacKvSecretProvider
to allow working around flaws inHashiCorpVaultSecretProvider
(issue #5903).Implemented support for proxying worker connection through a HTTP proxy.
4.8.4. Deprecations and Removals
The
wantLogs
argument of message formatters has been deprecated. Please replace any uses with bothwant_logs
andwant_logs_content
set to the same value.The
wantProperties
andwantSteps
arguments of message formatters have been renamed towant_properties
andwant_steps
respectively.Buildbot now requires SQLAlchemy 1.3.0 or newer.
4.9. Buildbot 3.3.0
( 2021-07-31
)
4.9.1. Bug fixes
Fixed support of SQLAlchemy v1.4 (issue #5992).
Improved default build request collapsing functionality to take into account properties set by the scheduler and not collapse build requests if they differ (issue #4686).
Fixed a race condition that would result in attempts to complete unclaimed buildrequests (issue #3762).
Fixed a race condition in default buildrequest collapse function which resulted in two concurrently submitted build requests potentially being able to cancel each other (issue #4642).
The
comment-added
event on Gerrit now produces the same branch as other events such aspatchset-created
.GerritChangeSource
andGerritEventLogPoller
will now produce change events withbranch
attribute that corresponds to the actual git branch on the repository.Fixed handling of
GitPoller
state to not grow without bounds and eventually exceed the database field size. (issue #6100)Old browser warning banner is no longer shown for browsers that could not be identified (issue #5237).
Fixed worker lock handling that caused max lock count to be ignored (issue #6132).
4.9.2. Features
Buildbot can now be configured (via
FailingBuildsetCanceller
) to cancel unfinished builds when a build in a buildset fails.GitHubEventHandler
can now configure authentication token via Secrets management for GitHub instances that do not allow anonymous accessBuildbot can now be configured (via
OldBuildCanceller
) to cancel unfinished builds when branches on which they are running receive new commits.Buildbot secret management can now be used to configure worker passwords.
Services can now be forced to reload their code via new
canReconfigWithSibling
API.
4.9.3. Deprecations and Removals
changes.base.PollingChangeSource
has been fully deprecated as internal uses of it were migrated to replacement APIs.
4.10. Buildbot 3.2.0
( 2021-06-17
)
4.10.1. Bug fixes
Fixed occasional
InvalidSpotInstanceRequestID.NotFound
errors when using spot instances on EC2. This could have lead to Buildbot launching zombie instances and not shutting them down.Improved
GitPoller
behavior during reconfiguration to exit at earliest possible opportunity and thus reduce the delay that runningGitPoller
incurs for the reconfiguration.The docker container for the master now fully builds the www packages. Previously they were downloaded from pypi which resulted in downloading whatever version was newest at the time (issue #4998).
Implemented time out for master-side utility processes (e.g.
git
orhg
) which could break the respective version control poller potentially indefinitely upon hanging.Fixed a regression in the
reconfig
script which would time out instead of printing error when configuration update was not successfully applied.Improved buildbot restart behavior to restore the worker paused state (issue #6074)
Fixed support for binary patch files in try client (issue #5933)
Improved handling of unsubscription errors in WAMP which will no longer crash the unsubscribing component and instead just log an error.
Fixed a crash when a worker is disconnected from a running build that uses worker information for some of its properties (issue #5745).
4.10.2. Improved Documentation
Added documentation about installation Buildbot worker as Windows service.
4.10.3. Features
DebPbuilder
now supports the--othermirror
flag for including additional repositoriesImplemented support for setting docker container’s hostname
The libvirt latent worker will now wait for the VM to come online instead of disabling the worker during connection establishment process. The VM management connections are now pooled by URI.
Buildbot now sends metadata required to establish connection back to master to libvirt worker VMs.
LibVirtWorker
will now setup libvirt metadata with details needed by the worker to connect back to master.The docker container for the master has been switched to Debian. Additionally, buildbot is installed into a virtualenv there to reduce chances of conflicts with Python packages installed via
dpkg
.BitbucketStatusPush now has renderable build status key, name, and description.
Pausing a worker is a manual operation which the quarantine timer was overwriting. Worker paused state and quarantine state are now independent. (issue #5611)
Reduce buildbot_worker wheel package size by 40% by dropping tests from package.
4.10.4. Deprecations and Removals
The connection argument of the LibVirtWorker constructor has been deprecated along with the related Connection class. Use uri as replacement.
The
*NewStyle
build step aliases have been removed. Please use equivalent steps without theNewStyle
suffix in the name.Try client no longer supports protocol used by Buildbot older than v0.9.
4.11. Buildbot 3.1.1
( 2021-04-28
)
4.11.1. Bug fixes
Fix missing VERSION file in buildbot_worker wheel package (issue #5948, issue #4464).
Fixed error when attempting to specify
ws_ping_interval
configuration option (issue #5991).
4.12. Buildbot 3.1.0
( 2021-04-05
)
4.12.1. Bug fixes
Fixed usage of invalid characters in temporary file names by git-related steps (issue #5949)
Fixed parsing of URLs of the form https://api.bitbucket.org/2.0/repositories/OWNER/REPONAME in BitbucketStatusPush. These URLs are in the sourcestamps returned by the Bitbucket Cloud hook.
Brought back the old (pre v2.9.0) behavior of the
FileDownload
step to act more gracefully by returningFAILURE
instead of raising an exception when the file doesn’t exist on master. This makes use cases such asFileDownload(haltOnFailure=False)
possible again.Fixed issue with
getNewestCompleteTime
which was returning no completed builds, although it could.Fixed the
Git
source step causing last active branch to point to wrong commits. This only affected the branch state in the local repository, the checked out code was correct.Improved cleanup of any containers left running by
OpenstackLatentWorker
.Improved consistency of log messages produced by the reconfig script. Note that this output is not part of public API of Buildbot and may change at any time.
Improved error message when try client cannot create a build due to builder being not configured on master side.
Fixed exception when submitting builds via try jobdir client when the branch was not explicitly specified.
Fixed handling of secrets in nested folders by the vault provider.
4.12.2. Features
Implemented report generator for new build requests
Allow usage of Basic authentication to access GitHub API when looking for avatars
Added support for default Pylint message that was changed in v2.0.
Implemented support for configurable timeout in the reconfig script via new
progress_timeout
command-line parameter which determines how long it waits between subsequent progress updates in the logs before declaring a timeout.Implemented
GitDiffInfo
step that would extract information about what code has been changed in a pull/merge request.Add support
--submodule
option for therepo init
command of the Repo source step.
4.12.3. Deprecations and Removals
MessageFormatter
will receive the actual builder name instead ofwhole buildset
when used fromBuildSetStatusGenerator
.
4.13. Buildbot 3.0.3
( 2021-04-05
)
4.13.1. Bug fixes
Fixed a race condition in log handling of
RpmLint
andWarningCountingShellCommand
steps resulting in steps crashing occasionally.Fixed incorrect state string of a finished buildstep being sent via message queue (issue #5906).
Reduced flickering of build summary tooltip during mouseover of build numbers (issue #5930).
Fixed missing data in Owners and Worker columns in changes and workers pages (issue #5888, issue #5887).
Fixed excessive debug logging in
GerritEventLogPoller
.Fixed regression in pending buildrequests UI where owner is not displayed anymore (issue #5940).
Re-added support for
lazylogfiles
argument ofShellCommand
that was available in old style steps.
4.14. Buildbot 3.0.2
( 2021-03-16
)
4.14.1. Bug fixes
Updated Buildbot requirements to specify sqlalchemy 1.4 and newer as not supported yet.
4.15. Buildbot 3.0.1
( 2021-03-14
)
4.15.1. Bug fixes
Fixed special character handling in avatar email URLs.
Fixed errors when an email address matches GitHub commits but the user is unknown to it.
Added missing report generators to the Buildbot plugin database (issue #5892)
Fixed non-default mode support for
BuildSetStatusGenerator
.
4.16. Buildbot 3.0.0
( 2021-03-08
)
This release includes all changes up to Buildbot 2.10.2
.
4.16.1. Bug fixes
Avatar caching is now working properly and size argument is now handled correctly.
Removed display of hidden steps in the build summary tooltip.
GitHubPullrequestPoller
now supports secrets in itstoken
argument (issue #4921)Plugin database will no longer issue warnings on load, but only when a particular entry is accessed.
SSH connections are now run with
-o BatchMode=yes
to prevent interactive prompts which may tie up a step, reporter or change source until it times out.
4.16.2. Features
BitbucketPullrequestPoller
,BitbucketCloudEventHandler
,BitbucketServerEventHandler
were enhanced to save PR entries matching provided masks as build properties.BitbucketPullrequestPoller
has been enhanced to optionally authorize Bitbucket API.Added pullrequesturl property to the following pollers and change hooks:
BitbucketPullrequestPoller
,GitHubPullrequestPoller
,GitHubEventHandler
. This unifies all Bitbucket and GitHub pollers with the shared property interface.AvatarGitHub class has been enhanced to handle avatar based on email requests and take size argument into account
Added support for Fossil user objects for use by the buildbot-fossil plugin.
A new
www.ws_ping_interval
configuration option was added to avoid websocket timeouts when using reverse proxies and CDNs (issue #4078)
4.16.3. Deprecations and Removals
Removed deprecated
encoding
argument toBitbucketPullrequestPoller
.Removed deprecated support for constructing build steps from class and arguments in
BuildFactory.addStep()
.Removed support for deprecated
db_poll_interval
configuration setting.Removed support for deprecated
logHorizon
,eventHorizon
andbuildHorizon
configuration settings.Removed support for deprecated
nextWorker
function signature that accepts two parameters instead of three.Removed deprecated
status
configuration setting.LoggingBuildStep
has been removed.GET
,PUT
,POST
,DELETE
,HEAD
,OPTIONS
steps now use new-style step implementation.MasterShellCommand
step now uses new-style step implementation.Configure
,Compile
,ShellCommand
,SetPropertyFromCommand
,WarningCountingShellCommand
,Test
steps now use new-style step implementation.Removed support for old-style steps.
Python 3.5 is no longer supported for running Buildbot master.
The deprecated
HipChatStatusPush
reporter has been removed.Removed support for the following deprecated parameters of
HttpStatusPush
reporter:format_fn
,builders
,wantProperties
,wantSteps
,wantPreviousBuild
,wantLogs
,user
,password
.Removed support for the following deprecated parameters of
BitbucketStatusPush
reporter:builders
,wantProperties
,wantSteps
,wantPreviousBuild
,wantLogs
.Removed support for the following deprecated parameters of
BitbucketServerStatusPush
,BitbucketServerCoreAPIStatusPush
,GerritVerifyStatusPush
,GitHubStatusPush
,GitHubCommentPush
andGitLabStatusPush
reporters:startDescription
,endDescription
,builders
,wantProperties
,wantSteps
,wantPreviousBuild
,wantLogs
.Removed support for the following deprecated parameters of
BitbucketServerPRCommentPush
,MailNotifier
,PushjetNotifier
andPushoverNotifier
reporters:subject
,mode
,builders
,tags
,schedulers
,branches
,buildSetSummary
,messageFormatter
,watchedWorkers
,messageFormatterMissingWorker
.Removed support for the following deprecated parameters of
MessageFormatter
report formatter:template_name
.The deprecated
send()
function that can be overridden by custom reporters has been removed.Removed deprecated support for
template_filename
,template_dir
andsubject_filename
configuration parameters of message formatters.The deprecated
buildbot.status
module has been removed.The deprecated
MTR
step has been removed. Contributors are welcome to step in, migrate this step to newer APIs and add a proper test suite to restore this step in Buildbot.Removed deprecated
buildbot.test.fake.httpclientservice.HttpClientService.getFakeService()
function.Removed deprecated support for
block_device_map
argument of EC2LatentWorker being not a list.Removed support for deprecated builder categories which have been replaced by tags.
5. Older Release Notes
- 5.1. Buildbot
2.10.5
(2021-04-05
) - 5.2. Buildbot
2.10.4
(2021-03-16
) - 5.3. Buildbot
2.10.3
(2021-03-14
) - 5.4. Buildbot
2.10.2
(2021-03-07
) - 5.5. Buildbot
2.10.1
(2021-01-29
) - 5.6. Buildbot
2.10.0
(2021-01-02
) - 5.7. Buildbot
2.9.4
(2020-12-26
) - 5.8. Buildbot
2.9.3
(2020-12-15
) - 5.9. Buildbot
2.9.2
(2020-12-08
) - 5.10. Buildbot
2.9.1
(2020-12-05
) - 5.11. Buildbot
2.9.0
(2020-12-04
) - 5.12. Buildbot
2.8.4
(2020-08-29
) - 5.13. Buildbot
2.8.3
(2020-08-22
) - 5.14. Buildbot
2.8.2
(2020-06-14
) - 5.15. Buildbot
2.8.1
(2020-06-06
) - 5.16. Buildbot
2.8.0
(2020-05-27
) - 5.17. Buildbot
2.7.0
(2020-02-27
) - 5.18. Buildbot
2.6.0
(2020-01-21
) - 5.19. Buildbot
2.5.1
(2019-11-24
) - 5.20. Buildbot
2.5.0
(2019-10-17
) - 5.21. Buildbot
2.4.1
(2019-09-11
) - 5.22. Buildbot
2.4.0
(2019-08-18
) - 5.23. Buildbot
2.3.1
(2019-05-22
) - 5.24. Buildbot
2.3.0
(2019-05-06
) - 5.25. Buildbot
2.2.0
(2019-04-07
) - 5.26. Buildbot
2.1.0
(2019-03-09
) - 5.27. Buildbot
2.0.1
(2019-02-06
) - 5.28. Buildbot
2.0.0
(2019-02-02
) - 5.29. Release Notes for Buildbot
1.8.2
(2019-05-22
) - 5.30. Release Notes for Buildbot
1.8.1
(2019-02-02
) - 5.31. Release Notes for Buildbot
1.8.0
(2019-01-20
) - 5.32. Release Notes for Buildbot
1.7.0
(2018-12-21
) - 5.33. Release Notes for Buildbot
1.6.0
(2018-11-16
) - 5.34. Release Notes for Buildbot
1.5.0
(2018-10-09
) - 5.35. Release Notes for Buildbot
1.4.0
(2018-09-02
) - 5.36. Release Notes for Buildbot
1.3.0
(2018-07-13
) - 5.37. Release Notes for Buildbot
1.2.0
(2018-06-10
) - 5.38. Release Notes for Buildbot
1.1.2
(2018-05-15
) - 5.39. Release Notes for Buildbot
1.1.1
(2018-04-06
) - 5.40. Release Notes for Buildbot
1.1.0
(2018-03-10
) - 5.41. Release Notes for Buildbot
1.0.0
(2018-02-11
) - 5.42. Release Notes for Buildbot
0.9.15.post1
(2018-01-07
) - 5.43. Release Notes for Buildbot
0.9.15
(2018-01-02
) - 5.44. Release Notes for Buildbot
0.9.14
(2017-12-08
) - 5.45. Release Notes for Buildbot
0.9.13
(2017-11-07
) - 5.46. Release Notes for Buildbot
0.9.12.post1
(2017-10-10
) - 5.47. Release Notes for Buildbot
0.9.12
(2017-10-05
) - 5.48. Release Notes for Buildbot
0.9.11
(2017-09-08
) - 5.49. Release Notes for Buildbot
0.9.10
(2017-08-03
) - 5.50. Release Notes for Buildbot
0.9.9.post2
(2017-07-06
) - 5.51. Release Notes for Buildbot
0.9.9.post1
(2017-07-01
) - 5.52. Release Notes for Buildbot
0.9.9
(2017-06-29
) - 5.53. Release Notes for Buildbot
0.9.8
(2017-06-14
) - 5.54. Release Notes for Buildbot
0.9.7
(2017-05-09
) - 5.55. Release Notes for Buildbot
0.9.6
(2017-04-19
) - 5.56. Release Notes for Buildbot
0.9.5
(2017-03-18
) - 5.57. Release Notes for Buildbot
0.9.4
(2017-02-08
) - 5.58. Release Notes for Buildbot
0.9.3
(2017-01-11
) - 5.59. Release Notes for Buildbot
0.9.2
(2016-12-13
) - 5.60. Release Notes for Buildbot
0.9.1
- 5.61. Release Notes for Buildbot
0.9.0
- 5.62. Release Notes for Buildbot
0.9.0rc4
- 5.63. Release Notes for Buildbot
0.9.0rc3
- 5.64. Release Notes for Buildbot
0.9.0rc2
- 5.65. Release Notes for Buildbot
0.9.0rc1
- 5.66. Release Notes for Buildbot 0.9.0b9
- 5.67. Release Notes for Buildbot 0.9.0b8
- 5.68. Release Notes for Buildbot 0.9.0b7
- 5.69. Release Notes for Buildbot 0.9.0b6
- 5.70. Release Notes for Buildbot 0.9.0b5
- 5.71. Release Notes for Buildbot 0.9.0b4
- 5.72. Release Notes for Buildbot 0.9.0b3
- 5.73. Release Notes for Buildbot 0.9.0b2
- 5.74. Release Notes for Buildbot 0.9.0b1
- 5.75. Release Notes for Buildbot 0.8.11
- 5.76. Release Notes for Buildbot 0.8.10
- 5.77. Release Notes for Buildbot 0.8.9
- 5.78. Release Notes for Buildbot v0.8.8
- 5.79. Release Notes for Buildbot v0.8.7
- 5.80. Release Notes for Buildbot v0.8.6p1
Note that Buildbot-0.8.11 was never released.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论