是否可以在一台计算机上为Atlassian Bamboo安装多个远程代理?

时间:2012-04-04 12:45:28

标签: continuous-integration bamboo

我们公司生产跨平台软件,我们有Bamboo实例,它在各种不兼容的环境(linux,win,os x)下构建项目。有一个VM配置为在每个环境下构建。那么是否可以在每个VM上运行多个远程代理来执行不同项目的并发构建?

4 个答案:

答案 0 :(得分:4)

是的,这是可能的。请参阅Bamboo Remote Agent Installation guide中的“更改远程代理存储其数据的位置”部分。

为了使其工作,对于在同一台计算机上运行的每个远程代理,您需要指定为代理程序定义的不同位置以存储其数据(否则构建将无法尝试写入同一位置)。

答案 1 :(得分:3)

是的,可以在基于Windows和Linux的主机上运行多个远程代理。我目前管理Linux主机的远程代理,所以我不能评论Windows服务远程代理。

我实现了多个远程代理购买,首先为每个代理创建一个文件夹,然后在安装每个代理时指定每个代理的bamboo.home的位置。

在Bamboo主服务器上,您可以重命名远程代理,这样您就可以区分正在运行您构建作业的代理程序。

答案 2 :(得分:2)

我无法评论linux,但在Windows上,是的,你可以。

如果您更改默认的&#;;远程代理'像竹子远程代理1'竹子远程代理2'竹子远程代理2'由:

  1. 使用bin / uninstall-ntservcice卸载
  2. 编辑conf / wrapper.conf以更改服务名称和显示名称
  3. 使用bin / install-nt-service重新安装
  4. 执行此操作后,您应该可以正常运行多个代理。

答案 3 :(得分:0)

我能够在同一台服务器上创建两个代理。在这种情况下,我实际上想要相同的Bamboo-home集,以便任何一个代理可以构建到相同的位置...就在我的一些构建需要更长时间时,我有第二个代理坐在那里以获得排队等待更快的构建。在bamboo-agent.sh中,我改变了:

APP_NAME, APP_LONG_NAME, and REAL_DIR

我没有更改conf/wrapper.conf中的任何内容。在GUI中,我通过单击代理功能页面上的“编辑详细信息”更新了代理的名称。

为了以防万一,我还将bamboo-agent.cfg.xml中的agentUuid标记设为空,以为在启动代理时它会被覆盖。虽然我不知道这个字段已用于什么,但我不想让代理以同一个Uuid开头。

据我所知,这个工作符合我的预期。我可以从GUI中看到两个代理并同时启动两个构建。 FWIW,我不知道这是否被认为是一种被黑客攻击的方式。