GitHub Pull Request Auto-Merge Bot
Bulldozer now exposes Prometheus-style metrics at the /api/metrics
path. Users can add labels or adjust summary quantiles using the server configuration file. Bulldozer continues to supports DogStatsD metrics, which are now described in the configuration example.
Full Changelog: https://github.com/palantir/bulldozer/compare/v1.18.0...v1.19.0
🎉 Contributed by @justinwyer
Full Changelog: https://github.com/palantir/bulldozer/compare/v1.17.0...v1.18.0
All settings in the options
block in the configuration file can now also be set by environment variables. See the example server configuration and the README for the variable names.
⚠️ Note that the BULLDOZER_PUSH_RESTRICTION_USER_TOKEN
variable was renamed to BULLDOZER_OPTIONS_PUSH_RESTRICTION_USER_TOKEN
. Please update your deployment configuration if you set the old value.
Contributed by @DepickereSven.
Full Changelog: https://github.com/palantir/bulldozer/compare/v1.16.0...v1.17.0
To reduce pressure on CI systems and Github, the update feature can be disabled at the
server level by specifying the following server option disable_update_feature
.
Adds a new trigger type auto_merge
for use in configuration. Thanks to @heuels! 🥳
Currently only the push
and pull_request events
have debug logging when a webhook is received. This is helpful for determining the trigger for bulldozer evaluation when those events occur. This PR includes similar logging for status
, issue_comment
, and pull_reuqest_review
events.
Automatically updates the version of Go being used.
Catches unprotected branch errors from Github API.
Can now specify required statuses where Bulldozer will not update the PR until all of the required statuses are completed successfully.
Removes unnecessary error logging when attempting to delete a branch post-merge once Github has already done it.
Full Changelog: https://github.com/palantir/bulldozer/compare/v1.15.0...v1.16.0
Bulldozer can now determine the appropriate merge method using the same configuration options used for triggering merges. This makes it possible to configure merge methods for different types of pull requests. Additionally, a "max commits" option criteria is added to select merge methods when a PR has fewer than a specified number of commits. Resolves #266.
Previously, Bulldozer fetched the same configuration file for every PR that might be updated. This was a lot of redundant requests, especially if the repository uses remote configuration. This change reduces the number of requests observed in #276.
Full Changelog: https://github.com/palantir/bulldozer/compare/v1.14.0...v1.15.0
Bulldozer can now load configuration from remote files or from an organization-level default repository. This makes it easier to manage configuration across multiple repositories or organizations. Please see the README for more details.
Due to changes in APIs used, Bulldozer no longer supports GitHub Enterprise Server 2.x and now requires version 3.0.0 or later.
Pull requests that match trigger conditions for updates are now updated when they are opened or when labels are added. Previously, pull requests only updated if the target branch changed after the pull request was opened.
BULLDOZER_ENV_PREFIX
variable (#229)Bulldozer now accepts skipped
and neutral
checks as valid conclusions for required statuses, matching GitHub's behavior. This applies both for required statuses set by branch protection and required statuses set in the Bulldozer configuration file.
palantir/go-baseapp
to 0.2.3 (#228)