List of default keys for the bamboo-capabilities.properties file

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

You can define the capabilities of a specific remote agent by using a configuration file on the agent machine. Instructions on how to configure the capabilities properties file can be found here:

The purpose of this page is to provide a list of capabilities (keys) that can be used inside the capabilities properties file. You must use '\' to escape spaces, periods and backslashes ('\') as pointed out in the document aforementioned.

Solution

JDK capabilities

1 2 3 4 5 6 7 8 9 system.jdk.JDK system.jdk.JDK 1.5 system.jdk.JDK 1.6 system.jdk.JDK 1.7 system.jdk.JDK 1.8 system.jdk.JDK 1.9 system.jdk.JDK 10 system.jdk.JDK 11 system.jdk.JDK 17

Examples:

system.jdk.JDK\ <jdk number>=<jdk location>

1 2 3 4 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 system.jdk.JDK\ 11=/usr/lib/jvm/java-11/bin/java system.jdk.JDK\ 17=/opt/java/openjdk17/bin/java

Executable capabilities

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 # Ant system.builder.ant.Ant system.builder.ant.Ant 1.10 system.builder.ant.Ant 1.9 system.builder.ant.Nunit # Command system.builder.command.PowerShell 7.0 system.builder.command.bash 4.0 system.builder.command.bash 5.0 # Grails system.builder.grailsBuilder.Grails 2.4 system.builder.grailsBuilder.Grails 3.2 system.builder.grailsBuilder.Grails 3.3 # Fastlane system.builder.fastlane.Fastlane # MSBuild system.builder.msbuild.MSBuild v4.0 (32bit) system.builder.msbuild.MSBuild v4.0 (64bit) # Maven system.builder.maven.Maven 1.0 system.builder.mvn2.Maven 2 system.builder.mvn2.Maven 2.0 system.builder.mvn2.Maven 2.1 system.builder.mvn2.Maven 2.2 system.builder.mvn3.Maven 3 system.builder.mvn3.Maven 3.2 system.builder.mvn3.Maven 3.3 system.builder.mvn3.Maven 3.5 system.builder.mvn3.Maven 3.6 # Nant system.builder.nant.Nant # Node.js system.builder.node.Node.js system.builder.node.Node.js 4 system.builder.node.Node.js 6 system.builder.node.Node.js 8 system.builder.node.Node.js 10 # Nunit system.builder.nunit.Nunit # PHPUnit system.builder.phpunit.PHPUnit 3.7 system.builder.phpunit.PHPUnit 4.4 # PHPUnit 33X system.builder.phpunit33X.PHPUnit 10 system.builder.phpunit33X.PHPUnit 11 # Visual Studio system.builder.devenv.Visual Studio 2019 Dev16 system.builder.devenv.Visual Studio 2022 Dev17 # VSTest Runner system.builder.vstestconsole.VS Test Console

Examples:

system.builder.<executable type>.<executable label>=<executable path>

1 2 3 4 5 6 system.builder.ant.Ant=/opt/apache-ant-1.7.1 system.builder.mvn2.Maven\ 2=/opt/maven-2.0 system.builder.node.Node.js\ 0.12=/opt/node-0.12/bin/node system.builder.node.Node.js\ 4=C:\\opt\\node-4\\node.exe system.builder.msbuild.MSBuild\ v4.0\ (64bit)=C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\MSBuild.exe system.builder.command.PowerShell\ 7.0=C:\\Program Files\\PowerShell\\7\\pwsh.exe

Docker capabilities

1 system.docker.executable

Example:

system.docker.executable=<docker executable location>

1 system.docker.executable=/usr/bin/docker

DVCS capabilities

1 2 system.git.executable system.hg.executable

Examples:

system.<DVCS>.executable=<DVCS command location>

1 2 system.git.executable=/usr/bin/git system.git.executable=C:\\opt\\git\\bin\\git.exe

Perforce capabilities

1 system.p4Executable

Example:

system.p4Executable=<perforce executable location>

1 system.p4Executable=/usr/bin/p4

Custom capabilities

<custom capability name>=<custom capability value>

1 2 3 operating.system=osx hello=world capability=value

You can use pretty much whatever you want here as custom – however to prevent confusion between system capabilities and custom capabilities, you might want to avoid prefixing custom capabilities with system.

Additional notes

  1. Your Bamboo instance might already contain several other (different/custom) capabilities. Ultimately, you might want to retrieve this information directly from your Bamboo database using the following SQL statement:

    1 2 select distinct KEY_IDENTIFIER from CAPABILITY;
  2. Capability prefixes must be provided in lowercase format, while the capability name can use a combination of uppercase, lowercase and space characters.

  3. You might also be interested in using the REST API to export the remote agent capabilities:

Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.