Short Term Rental Data Sharing System (STRDSS)
The procedure outlines the steps to initiate a release and manage version. Here's a breakdown of each step:
To initiate a release, please follow these steps:
- Ensure that the necessary changes intended for the release in the
main
environment are made and committed to themain
branch. - Go to a manual GitHub Action Create Version Tag.
- Click
Run workflow
button and Select branchmain
. - Enter the tag version to create, without any prefixes, e.g. 1.2.3
- Click
Run workflow
green button to trigger the process. - After the workflow runs successfully, ensure that the deployment pipeline associated with the
main
environment is automatically triggered and completes.
Our CI/CD process is facilitated through GitHub Actions, ensuring seamless integration of code into the repository and efficient deployment to the intended environments. Here's a breakdown of the pipelines in place:
-
- Generates new images based on commit hashes for deployment in the
Development
environment. - Triggered automatically upon new changes pushed to the
main
branch.
- Generates new images based on commit hashes for deployment in the
-
- Generates new images using tags for deploying changes to the
Testing
environment. - Triggered upon creation of a new tag prefixed with 'v'.
- Generates new images using tags for deploying changes to the
-
- Facilitates deployment of selected tag's images into the
UAT
environment via the GitHub UI. - Triggered through the GitHub UI, allowing for tag version selection.
- Facilitates deployment of selected tag's images into the
-
- Facilitates deployment of selected tag's images into the
Production
environment. - Triggered through the GitHub UI upon publishing a new release from a tag.
- Facilitates deployment of selected tag's images into the
-
- Supports for generating version tags.
- Triggered through the GitHub UI, allowing specification of tag versions excluding prefixes.
When it's necessary to deploy a hotfix (critical fix) to Production, the steps below identify how to deploy the hotfix to production and then update the main branch with the hotfix code.
- Identify the tag where the hotfix should be included (I.E. the tag listed in the last production deployment log for deploy-prod under Github Actions)
- Create a branch from the tag
- Implement the hot fix
- Run `Create Version Tag with Changelog PR' with the hot fix branch updatung the hotfix value in the version by 1 (I.E. 1.8.1 -> 1.8.2)
- Merge the hot fix branch to the main branch