From 773a428c20a5ed23dd993f63721439fbb4fe4f1b Mon Sep 17 00:00:00 2001 From: Paul Campbell Date: Wed, 28 Feb 2018 22:22:07 +0000 Subject: [PATCH] jenkins: test on both java 8 and 9 --- Jenkinsfile | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index f3a55d2..6004ae8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,20 +1,43 @@ +final String gitRepoUrl = 'git@github.com:kemitix/mon.git' +final String mvn = "mvn --batch-mode --update-snapshots" + pipeline { agent any stages { + stage('Prepare') { + steps { + git url: gitRepoUrl, branch: '**', credentialsId: 'github-kemitix' + } + } stage('Build') { steps { - checkout([ - $class: 'GitSCM', - branches: [[name: '**']], - doGenerateSubmoduleConfigurations: false, - extensions: [[$class: 'CleanBeforeCheckout']], - submoduleCfg: [], - userRemoteConfigs: [[credentialsId: 'github-kemitix', url: 'git@github.com:kemitix/mon.git']] - ]) - sh './mvnw clean install' + parallel { + stage('Java 8') { + withMaven(maven: 'maven 3.5.2', jdk: 'JDK 1.8') { + sh 'mvn clean install' + } + } + stage('Java 9') { + withMaven(maven: 'maven 3.5.2', jdk: 'JDK 9') { + sh 'mvn clean install' + } + } + } + } + } + stage('Reporting') { + steps { junit '**/target/surefire-reports/*.xml' archiveArtifacts '**/target/*.jar' } } + stage('Deploy') { + when { expression { (env.GIT_BRANCH == 'master') } } + steps { + withMaven(maven: 'maven 3.5.2', jdk: 'JDK 1.8') { + sh "${mvn} deploy --activate-profiles release" + } + } + } } }