Development process
How do we take ideas through to deployed code.
Managing issues in github projects
We have two github projects for managing our issues:
- Roadmap - used to plan when epics will be worked on
- Hub development - used for all issues that the dev team works on
Process flow
Github status reference
| Status | Set when | Set by |
|---|---|---|
| Ready | Issue added to sprint (sprint label added), or QA sends it back | Product |
| In Progress | Developer starts work and creates a feature branch from dev | Developer |
| Review | Developer opens a PR | Developer |
| Dev TBT | PR is merged into dev; release milestone added to the issue | Developer |
| Dev QA Passed | QA passes the issue on dev | QA |
| Staging TBT | The cut is taken and dev is merged into staging | QA |
| Staging QA Passed | QA passes the issue on staging (2nd round) | QA |
| Done | Feature and regression testing complete; staging merged into main | Automatic |
Dependencies
If a change is made to a non-Hub repo which needs to be released at the same time as the Hub release:
- Once the PR is merged into
devin the non-hub repo, create acutPR for merging it intostaging. - Add a link to that PR on the
cutPR in the Hub repo (create thecutPR first if it doesn't exist yet). Add it as a tick box list so that it can be ticked when it's merged. - When the cut of the hub repo is taken, a
releasePR will be created for merging the change in the other repo intomain. Add a link to that PR on thereleasePR in the Hub repo.