如何将作业的工作空间从jenkins主服务器复制到从属容器,然后从从属容器复制回到主容器?

时间:2020-07-21 05:52:23

标签: docker jenkins containers

对我来说,Jenkins主服务器和从服务器都在docker容器上运行。我在调用从属(Linux docker容器)之前已构建了主工作的工作区。我想将主作业的工作空间复制到我的从属容器中,因为该工作空间中的文件将用于进一步执行。

并且在从属容器上成功执行后,它将生成许多日志文件,我想将这些文件复制回Jenkins主服务器以通过电子邮件发送报告。

PS:Jenkins主服务器和从服务器均运行平稳。通过在docker模板中配置映像和其他必需设置来创建从属容器。

我对Jenkins和docker容器非常幼稚,我不知道如何实现这一目标。请提出一些建议以实现这一目标。谢谢大家的努力和建议。

1 个答案:

答案 0 :(得分:1)

通常,您不会共享工作空间来在Build代理之间交换文件/构建工件,但是您将使用“ Buil Artifacts”。

您可以通过Jenkins Pipeline脚本执行此操作。请参见以下示例中的archiveArtifacts步骤:https://www.jenkins.io/doc/pipeline/tour/tests-and-artifacts/

现在,您可以在下一个构建阶段复制工件,或者如果它是另一个构建作业,则可以对Jenkins使用Copy Artifact Plugin

您将保存的工件不需要是“ Build Artifacts”,但可以是您工作空间内的任何文件。所以你例如还可以存档将在以后的步骤中使用的测试文件。