Automated CI/CD pipeline for a Spring Boot application using Jenkins, Maven, SonarQube, and AWS EC2.
-
Jenkins Server:
- Java 17 installed
- Plugins: Git, Maven, SSH, SonarQube
-
Deployment Server (AWS EC2):
- Java 17 installed
- SSH access configured
-
SonarQube:
- Running on port 9000
- Access token generated
- Checkout Code: Jenkins pulls code from GitHub.
- Build: Compiles and packages the application using Maven.
- Code Quality: SonarQube scans the code.
- Deploy: Copies the JAR file to the EC2 instance and runs it.
-
Jenkins:
- Install necessary plugins.
- Configure SonarQube server in Jenkins.
-
Deployment Server:
- Ensure Java 17 and SSH are set up.
-
SonarQube:
- Generate a token and configure Jenkins for code analysis.
Run the Jenkins pipeline to automate the deployment of your Spring Boot application.