We follow gitlab process
#
- Please learn / review
gitlab flow article
- Good ideo with git flow and gitlab flow difference
Important points
#
- Make sure you read and follow
contribution guidelines
- Use feature branches rather than direct commits on the master branch.
- Test all commits, not only ones on the master branch.
- Run every test on all commits. (If tests run longer than 5 minutes, they can run in parallel.)
- Perform code reviews before merging into the master branch.
- Deployments are automatic based on branches or tags.
- Tags are set by the user, not by CI.
- Production releases are based on tags.
- Master branch automatically deployed to development envioroment
- Pushed commits are never rebased.
- Everyone starts from master and targets master.
- Fix bugs in master first and release branches second.
- Commit messages reflect intent.
Process from developer view
#
- Make sure all your tickets and PRs are in properly columns on the project board
- Dont forget to address any manual work that needs to be done in order to deploy your changes to production
Process from devops view
#
- Evaulate a risks and identify any unique or new work for the deploy
- Verify with QA to have their agreement for the production deploy
- Make sure all tests are passed along with other CI checks (linting, security checks)
- If needed, set up a time, make an announcement when deploy will take place
- If needed, spin up temporary environment. For example to make database data looks as similar as in production
- Gradually deploy production changes: devops -> backend -> frontend