List of default keys for the bamboo-capabilities.properties file
Platform Notice: Data Center Only - This article only applies to Atlassian apps 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
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 17Examples:
system.jdk.JDK\ <jdk number>=<jdk location>
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/javaExecutable capabilities
# 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 ConsoleExamples:
system.builder.<executable type>.<executable label>=<executable path>
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.exeDocker capabilities
system.docker.executableExample:
system.docker.executable=<docker executable location>
system.docker.executable=/usr/bin/dockerDVCS capabilities
system.git.executable
system.hg.executableExamples:
system.<DVCS>.executable=<DVCS command location>
system.git.executable=/usr/bin/git
system.git.executable=C:\\opt\\git\\bin\\git.exePerforce capabilities
system.p4ExecutableExample:
system.p4Executable=<perforce executable location>
system.p4Executable=/usr/bin/p4Custom capabilities
<custom capability name>=<custom capability value>
operating.system=osx
hello=world
capability=valueYou 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
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:
select distinct KEY_IDENTIFIER from CAPABILITY;Capability prefixes must be provided in lowercase format, while the capability name can use a combination of uppercase, lowercase and space characters.
You might also be interested in using the REST API to export the remote agent capabilities:
Was this helpful?