38 lines
1.3 KiB
Groovy
38 lines
1.3 KiB
Groovy
properties([
|
|
disableConcurrentBuilds(),
|
|
buildDiscarder(logRotator(daysToKeepStr: '60', numToKeepStr: '60', artifactDaysToKeepStr: '15', artifactNumToKeepStr: '15'))
|
|
])
|
|
|
|
timeout(time: 60, unit: 'SECONDS') {
|
|
node {
|
|
try {
|
|
stage('检出与变更信息') {
|
|
checkout scm
|
|
echo "BRANCH_NAME=${env.BRANCH_NAME ?: ''}"
|
|
echo "CHANGE_ID=${env.CHANGE_ID ?: ''}"
|
|
echo "CHANGE_TARGET=${env.CHANGE_TARGET ?: ''}"
|
|
def scenario = readFile('ci/scenario.txt').trim()
|
|
if (!(scenario in ['success', 'unstable', 'failure'])) {
|
|
error("Unsupported demo scenario: ${scenario}")
|
|
}
|
|
env.SCENARIO = scenario
|
|
env.RUN_SECONDS = '1'
|
|
env.LOG_LINES = '25'
|
|
env.TARGET_ENV = 'sg'
|
|
env.RELEASE_VERSION = readFile('VERSION').trim()
|
|
def expected = [success: 'SUCCESS', unstable: 'UNSTABLE', failure: 'FAILURE'][scenario]
|
|
currentBuild.description = '[演示数据] synthetic=true expected=' + expected
|
|
}
|
|
stage('构建与报告') {
|
|
int status = sh(returnStatus: true, script: 'sh ci/demo-build.sh')
|
|
junit 'reports/*.xml'
|
|
if (status != 0) error("Demo build exited with status ${status}")
|
|
}
|
|
} finally {
|
|
stage('归档') {
|
|
archiveArtifacts artifacts: 'artifacts/*', allowEmptyArchive: true
|
|
}
|
|
}
|
|
}
|
|
}
|