In this document, emojis are used to better understand the process
- π· = manual task
- π€ = automated task
- π = waiting times / dependencies
Workload summary
In total, is required for a release
- 43 π· manual tasks
- 2 π€ automated tasks
- 9 π waiting times / dependencies
Each release requires about one week of work for one person.
General workflow
A Git branch v1.xx must be created for each new release. Tickets are merged into this branch as we get along.
When the product manager decides that a new version should be released, it is then necessary to:
- merge the release branch into
master - release on the
testingenvironment - prepare the tickets for the
stagingandproductiondeployments - release on the
stagingenvironment - wait for validation
- release on the
productionenvironment
A new release must be anticipated because the process of pushing to production is long (~2 weeks). Letβs imagine that we want to release a new version of the project on March 15, then roughly
- pushing to the
stagingenvironment must be scheduled for March 8 - pushing to the
testingenvironment must be scheduled for March 1
The staging and production environments actually have 2 machines each. Each machine requires a manual deployment. A deployment is validated when developers
- have manually tested the critical endpoints via Postman
- have manually performed some verification on the database