Deployment Workflow
1) Prepare a Pull Request (PR)
- Create a feature branch from default branch (master or main)
- Implement the required changes (code, configuration, or content)
- Open a Pull Request into default branch
- CI pipelines run automated checks (linting, tests, build, security)
- Address review comments and ensure all checks pass
2) Merge to default branch → deploy to Staging
- Merge the approved PR into the default branch
- A GitHub Actions workflow is triggered automatically on push to default branch
- The workflow builds the application and deploys it to the staging environment
- Perform functional testing, QA, smoke tests, and stakeholder validation on staging
3) Publish a GitHub Release → deploy to Production
- After successful validation on staging, open the prepared GitHub Release draft
- Review and finalize the version number and release notes
- Click Publish Release
- Publishing the release triggers the production deployment workflow
- The workflow builds the release artifact and deploys it to the production environment
Key principle
- Merging to default branch triggers deployment to staging
- Publishing a GitHub Release triggers deployment to production