This is the codeAbility Sharing Platform! Learn more about the codeAbility Sharing Platform.

Skip to content
Snippets Groups Projects
Jenkinsfile 1.11 KiB
Newer Older
pipeline {
  agent any
  environment { 
        scannerHome = tool 'SonarQube Scanner'
    }
   options {
Michael Breu's avatar
Michael Breu committed
       buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10'))
   }
   tools {
        // Install the Maven version configured as "M3" and add it to the path.
        maven "/usr/share/maven"
    }
   stages {
    stage('Compile') {
      steps {
		milestone 1
                withSonarQubeEnv('SonarQube Production') {
Michael Breu's avatar
Michael Breu committed
                    sh "mvn -Dmaven.test.failure.ignore=true -Dsonar.projectName=GitSearch -Dsonar.projectKey=GITSEARCH clean test jacoco:report sonar:sonar"
Michael Breu's avatar
Michael Breu committed
   }

  post {
		failure {
		   notifyByEmail("Failure");
		}
		unstable  {
		   notifyByEmail("Unstable");
		}
		fixed {
		   notifyByEmail("Fixed");
		}
	}
	
}

	void notifyByEmail(String reason) {
		def mailRecipients = "michael.breu@arctis.at"
	  emailext (
		  subject: reason + ": Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
		  body: '''${SCRIPT, template="groovy-html.template"}''',
		  mimeType: 'text/html',
		  recipientProviders: [[$class: 'CulpritsRecipientProvider']]
		)
	
    }