我正在尝试在奴隶上运行Jenkins工作。作为第一个作业的结果,创建了一个excel文件。 我希望在第一个作业完成后在主服务器上运行第二个参数化作业,具体取决于excel的值。
到目前为止,我尝试了以下选项:
1. 使用加入插件。这不起作用,因为第二个作业是参数化的,我必须从excel文件中获取输入。没有选项可以提供选项或从文件中读取参数
2. 主服务器上的管道 - 出于某种原因,当我在主服务器上创建管道并执行第一个从属作业时,从服务器等待一个插槽运行,因为一个作业已在运行且主要工作正在等待奴隶的工作运行。所以它导致死锁。
答案 0 :(得分:0)
管道(脚本化,非声明性)听起来像是要走的路。
类似的东西:
node('MySlaveLabel') {
...do your stuff here...
stash includes: 'myExcelFile.xls', name: 'myExcelFile'
}
node('MyMasterLabel') {
unstash 'myExcelFile'
...examine your Excel file here..
...add conditional statements...
}
只要节点块没有嵌套,就只需要从机上有1个执行程序,主机上只有1个执行程序。
如果由于某种原因你实际上需要工作来互相打电话:
build 'anotherProject'
语法。