/* * 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 { label 'skywalking' } options { timestamps() timeout(time: 5, unit: 'HOURS') parallelsAlwaysFailFast() } tools { jdk 'JDK 1.8 (latest)' } environment { BUILD_NO="wl2_${BUILD_ID}" MAVEN_OPTS = '-Dmaven.repo.local=.m2/repository -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit -Xmx3g' } stages { stage('Checkout Source Code') { steps { sh 'bash ./test/plugin/script/systeminfo.sh' deleteDir() checkout scm sh 'git submodule update --init' } } stage('Compile agent Codes') { when { expression { return sh(returnStatus: true, script: 'bash tools/ci/agent-build-condition.sh') } } steps { sh './mvnw -Pagent clean package -DskipTests' } } stage('Compile plugin-test tools Codes') { when { expression { return sh(returnStatus: true, script: 'bash tools/ci/agent-build-condition.sh') } } steps { sh './mvnw -f test/plugin/pom.xml clean package -DskipTests docker:build' } } stage('Test Cases Report (170)') { steps { echo "Test Cases Report" } } stage('Run Agent Plugin Tests') { when { expression { return sh(returnStatus: true, script: 'bash tools/ci/agent-build-condition.sh') } } parallel { stage('Group1') { stages { stage('spring-tx 4.x+ (10)') { steps { sh 'bash test/plugin/run.sh spring-tx-scenario' } } stage('spring 4.3.x-5.2.x (54)') { steps { sh 'bash test/plugin/run.sh spring-4.3.x-scenario' } } stage('dubbo 2.5.x-2.6.x (10)') { steps { sh 'bash test/plugin/run.sh dubbo-2.5.x-scenario' } } stage('dubbo 2.7.x (4)') { steps { sh 'bash test/plugin/run.sh dubbo-2.7.x-scenario' } } stage('okhttp 3.0.x-3.14.x (34)') { steps { sh 'bash test/plugin/run.sh okhttp-scenario' } } } } stage('Group2') { stages { stage('redisson 3.x (37)') { steps { sh 'bash test/plugin/run.sh redisson-scenario' } } stage('spring 3.1.x-4.0.x (25)') { steps { sh 'bash test/plugin/run.sh spring-3.1.x-scenario' } } stage('spring-cloud-gateway 2.1.x (3)') { steps { sh 'bash test/plugin/run.sh gateway-scenario' } } stage('elasticsearch 5.x (3)') { steps { sh 'bash test/plugin/run.sh elasticsearch-5.x-scenario' } } } } } } } post { cleanup { sh 'bash test/plugin/run.sh --cleanup' deleteDir() } } }