我无法找到明确回答这个问题的文档,有些人轻易地解决了竹子上的节点问题......但不是那么远。
如果我在一台竹子服务器上有三个本地代理商,那么一个竹子构建计划。这个构建计划有一个阶段和三个工作。 Bamboo配置为在可用的本地代理中安排这些作业的并发执行。这意味着,这三个工作将同时执行。
这些工作中的每一个都有一个内部任务执行" nvm use"使用不同的nodejs版本。为了论证,让我们说job1使用8.10.0,job2使用6.12.0,job3使用4.8.0。我们还要说agent1已分配给job1,agent2已分配给job2,agent3已分配给job3。
两个问题:
1)这是否会为nodejs版本创建竞争条件,其中agent1期望在v8.10.0上运行应用程序,但agent2在agent1的下一个任务之前将nodejs设置为v6.12.0?从而打破了任务所需的版本。
2)此构建计划是否会影响其他不相关的共存构建计划?如果说,另一个计划没有提到要使用的节点版本。或者甚至,这里提到的竞争条件是否适用于此?
我原本以为代理商在他们自己的" silo"如果更改了nodejs版本,则只与当前代理范围相关。代理人完成那份工作后消失了。考虑一下,我不太确定。
答案 0 :(得分:0)
没有人回答这个问题,因此出于公民义务通知其他好奇的人:
是。如果专门使用本地代理,则nodejs版本会更改,并且无法在任务运行时保证。