This project demonstrates the containerization,IaC provisioning ,CI/CD automation, and Kubernetes deployment of a Spring Boot application using Azure DevOps.
- Docker: Containerized Spring Boot app.
- Azure DevOps: CI/CD pipeline with stages for linting, testing, code analysis, image build, push, and deployment.
- Terraform: Provision a secure EKS Cluster.
- Kubernetes: Deploys the application in a cluster with a Service and Ingress.
- SonarQube: Code quality analysis.
- OWASP ZAP: To handel the DAST (Dynamic Application Security Testing).
- Clone the repository
git clone https://github.com/3omda1/DevSecOps-With-Azure.git cd DevSecOps-With-Azure
- Build and run locally:
docker build -t spring-boot-app . docker run -p 8080:8080 spring-boot-app
- Configured in
azure-pipelines.yml - Steps:
- Lint
- Unit Tests
- SonarQube Scan
- Docker Build & Push
- Deploy to Kubernetes
- Apply the Kubernetes manifests:
kubectl apply -f k8s/deployment.yaml kubectl apply -f k8s/ingress.yaml
- Check application status:
kubectl get pods -n development kubectl get ingress -n development
For issues, reach out via email or submit a GitHub issue.