Release Process
Introduction
The release process involves creating a release branch, merging it to main, and triggering the CI/CD pipeline to publish the app to Google Play Console. For general guidelines on working with branches, review Git flow.
We usually use Semantic Versioning (x.x.x
)
Release Flow Diagram
Release Flow
-
Create a release branch:
- Branch name format:
release/<version>
- Create from:
develop
branch - Merge any release-specific fixes to this branch
- Branch name format:
-
Create a Pull Request:
- From:
release/<version>
- To:
main
- PR name format:
Release <version>
- From:
-
Wait for:
- PR approval
- CI checks
-
After merge to
main
, create a new GitHub release:- Tag name format:
<version>
- Generate release notes
- Tag name format:
-
Wait for CI to build the release
-
Verify the release build in:
- Firebase Console
- Google Play Console
-
Publish to test channels (depending on project needs):
- Internal testing (default)
- Closed testing (optional)
- Open testing (optional)
-
Notify the client about the test release
-
After client approval, publish to production