DevOps Project - Continuous Integration of Vprofile Project using Jenkins, Nexus, SonarQube and Slack
This is a DevOps project for Continuous Integration of vprofile project using Jenkins, Nexus, SonarQube and Slack.
Link for vprofile app repository.
-
AWS EC2 - Compute Resource
-
Jenkins - Continuous Integration Server
-
Git and GitHub - Version Control System
-
Maven - Build Tool
-
Checkstyle - Code Analysis Tool
-
Nexus - Artifact / Software Repository
-
SonarQube - Code Analysis Server
-
Slack - Notifications
-
Maven Integration (Build Tools)
-
GitHub Integration (Build Triggers)
-
Nexus Artifact Uploader (Artifact Uploaders)
-
SonarQube Scanner (Build Reports)
-
Slack Notification (Build Notifiers)
-
Build Timestamp - (Build Wrappers)
-
Jenkins Server -
8080
-
Nexus Server -
8081
-
SonarQube Server -
80
( default port for SonarQube Server is
9000
, port80
is used because a Nginx Server is configured to redirect the request to port9000
)
-
Login to AWS Account - Link to Login to your AWS Account.
-
Create Key Pair
-
Create Security Groups
a. Jenkins, Nexus and Sonarqube
-
Create EC2 Instances with Userdata
a. Jenkins, Nexus and Sonarqube
-
Post Installation
a. Jenkins Setup and Plugins
b. Nexus Setup and Repository Setup
c. SonarQube Login Test
-
Git and GitHub
a. Create a GitHub Repository and Migrate Code
b. Integrate GitHub Repository with VS Code and Test it
-
Build Job with Nexus Integration
-
Github Webhook Setup
-
SonarQube Server Integration Stage
-
Nexus Artifact upload Stage
-
Slack Notification