-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathJenkinsfile
executable file
·55 lines (53 loc) · 1.87 KB
/
Jenkinsfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
node {
try {
stage('Stage Checkout') {
checkout scm
echo "My branch is: ${env.BRANCH_NAME}"
}
stage('Stage Build') {
sh "mvn clean deploy -Dmaven.test.skip=true -U"
}
stage('Stage Archive') {
archiveArtifacts artifacts: 'target/*.jar', fingerprint: true
}
}
catch (err) {
currentBuild.result = "FAILED"
notifyFailed(err)
throw err
}
// def sonProject = 'Multibranch-business-logic-core'
// def branchName = getBranchName("${env.BRANCH_NAME}")
// try {
// stage('Build other project') {
//
// build "${sonProject}/${branchName}"
// }
// }
// catch (err) {
// flag = true
// echo "触发下级工程有问题:${sonProject}/${branchName}"
// mail body: "触发下级工程有问题:${sonProject}/${branchName} \n ${env.JOB_NAME} - Build # ${env.BUILD_NUMBER} - : \n Check console output at ${env.BUILD_URL} to view the results.\nERROR:\n ${err}",
//// from: '[email protected]',
// replyTo: '[email protected]',
// subject: "触发下级工程有问题:${sonProject}/${branchName}",
// to: '[email protected]'
// echo "${err}"
// }
}
def notifyFailed(def err) {
emailext(
subject: "FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}] [${env.BRANCH_NAME}]'",
body: """FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}] [${env.BRANCH_NAME}]':
Check console output at ${env.BUILD_URL}
ERROR:
${err}
""",
recipientProviders: [[$class: 'CulpritsRecipientProvider'], [$class: 'RequesterRecipientProvider']],
to: '[email protected]'
)
}
//分支中带/符号,需要urlencode
def static getBranchName(String branch) {
return branch.replace('/', '%2F')
}