List of default keys for the bamboo-capabilities.properties file
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.
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 17
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
system.jdk.JDK\ 11=/usr/lib/jvm/java-11/bin/java
system.jdk.JDK\ 17=/opt/java/openjdk17/bin/java
Executable 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 Console
Examples:
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
system.docker.executable
Example:
system.docker.executable=/usr/bin/docker
DVCS capabilities
system.git.executable
system.hg.executable
Examples:
system.git.executable=/usr/bin/git
system.git.executable=C:\\opt\\git\\bin\\git.exe
Perforce capabilities
system.p4Executable
Example:
system.p4Executable=/usr/bin/p4
Custom capabilities
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
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: