gpt4 book ai didi

jenkins - 如何使用声明式管道从已执行的作业中复制工件?

转载 作者:行者123 更新时间:2023-12-02 10:02:51 24 4
gpt4 key购买 nike

我的管道脚本如下所示:

pipeline {
agent {
label 'my-pc'
}

stages {
stage ('Build') {
steps {
build job: 'myjob', parameters: [string(name: 'BRANCH', value: 'master')]
}
post {
always {
sh 'echo TODO: copy artifacts here'
}
}
}

}
}

我想复制myjob生成的工件。我怎样才能做到这一点?

Jenkins 文档页面 "Recording tests and artifacts"有一条不适用于我的管道的指令(在我的情况下,工件是由单独的作业生成的)。

最佳答案

您可以使用Copy Artifact plugin然后您可以将其与 step step 一起使用,它允许像 Freestyle 作业中一样调用构建器或构建后操作。请参阅您作业的管道语法并查阅代码片段生成器。 (https://[jenkins-url]/[path-to-your-job]/pipeline-syntax/)

这是将所有工件从作业 myjob 复制到当前管道作业工作区的方法:

pipeline {
agent {
label 'my-pc'
}

stages {
stage ('Build') {
steps {
build job: 'myjob', parameters: [string(name: 'BRANCH', value: 'master')]
}
post {
always {
step([
$class: 'CopyArtifact',
filter: '*',
projectName: 'myjob',
selector: [
$class: 'StatusBuildSelector',
stable: false
]])
}
}
}
}
}

关于jenkins - 如何使用声明式管道从已执行的作业中复制工件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43677405/

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