parse-dashboard
parse-dashboard copied to clipboard
♻️ Release Automation
New Feature / Enhancement Checklist
- [x] I am not disclosing a vulnerability.
- [x] I am not just asking a question.
- [x] I have searched through existing issues.
Current Limitation
see https://github.com/parse-community/parse-server/issues/7271
Feature / Enhancement Description
This PR adds release automation to Parse Dashboard.
Roadmap
Phase 1 (add release automation):
- [x] Add release automation for
masterbranch - [x] Only allow "squash & merge" for all branches
- [x] Add docker release job for automated release
- [x] Add docker release job for manual release
- [x] Remove changelog CI check from code and repo settings
- [x] Remove changelog TODO from PR template
- [x] Adapt GH issue labels
Phase 2 (change branch model):
- [x] Rename default branch to
alpha - [x] Add
release,betabranches - [x] Adapt release automation to new branch model
- [x] Adapt docker release jobs to get triggered on
alpha/betacommits - [x] Inform contributors that PRs needs to be opened against
alphabranch- [x] Add pinned issue
- [x] Add to Parse GitHub assistant --> only allows PRs against default branch
- [x] Add to contribution docs
- [x] Adapt synk to watch
alphaandreleasebranches (notbetabranch) only for security fix PR, not for regular dependency upgrade PRs
Phase 3 (monitor workflows):
- [x] Execute one full
alpha->beta->releasemerge workflow (contribution) to ensure it works - [x] Execute one full
release->alpha->betamerge workflow (hotfix) to ensure it works - [ ] Find and document a working mode for PRs opened by Snyk on
alphaandreleasebranches - [x] Monitor contributor feedback
- [x] Monitor merge workflows
Phase 4 (long-term support):
- [ ] Add LTS branch
release-NwhereNis the major version based onreleasebranch - [ ] Add LTS branch to snyk to monitor
Release Flow
alpha
- release time: spontaneous
- merge:
- contributor pull request into
alpha
- contributor pull request into
beta
- release time: monthly; this gives the beta release 1 month to mature
- merge:
alphaintobetaonce at the beginning of a monthalphaintobetaonly fixes during the month (feature freeze)
release
- release time: monthly; gives the beta release 1 month to mature
- merge:
betaintoreleaseonce at the beginning of a month- urgent security hotfixes into
releaseduring a month (have to be back-ported toalpha) A
Thanks for opening this issue!
- ❌ Please edit your post and use the provided template when creating a new issue. This helps everyone to understand your post better and asks for essential information to quicker review the issue.
Auto-release is implemented and being used for some time, so closing.