thunderbird / thunderbird/thunderbird-android
Add merge automation workflow
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
We currently have a merge script at scripts/ci/merges/do_merge.py. It should be getting to a point where it doesn't need to be run manually. We need to add some more merge driver support first. Once we're at that point, let's create a github workflow that can be manually triggered to run the merge.
Additional things the merge workflow should do (mostly taken from docs/release/RELEASE.md merge steps):
main->beta
- Send a message to the #tb-mobile-dev:mozilla.org matrix channel to let them know the merge is starting
- Run merge
- Open a new milestone for the new version and close the oldest milestone (there should always be 3 open milestones - automation that adds tasks to milestones depends on this) - this needs to be done before version bump in main
- Submit a pull request with the merge results. We still need a human to look at the results.
- Submit a pull request that increments the version in main
beta->release
- Same as above but no changes to milestones and no pull request to increment version
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with scripts/ci/merges/do_merge.py and the merge steps in docs/release/RELEASE.md, then inspect the existing GitHub workflow conventions. The workflow should be manually triggerable, support main-to-beta and beta-to-release merges, notify the Matrix channel, handle the specified milestone changes, and open the required pull requests for human review.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, python
- Domain
- ci-cd, devops, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100