Configuring remote agent capabilities using bamboo-capabilities.properties
You can define the capabilities for a specific remote agent by using a configuration file on the agent machine. When the Bamboo agent starts up, it will look in the current working directory of the remote agent Java runtime process (i.e. <bamboo-agent-home>/bin
when the remote agent is started with the <bamboo-agent-home>/bin/bamboo-agent.sh
script.) for a file named bamboo-capabilities.properties
. The capabilities defined in that file will then be published for the Bamboo agent after registering.
If the remote agent is started without the wrapper supervisor (as explained here: https://confluence.atlassian.com/bamboo/additional-remote-agent-options-436044733.html), then the current working directory for the Java runtime of the remote agent will be the directory where the Java command is run. In this case the bamboo-capabilities.properties
file needs to be located in this directory.
To configure remote agent capabilities:
- Shut down the remote agent, if it is running.
- Create a file named
bamboo-capabilities.properties
in the current working directory of the Java runtime process of the remote agent (i.e.<bamboo-agent-home>/bin
) on the agent machine. Edit the
bamboo-capabilities.properties
file to add capabilities. You need to use the formats shown below:
Notes:- Use '\' to escape spaces, periods and backslashes ('\').
- All capabilities other than custom capabilities should start with '
system
'.
JDK capabilities
system.jdk.JDK\ <jdk number>=<jdk location>
Examples:
system.jdk.JDK\ 1.6=/System/Library/Frameworks/JavaVM.framework/Versions/1.6 system.jdk.JDK\ 1.6=C:\\Program Files\\Java\\jdk6.0.17
Executable capabilities
system.builder.<executable type>.<executable label>=<executable path>
Examples:
system.builder.ant.Ant=/opt/apache-ant-1.7.1 system.builder.maven.Maven\ 1=/opt/maven-1.0.2 system.builder.mvn2.Maven\ 2=/opt/maven-2.0 system.builder.node.Node.js\ 0.12=/opt/node-0.12/bin/node system.builder.devenv.Visual\ Studio\ 2022=/usr/bin/code
Version control capabilities
system.<DVCS>.executable=<DVCS command location>
Examples:
system.git.executable=/usr/bin/git system.hg.executable=/usr/bin/hg
Perforce capabilities
system.p4Executable=<perforce executable location>
Example:system.p4Executable=/usr/bin/p4
Custom capabilities
<custom capability name>=<custom capability value>
Example:
system.os=osx
- Save your changes to the
bamboo-capabilities.properties
file. Start up your remote agent. The capabilities defined in the
bamboo-capabilities.properties
file will be configured for your agent.
Create a bamboo-capabilities.properties
file, based on an existing Agent
If you are looking to create a bamboo-capabilities.properties
file, based on an existing Remote Agent, please check the following KB article: