skywalking-java/Jenkinsfile-Agent-Test

149 lines
4.7 KiB
Plaintext
Executable File

/*
* 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="wl1_${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 (156)') {
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('apm-toolkit-trace (1)') {
steps {
sh 'bash test/plugin/run.sh apm-toolkit-trace-scenario'
}
}
stage('jetty 9.x (63)') {
steps {
sh 'bash test/plugin/run.sh jetty-scenario'
}
}
stage('netty-socketio 1.x (4)') {
steps {
sh 'bash test/plugin/run.sh netty-socketio-scenario'
}
}
stage('rabbitmq-scenario (12)') {
steps {
sh 'bash test/plugin/run.sh rabbitmq-scenario'
}
}
}
}
stage('Group2') {
stages {
stage('feign 9.0.0-9.5.1 (8)') {
steps {
sh 'bash test/plugin/run.sh feign-scenario'
}
}
stage('customize (1)') {
steps {
sh 'bash test/plugin/run.sh customize-scenario'
}
}
stage('postgresql 9.4.1207+ (62)') {
steps {
sh 'bash test/plugin/run.sh postgresql-above9.4.1207-scenario'
}
}
stage('canal 1.0.24-1.1.2 (5)') {
steps {
sh 'bash test/plugin/run.sh canal-scenario'
}
}
}
}
}
}
}
post {
cleanup {
sh 'bash test/plugin/run.sh --cleanup'
deleteDir()
}
}
}