如何将文件传递给阻止上游作业的下游作业?
How to pass file to downstream job which blocks upstream job?
我想要完成的是从 develop
分支检出代码,将其合并到 master
分支,构建 app.war
、运行 测试,如果测试成功推送到 master
分支。
测试应该 运行 在单独的工作中需要 app.war
。
我目前的设置如下:
- 作业
Main
从 develop
签出,将其合并到 master
并构建 app.war
- 作业
Main
在 Post 构建步骤 中触发作业 Test
(Test
需要 app.war
之前构建)
- 如果
Test
成功,Main
将推送到 Post 构建操作中的 master
分支
我尝试使用Copy Artifact Plugin,但问题是使用它,我只能在Post构建操作 当我在 Post 构建步骤 .
中触发 Test
如何将 app.war
传递给 Test
作业?是否可以使用 Copy Artifact Plugin?
1。复制工件
您可以围绕它放置一个包装作业,并通过使用 Trigger/call 在其他项目 上构建,将构建作业和测试作业称为构建步骤。由于构建现在封装在自己的作业中,您可以存档其工件并将它们复制到 Test
作业。
2。共享工作空间
另一种方法是在构建和测试之间共享一个工作区。
3。将文件作为参数传递
将文件传递给下游作业的一种巧妙方法是,在 Parameterized Trigger Plugin.
的帮助下将其作为参数传递
只需选择参数工厂即可将文件推送到下游作业的工作区对于每个匹配的文件,在构建步骤中调用一个构建Trigger/call 基于其他项目。
在那里你指定目标文件(允许通配符)和它应该在子工作区中获得的名称。
注意:您的下游作业 不需要 需要选项 This build is parameterized set,文件将以任何一种方式复制。 编辑:这可能不再有效,请参阅评论。
我想要完成的是从 develop
分支检出代码,将其合并到 master
分支,构建 app.war
、运行 测试,如果测试成功推送到 master
分支。
测试应该 运行 在单独的工作中需要 app.war
。
我目前的设置如下:
- 作业
Main
从develop
签出,将其合并到master
并构建app.war
- 作业
Main
在 Post 构建步骤 中触发作业Test
(Test
需要app.war
之前构建) - 如果
Test
成功,Main
将推送到 Post 构建操作中的master
分支
我尝试使用Copy Artifact Plugin,但问题是使用它,我只能在Post构建操作 当我在 Post 构建步骤 .
中触发Test
如何将 app.war
传递给 Test
作业?是否可以使用 Copy Artifact Plugin?
1。复制工件
您可以围绕它放置一个包装作业,并通过使用 Trigger/call 在其他项目 上构建,将构建作业和测试作业称为构建步骤。由于构建现在封装在自己的作业中,您可以存档其工件并将它们复制到 Test
作业。
2。共享工作空间
另一种方法是在构建和测试之间共享一个工作区。
3。将文件作为参数传递
将文件传递给下游作业的一种巧妙方法是,在 Parameterized Trigger Plugin.
的帮助下将其作为参数传递只需选择参数工厂即可将文件推送到下游作业的工作区对于每个匹配的文件,在构建步骤中调用一个构建Trigger/call 基于其他项目。 在那里你指定目标文件(允许通配符)和它应该在子工作区中获得的名称。
注意:您的下游作业 不需要 需要选项 This build is parameterized set,文件将以任何一种方式复制。 编辑:这可能不再有效,请参阅评论。