This repo is soft-pinned to PCB release. It means that ALL minor releases will take the dashboards from the same release branch. E.g. v1.17.0/v1.17.1/v1.17.2 will take the dashboards from v1.17-release-branch. So to have some safety and QA review before pushing changes to prod we have the following workflow:
To do any changes only in current release:
- Create new feature branch from current dev branch (like v1.17-dev-branch)
- Push your changes to feature branch
- Create MR from your feature branch to current dev branch
- Get your MR merged (this needs dev approval)
- Create MR from dev branch to release branch
- Get your changes reviewed and tested by QA
- Get your MR from dev to release branch merged (this needs QA approval)
- Done. Your changes will be delivered to all current-release environments during their next full sync
To do any changes in many releases ( currently unavailable since 1.17 is a first release where this repo separated):
- Check that monitoring have needed metrics in all releases where you want to push that changes
- Create new feature branch from needed release dev branch
- Push your changes to feature branch
- Create MR from your feature branch to needed release dev branch
- Get your MR merged (this needs dev approval)
- Ask someone from maintainers to merge your changes to newer dev branches
- Create MR from dev branch to release branch
- Get your changes reviewed and tested by QA on dev branches
- Get your MR from dev to release branch merged (this needs QA approval)
- Ask someone from maintainers to merge your changes to newer releases
- Done. Your changes will be delivered to all environments starting from selected release during their next full sync