All checks were successful
TzuWei/pytest-test/pipeline/head This commit looks good
Reviewed-on: #3 Reviewed-by: DaLaw2 <dalaw22222@gmail.com> Co-authored-by: TzuWei <htw41043223@gmail.com> Co-committed-by: TzuWei <htw41043223@gmail.com>
59 lines
1.6 KiB
Groovy
59 lines
1.6 KiB
Groovy
properties([
|
|
parameters([
|
|
string(
|
|
name: 'TEST_MARK',
|
|
defaultValue: 'All',
|
|
description: 'To filter test cases, default is All'
|
|
)
|
|
])
|
|
])
|
|
|
|
node('ccis') {
|
|
stage('Setup Environment') {
|
|
cleanWs()
|
|
checkout scm
|
|
|
|
def image = docker.build('pytest-test', '.')
|
|
env.IMAGE_ID = image.id
|
|
}
|
|
|
|
stage('Test') {
|
|
docker.image(env.IMAGE_ID).inside("--user jenkins --shm-size=1g") {
|
|
sh 'mkdir -p Report test-reports || true'
|
|
sh 'if [ -f Report_Http.zip ]; then rm Report_Http.zip; fi'
|
|
|
|
withEnv(["TEST_MARK=${params.TEST_MARK}"]) {
|
|
sh 'python3 exec.py'
|
|
}
|
|
|
|
sh '7z a -tzip Report_Http.zip Report'
|
|
archiveArtifacts artifacts: 'Report_Http.zip', followSymlinks: false
|
|
archiveArtifacts artifacts: 'test-reports/**', followSymlinks: false
|
|
}
|
|
}
|
|
|
|
stage('Prepare Report') {
|
|
junit testResults: 'test-reports/junit-report.xml', allowEmptyResults: true
|
|
}
|
|
|
|
stage('Notify to Discord') {
|
|
withCredentials([string(credentialsId: '725eb3cc-b38a-412a-b83c-cd5a5017f8b8', variable: 'DISCORD_WEBHOOK_URL')]) {
|
|
script {
|
|
def status = currentBuild.currentResult
|
|
def desc = """
|
|
**Job:** ${env.JOB_NAME}
|
|
**Build #:** ${env.BUILD_NUMBER}
|
|
**Status:** ${status}
|
|
**URL:** ${env.BUILD_URL}
|
|
""".stripIndent()
|
|
|
|
discordSend(
|
|
webhookURL: DISCORD_WEBHOOK_URL,
|
|
title: "Jenkins Build - ${status}",
|
|
description: desc,
|
|
result: status
|
|
)
|
|
}
|
|
}
|
|
}
|
|
} |