发布网友 发布时间:2022-04-22 01:00
共1个回答
热心网友 时间:2023-01-21 22:19
本文就简单说说我经验中的解决法:1.两个地域的网络都能直接相互访问,这是最好的情况(而这种情况适用范围是最窄的),可以直接用Jenkins的隐藏功能实现。首先要有个job处于你buildprocess的最后一步,比如说,你release后,触发这个job,而这个job实现触发另外一个Jenkins。然后你这个Job得运行在Linux环境下,因为要用Shell。当然你得把build选成ExecuteShell窗口。然后你就得加如下的命令了:wgetbuildWithParameters?$你要传递的变量名='$变量名对应的值'&$第2个变量名='$第2个变量名的值'如果你运气好的话,第一次就搞定了。当然。。某些人或者公司有特殊的网络设置,在用这个命令之前大家都不知道。所以方法1很高的几率会失败。所以当初解决这问题的时候,出现了方法2。2.两个人地域的网络不能直接访问,或者方案1不稳定,这得引入另外一个解决方案。这个方案拥有coder的思维,即引入第3者,这个第3者必须能分别和2个地方的jenkins相互访问。比如说,你们的SVN?只要你们做的同一个产品,肯定有某个SVN你们双方都能访问的。嘿嘿。对于这个图的解释,又回到了jenkins的自动trigger上,引入下“自动build”的文章。这种方案,就很稳定,可控。当然还有其他的,朋友们如果有兴趣请评论中讨论。比如:3.Jenkins插件ParameterizedRemoteTriggerPlugin