繁体   English   中英

在 Jenkins 管道之间共享文件

Sharing files between Jenkins pipelines

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我看到的很多示例类似于如何从管道中使用 Jenkins Copy Artifacts Plugin (jenkinsfile)? 在 SAME 管道中共享文件。 我想在两个不同的管道之间共享一个文件。

我尝试像这样使用 Copy Artifacts 插件

Pipeline1:
node {'linux-0') {
  stage("Create file") {
    sh "echo \"hello world\" > hello.txt"
    archiveArtifacts artifact: 'hello.txt', fingerprint: true
  }
}

Pipeline2:
node('linux-1') {
    stage("copy") {
        copyArtifacts projectName: 'Pipeline1',
                      fingerprintArtifacts: true,
                      filter: 'hello.txt'
    }
}

我收到 Pipeline2 的以下错误

ERROR: Unable to find project for artifact copy:  Pipeline1
This may be due to incorrect project name or permission settings; see help for project name in job configuration.
Finished: FAILURE

我错过了什么?

注意:我真正的脚本化(即非声明式)管道比这些更复杂,因此我无法轻松将它们转换为声明式管道。

1 个回复

我刚刚测试了这个,对我来说效果很好。 这是我的代码,pipeline1:

pipeline {
    agent any

    stages {
        stage('Hello') {
            steps {
                sh "echo \"hello world\" > hello.txt"
                archiveArtifacts artifacts: 'hello.txt', fingerprint: true
            }
        }
    }
}

管道2

pipeline {
    agent any

    stages {
        stage('Hello') {
            steps {
                copyArtifacts projectName: 'pipeline1',
                      fingerprintArtifacts: true,
                      filter: 'hello.txt'
            }
        }
    }
}

copyArtifacts 项目名称:'pipeline1'

确保项目名称与第一个管道的名称完全相同(并且该名称没有冲突)。 如果您有冲突或使用文件夹插件,请确保查看此链接以相应地引用项目:

https://wiki.jenkins.io/display/JENKINS/How+to+reference+another+project+by+name

2 在Jenkins中共享文件

我在Jenkins中的提交后构建过程会准备几个在日常开发中非常有用的文件。 当前,我们压缩必要的文件,将其复制到仅仅是共享资源的目录中。 我正在寻找某种允许我指向发布目录并显示其内容的插件(类似于已定义作业中的工作区视图)。 有什么建议么 ?? ...

4 脚本化和声明性管道之间的 Jenkins 错误处理

我想从脚本化管道构建许多声明性管道作业,并使用嵌套在父 try/catch 中的单个 try/catch 块处理任何失败 此代码的行为不一致。 如果构建作业由于语法原因失败,错误会被子 try/catch 捕获并回显错误消息,然后将其抛出给父进程,父进程也会捕获它并回显错误本身。 但是如果构建作 ...

2019-05-08 19:25:17 1 522   jenkins
6 在pod之间共享文件

我有一个生成图片的服务。 一旦准备好,用户就可以下载它了。 在工作服务器pod和后端服务之间共享存储卷的推荐方法是什么? ...

7 在文件之间共享“ this”

我正在创建一个具有许多方法的对象,并试图避免文件过长。 问题是某些方法引用了对象中的其他信息。 我希望能够执行以下操作: index.js 方法/ name.js 为什么在这种情况下this行不通,这是有道理的,但是有没有其他解决方案可以引用其他文件呢? 我唯一能想到 ...

8 在微服务之间共享文件

我正在尝试将项目从当前的单片状态转移到微服务架构。 该项目在Node.js中,所以我开始研究Seneca.js ,特别是它的seneca-mesh模块。 将图像处理(裁剪,调整大小等)移动到微服务中似乎是最明智的第一步,因为它现在大大减慢了我的应用程序。 当应用程序是单片时,将某些文件 ...

9 文件之间共享对象

只需说我有一个文件(文件A),它就可以为我做一些反应,并将多个对象存储在一个数组中。 我如何与多个文件共享该对象,只说文件B和文件C。 顺便说一下,我正在使用metoerJs。 ...

10 在 Azure Devops Pipelines 中的部署作业生命周期挂钩之间共享变量

我一直在尝试在部署作业的生命周期挂钩中定义一个变量,然后在以后的生命周期挂钩中访问该变量。 关于部署作业的文档引用了这样做的能力,但没有提供这种情况的实际示例(额外强调): 在部署作业的生命周期挂钩中定义输出变量,并在同一阶段的其他下游步骤和作业中使用它们。 我一直在使用的示例管道: s ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM