DevOps CI/CD
Pull Request
The basic syntax for a Smart Commit message is:
<ISSUE_KEY> <COMMIT MESSAGE>
JRA-34 Updated dependency
<ISSUE_KEY1> <ISSUE_KEY2> <ISSUE_KEY3> #comment <COMMIT MESSAGE>
JRA-34 #comment corrected indent issue
Build
The objective of Build step is to have a folder which can be build as a docker Image.
In the example we copy ProjectRunner.jar and Dockerfile into a new image folder
Vault Access
Unit Tests
Code scanning
The code is pushed to self-hosted Sonarqube service which uploaded the result into Sonarqube database.
Upload to Az Container Registry
Azure container registry is used to store images after its built.
Container Scanning
This step internally uses Trivy and Dockle for running certain kinds of scans on these images.
Trivy helps you find the common vulnerabilities within your docker images. Dockle is a container linter, which helps you identify if you haven't followed
- Certain best practices while building the image
- CIS Benchmarks to secure your docker image
In case you would like the action to ignore any vulnerabilities and best practice checks, create an allowedlist file at the path .github/containerscan/allowedlist.yaml in your repo.
Azure Kubernetes Deployment
Deployment is done using Kubernetes manifests into Azure K8s Cluster.
