jenkins - 在 Jenkins 构建管道中下载工件

标签 jenkins

我目前正在学习使用 Jenkins 构建管道。我有一个管道,我可以像这样存档构建的工件:

stage("Build") { gitlabCommitStatus(name: "Build") {
    /*Build my program and zip it*/
    archiveArtifacts artifacts: 'Debug.7z', onlyIfSuccessful: true
}}

现在我想在另一个管道中使用这个工件,但我找不到将存档的工件下载到我的新管道中的命令。请注意,我不想在另一个阶段使用工件,而是在不同构建项目的完全不同的管道中。

最佳答案

你需要有 Copy Artifact为此安装的插件。在要复制工件的作业中,使用以下代码:

pipeline {
    stages {
        stage ('Copy Build Artifact') {
            steps {
                echo 'Copying artifact from projectA'
                copyArtifacts(projectName: 'projectA', filter:'Debug.7z', optional: true);
                // OR
                // copyArtifacts(projectName: 'projectA', filter:'Debug.7z', selector: specific('5'), optional: true);
            }
        }
    }
}

哪里:

selector:用于选择要从中复制的构建的选择器。如果未指定,则使用最新的稳定版本

可选:即使没有找到合适的构建也不会让步骤失败

关于jenkins - 在 Jenkins 构建管道中下载工件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58133989/

相关文章:

maven - AEM - 与 Maven 持续集成

java - Java获取Linux当前用户名的方法

jenkins - Helm Uninstall 删除版本(如果存在)

Jenkins Multijob 最终结果

git - 如何与 Jenkins 持续集成管理数据库

testing - Jenkins 上的 TestNG 结果组

maven - 如何通过maven测试Jenkins项目下的特定模块?

JenkinsFile如何查询job是否存在

amazon-web-services - 如何从 Jenkins 管道启动和停止 EC2 实例

if-statement - 如何在 jenkins 脚本管道作业中使用 bool 参数编写条件步骤?