强制Bamboo使用特定的Build Agent进行部署

时间:2013-08-16 13:51:03

标签: linux windows build-process build-automation bamboo

我正在使用bamboo进行构建,以及在linux机器上部署(ubuntu)。我还有一个使用Windows 7 64位远程代理的构建计划。

我注意到Bamboo想要尝试使用远程代理(windows7)来有时部署linux版本。我该如何防止这种情况?

我看到我可以在部署计划编辑屏幕中设置代理,但这需要一个linux代理构建,一个Linux代理要部署。是否可以使用相同的Linux代理进行构建和部署,同时确保部署始终使用Linux代理而不是任何其他可用的非Linux代理?

2 个答案:

答案 0 :(得分:7)

我们一直在做的最接近的事情是为其他代理人没有的特定代理添加所需的功能。因此,在Linux代理上,为该代理定义自定义功能。然后在部署要求中,包括该自定义功能。这应该可以防止Windows远程代理接收该作业。

答案 1 :(得分:1)

除了将代理专用于处理指定的部署项目之外,我认为没有任何应用程序功能可用于执行您要执行的操作。

然而,似乎实现相同目标的一种解决方法是在您的任务中包含一个虚拟步骤,该步骤不会做什么,只会导致Bamboo将其发送到某组代理。

例如,我遇到了相反的问题,我需要部署在Windows机器而不是Linux机器上运行。我用/?包含一个MSBuild任务对于解决方案名称,这会导致Bamboo将部署仅发送到Windows服务器,但该任务实际上什么都不做,只是在日志中打印MSBuild命令选项。

我相信你能找到类似Linux的东西。此外,我认为您可以使用Command任务类型指定自定义可执行文件。如果使用路径定义该命令并确保它存在于要定位的计算机上,则可能能够获得所需的结果。实际的可执行文件可能只是一个什么都不做的脚本。