让詹金斯(哈德逊)工作取决于另一个工作
-
28-09-2019 - |
题
我有两个工作:
- 上传
- 发射现实
我要实现 发射现实 取决于另一个,以便触发 发射现实 自动原因 上传 首先运行。
我可以使用内置的Jenkins功能或插件实现此目标吗?
请注意我愿意 不是 想 上传 总是触发 发射现实, ,这是“构建其他项目后的构建”选项 发射现实 会做。我想要的更多 类似于如何 depends
属性起作用 蚂蚁.
解决方案
你尝试过吗 参数化触发插件?
您可以将其用作构建步骤,并将复选框标记为“块直到触发的项目完成其构建”。那应该正是您要寻找的。
其他提示
啊哈,找到了!我在这里建立 Miki的答案 这显示了道路,但没有为我完全解决这个问题。
正如它在 西班牙语文章有关推出哈德逊建造 这与哈德森的评论有关 远程访问API页面 米基(Miki)链接到:
en lasección”构建触发器“ [...] Marcamos laopción”触发构建远程(例如,来自脚本)“。al Marcar estaopciónVemoscomo aparece el Cuadro de texto“ authentication token”。aquiípondremosel nombre el nombre del token deautenticación。
(来源: Adictosaltrabajo.com)
(似乎知道西班牙语开始实现的好处... :-)
因此,事实证明,哈德森提供了一个方便的内置选项,用于远程触发构建。在 构建触发器 (of 上传 就我而言)你可以 启用远程构建 并设置一个身份令牌(请参见上面的屏幕截图)。然后,您可以通过访问包含该令牌的某个URL来启动构建。就我而言,第一个构建步骤 发射现实 好像:
wget http://[hudson-url]/job/Upload/build?token=TEST
sleep 10
即使禁用了匿名构建,并且只是试图访问构建URL也会产生“ 403禁止”。
通过WGET运行依赖作业不是一般解决方案。由于作业是异步运行的,因此您的发射工作将不会被吊死,并等待上传工作才能完成。使用睡眠只是一个肮脏的黑客,在大多数情况下不是一个选择...恕我直言,最好的解决方案是使用: http://wiki.jenkins-ci.org/display/jenkins/join+plugin
您可以使用下游或上游依赖关系。您应该在项目的配置部分中构建其他项目和/或后构建操作后使用“构建触发器” - >构建。