我想分享一个jenkins工作的副产品,另一个跟在后面的工作。
我知道我可以设置“使用自定义工作区”,但这会将作业合并在一起;这不是我想要的。我只需要在一个位置移动几个文件,这些文件将被下一个作业读取。
到目前为止,我无法找到你如何告诉Jenkins工作寻找特定的文件夹;因为除了作业工作区文件夹中的内容之外,它没有文件系统的概念。
有没有办法访问主机文件系统,或者在jenkins中声明共享文件夹(比如在主工作区文件夹中,其中包含所有其他作业?),所以我可以复制和读取其中的文件,来自不同的工作?
在可能的情况下,我想避免插件和附件;我想使用Jenkins基础包含的内容。
答案 0 :(得分:1)
我意识到你想要避免使用插件,但Jenkins-y的方法是使用Copy Artifacts plugin,这正是你想要的。
尝试自行管理文件系统时可能会遇到各种各样的问题。 (在不同的构建节点上运行时,如何发布到公共位置?如何处理不成功的构建?)此解决方案使用Jenkins跟踪构建和工件。在没有单独的工件库的情况下,它比尝试自己管理它要好得多。
使用复制工件:
答案 1 :(得分:0)
配置Jenkins以运行Maven构建,并使用“mvn clean deploy”部署工件。这会将其推送到您可能拥有的“工件服务器”,如果不需要,则需要添加/配置。
然后,在您的下游作业(也称为Maven作业)中,将其配置为依赖于上游作业中发布的相同工件。这将触发从工件服务器下载工件并使其可用于构建。