docs: modernize BrewTestBot info for maintainers

Signed-off-by: Patrick Linnane <patrick@linnane.io>

Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
Patrick Linnane 2024-02-09 23:25:46 -06:00
parent a783aaf03f
commit bf050bcd6f
No known key found for this signature in database

View File

@ -1,23 +1,26 @@
# BrewTestBot for Maintainers
If a build has run and passed on `brew test-bot` then it can be used to quickly bottle formulae.
`brew test-bot` is the command our CI runs to test and build bottles for formulae.
## Bottling
## Publishing Bottles
If a pull request is correct and doesn't need any modifications to commit messages or otherwise:
If CI is passing on a pull request and it doesn't need any modifications (e.g. commit message, revision bump, etc.):
1. Review and approve the pull request. Be sure to thank the contributor!
2. Wait for BrewTestBot to automatically merge the pull request. This happens about once an hour. BrewTestBot will comment if there is a failure.
2. Wait for BrewTestBot to automatically merge the pull request. This job usually starts within a minute if both of the following are true:
- The pull request is approved by a maintainer who has write access to homebrew-core.
- CI is passing.
If a pull request won't be automatically merged by Brew Test Bot (has the labels `do not merge`, `new formula`, or `automerge-skip`), but the [commit messages and commit style](Formula-Cookbook.md#commit) are correct:
If any jobs did not complete successfully, the pull request will not automatically merge. Additionally, BrewTestBot will comment on the pull request if there is a publishing failure.
1. Ensure the job has already completed successfully.
If a pull request won't be automatically merged by BrewTestBot (has the labels `autosquash`, `automerge-skip`, or`new formula`, or has some kind of acceptable CI failure):
1. Ensure that bottles have built successfully.
2. Run `brew pr-publish 12345` where `12345` is the pull request number (or URL).
- Approving a PR for an existing formula will automatically publish the bottles and close the PR, taking care of this step.
3. Watch the [actions queue](https://github.com/Homebrew/homebrew-core/actions) to ensure your job finishes. BrewTestBot will usually notify you of failures with a ping as well.
3. Watch the [actions queue](https://github.com/Homebrew/homebrew-core/actions) to ensure your job finishes. BrewTestBot will notify you of failures with a ping as well.
If a pull request needs its commit messages changed in a way that autosquash doesn't support (has the label `automerge-skip`):
1. Ensure the job has already completed successfully.
1. Ensure that bottles have built successfully.
2. Run `brew pr-pull 12345` where `12345` is the pull request number (or URL).
3. Amend any relevant commits if needed, then run `git push` to push the commits.
3. Amend any relevant commits if needed, then run `git push` to push the commits to the pull request.