| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| pipeline { |
| agent { node { label 'ubuntu' } } |
| options { |
| durabilityHint('PERFORMANCE_OPTIMIZED') |
| buildDiscarder(logRotator(numToKeepStr: '20', artifactNumToKeepStr: '5')) |
| timeout(time: 180, unit: 'MINUTES') |
| } |
| parameters { |
| string( defaultValue: 'master', description: 'Core Its branch (default master)', |
| name: 'ITS_BRANCH' ) |
| } |
| stages { |
| stage("Build Maven Core") { |
| steps { |
| withEnv(["JAVA_HOME=${ tool "JDK 1.8 (latest)" }", "PATH+MAVEN=${tool 'Maven 3.6.3'}/bin:${env.JAVA_HOME}/bin"]) { |
| sh "mvn -Drat.skip=true -T2 -B -V install -PversionlessMavenDist -Dmaven.repo.local=${env.WORKSPACE}/repo" |
| } |
| } |
| } |
| stage( "Run Maven Integration Testing" ) { |
| steps { |
| git url: "https://github.com/apache/maven-integration-testing.git", branch: "${ITS_BRANCH}" |
| sh "ls -lrt ${env.WORKSPACE}/apache-maven/target/" |
| withEnv(["JAVA_HOME=${ tool "JDK 1.8 (latest)" }", "PATH+MAVEN=${tool 'Maven 3.6.3'}/bin:${env.JAVA_HOME}/bin"]) { |
| sh "mvn clean install -V -B -Prun-its,embedded -Dmaven.test.failure.ignore -Dmaven.repo.local=${env.WORKSPACE}/repo -DmavenDistro=${env.WORKSPACE}/apache-maven/target/apache-maven-bin.zip" |
| } |
| } |
| } |
| } |
| post { |
| always { |
| junit testResults: 'core-it-suite/target/surefire-reports/*.xml', allowEmptyResults: true |
| script{ |
| currentBuild.description = "Build with Core Its branch:$ITS_BRANCH" |
| } |
| cleanWs() |
| } |
| } |
| } |