-
Notifications
You must be signed in to change notification settings - Fork 3
4. CI CD
To simplify the process of development, releasing of software, and also keeping the agile development practices in mind, we have a CI/CD workflow intact with our repository which will enforce the automation of the whole deployment process. The workflow focuses on automating the software delivery process so that the team can easily deploy their code to production at any time without compromising on quality.
We have used Github Actions for building the CI/CD pipeline.
To deploy code to Development
- Push the code to the development branch.
- Wait for the workflow in Github Actions to finish.
- Once the workflow run is complete, refresh your browser to find the code changes.
Please Note - Code cannot be pushed directly to development branch. For any code changes, you will have to make changes in a separate branch and create a pull request to the development branch, which will require at least one approval from the reviewer before merging.
To deploy code to Production
- Merge your code to the main branch.
- Once the code is merged to main it will trigger the e2etest workflow in Github Action.
- If the e2etest passes successfully, it will trigger the release-please action to create an auto-release with auto CHANGELOG generation.
- Approve the release PR created by release-please action.
- Once the PR is merged wait for a few minutes for the release to be created.
- Once the release is created, switch to branch prod-helm-deploy in your
local.
git checkout prod-helm-deploy
- Pull the latest code from both prod-helm-deploy & main branch.
- Finally, push all the latest commits to prod-helm-deploy branch.
- Wait for the workflow to finish in Github Action.
- Once the workflow run is complete, refresh your browser to find the code changes.
Please Note - Deployment would be unsuccessful or incomplete if there is any failure in Github Action at any point of the above steps.