gpt4 book ai didi

Jenkins 每个阶段的多个帖子部分

转载 作者:行者123 更新时间:2023-12-05 01:38:15 26 4
gpt4 key购买 nike

我有两个关于在 Jenkins 管道中使用 post 部分的问题

1.我们可以在 Jenkins 声明式管道中的每个阶段使用多个帖子部分吗?

2.可以在post区运行sh命令吗?

pipeline{
stages{
stage("....") {
steps {
script {
....
}
}
post {
failure{
sh "....."
}
}
stage("Second stage") {
when {
expression { /*condition */ }
}
steps {
script{

....
}
post {
always {
script {
sh "..."
}
}
}
}
}

最佳答案

您可以在 https://jenkins.io/doc/book/pipeline/syntax/#post 中找到信息

pipeline {
agent any
stages {
stage('Example') {
steps {
echo 'Hello World'
}
}
}
post {
success {
sh label: 'success', script: 'ls'
}
failure {
sh label: 'failure', script: 'ls'
}
aborted {
sh label: 'aborted', script: 'ls'
}
}
}

您可以在每个 Stage 中使用 Post 步骤,但管道会在第一次失败时停止。在下面的示例中,如果 Stage 1 失败,将跳过 Stage 2Post 在所有阶段之后将始终执行。

pipeline{
stages{
stage("Stage 1") {
steps {
catchError(message: 'catch failure') {
script {
sh "echo stage 1"
}
}
}
post {
always {
sh "echo post stage 1"
}
}
}
stage("Stage 2") {
when {
expression { /*condition */ }
}
steps {
script{
sh "echo stage 2"
}
}
post {
always {
script {
sh "echo post stage 2"
}
}
}
}
}
post {
always {
sh "echo post after all stages"
}
}
}

关于Jenkins 每个阶段的多个帖子部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59919289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com