SonarQube Integration with Jenkins

 You need to login to SonarQube using admin/admin123 and click on Admin on your top side.

Click on My Account, Security. 
Under Tokens, Give some value for token name and choose Global analysis token, click on generate Tokens. Copy the token value generated.



2. After installing SonarQube successfully, login to Jenkins. Manage Jenkins --> Configure System --> SonarQube installation 




3. Click on Enable injection of Sonarqube server configuration check box.
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 not for lab 6,  needed only for pipeline code, not for freestyle job. This is part of Lab 11 and 12.
 
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"
        }
   }
}

Comments

Popular posts from this blog

Setup build agent/slave VM and Integrate with Jenkins Master

Installing SonarQube using Docker || Installing SonarQube using Docker on Ubuntu 22.0.4 || Installing SonarQube using Docker-Compose

Creating Amazon EKS cluster by eksctl