Here below are the steps for integrating SonarQube with Jenkins:
Pre-requisites:
Make sure SonarQube is up and running
Make sure SonarQube is up and running
Make sure Sonarqube plug-in installed in Jenkins.
1. You need to login to SonarQube using admin/admin and click on Admin on your top side.
Under Tokens, Give some value for token name and click on generate Tokens. Copy the token.
2. After installing SonarQube successfu
Enter name as SonarQube,
URL as http://your_sonarqube_public_dns:9000, no / in the end
paste the token you copied from step #1 by click on Add Credentials, choose Secret Text as dropdown, paste the token as token
4. Save.
5. Click on your existing free style job, click on configure. click on prepare Sonarqube scanner environment.
6. enter maven goal as clean install sonar:sonar
7. click on save and build the job.
You will see that Jenkins will integrate with SonarQube which does code analysis of your project.
Login to SonarQube, click on Projects to see the project dash board.
Below exercise is needed only for pipeline code, not for freestyle job:
Jenkins Pipeline code for running scan in SonarQube
node {
def mvnHome = tool 'Maven3'
stage ("checkout") {
//write pipeline code
}
stage ('build') {
sh "${mvnHome}/bin/mvn clean install -f MyWebApp/pom.xml"
}
stage ('Code Quality scan') {
withSonarQubeEnv('SonarQube') {
sh "${mvnHome}/bin/mvn -f MyWebApp/pom.xml sonar:sonar"
}
}
def mvnHome = tool 'Maven3'
stage ("checkout") {
//write pipeline code
}
stage ('build') {
sh "${mvnHome}/bin/mvn clean install -f MyWebApp/pom.xml"
}
stage ('Code Quality scan') {
withSonarQubeEnv('SonarQube') {
sh "${mvnHome}/bin/mvn -f MyWebApp/pom.xml sonar:sonar"
}
}
}
No comments:
Post a Comment