Permalink
Browse files

Add support for bors-ng github bot

Enforce the "not rocket science" rule.

bors modifies the usual github CI workflow in a subtle but important
way:

With regular github, the CI test (eg: travis-ci) needs to pass before
the Merge button goes green - but the PR might be against a stale
version of master, and the test *does not have to pass against
master+PR*.  There is a github option to enforce this too, but it puts
the work on the user and requires them to rebase against HEAD before
the merge button will go green.

After the PR has been "approved" (*), bors rebases the PR and runs the
CI bot (travis) *again* against master+PR, and only merges if that
passes.  Iow, "approve-for-merge" is separated from "actually-merge".

Subtle, but important :P

See https://graydon.livejournal.com/186550.html for the blog version
of the above.

(*) bors approval is indicated with a `bors r+` github comment.  See
https://bors.tech/documentation/ for other bot commands.
  • Loading branch information...
anguslees committed May 9, 2018
1 parent c643314 commit b5ffb75684d83e3faf578403327eb395e0f140b4
Showing with 13 additions and 0 deletions.
  1. +3 −0 .travis.yml
  2. +10 −0 bors.toml
@@ -146,6 +146,9 @@ branches:
- master
# release tags
- /^v\d+\.\d+\.\d+.*/
# for bors (in particular: don't build "staging.tmp")
- staging
- trying
notifications:
email:
@@ -0,0 +1,10 @@
status = [
"continuous-integration/travis-ci/push"
]
pr_status = [
"continuous-integration/travis-ci/pr"
]
required_approvals = 1
delete_merged_branches = true

0 comments on commit b5ffb75

Please sign in to comment.