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
testing
environment - prepare the tickets for the
staging
andproduction
deployments - release on the
staging
environment - wait for validation
- release on the
production
environment
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
staging
environment must be scheduled for March 8 - pushing to the
testing
environment 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