Configuring an ephemeral agent template’s capabilities
Capabilities define what an ephemeral agent can do and what it supports. When you define capabilities, Bamboo will use them to find jobs and deployment environments with matching requirements. This way, you can always see which agents can run which builds and deployments.
- Bamboo does not configure any capabilities by default. You have to manually configure any capabilities that you need an ephemeral agent to have.
To make sure that any changes you've made to a template's capabilities take effect, you need to restart any builds in the queue that require these changes. This will ensure that your builds are up-to-date and running smoothly.
Before you begin
Create an ephemeral agent template.
To configure an ephemeral agent’s capabilities:
- In the upper-right corner of the screen, selectAdministration> Overview.
- From the menu on the Bamboo administration page, under Ephemeral agents, select Templates.
On the Manage ephemeral agent templates page, select an ephemeral agent template.
On the Ephemeral agent template details page, select Add a capability.
In the Add a capability dialog, select a capability type and configure it:
Capability type Configuration Custom Key — a unique key that identifies the capability
Value — the value of the associated with the key
Executable Executable type — the type of the executable that you want to make available to your build plans. An executable capability requires a label and the full file system path to the executable. The available options include:
Ant
Command
Fastlane
Grails
Maven 1.x
Maven 2.x
Maven 3.x
MSBuild
NAnt
Node.js
NUnit 2
NUnit 3
PHPUnit
PHPUnit 3.3.x
Visual Studio
VSTest Runner
Xcode
JDK Label — a unique label that identifies the JDK
- Java home path — the full file system path to the corresponding Java home directory
Perforce Perforce executable — the full file system path to the Perforce P4 client application executable Xcode SDK SDK name — the name of the Xcode SDK (foor example, “iOS 16.4” or “macOS 13.3”)
SDK label — the canonical name of the Xcode SDK.
To determine which SDKs are recognized by your version of Xcode, run
xcodebuild -showsdks
in the terminal.Git Executable type — the available options are:
Git
SSH
Path — the full file system path to the executable. Depending on the selected Executable type option, this should be the path to either the Git executable or the SSH executable. For example:
C:\Program Files (x86)\Git\git.exe
or/usr/local/git/bin/git
/usr/bin/ssh
Docker Path — the full file system path to the Docker executable (for example, /usr/bin/docker
)VS Test Adapter Discoverer Name — the name of the VS Test Adapter Discoverer. The name should follow the
<
VS_VERSION>.<FRIENDLY_NAME>
pattern (for example, VS 2013.Generic Test Discoverer)Supported file types — the file types that the Discoverer will search for runnable tests (for example,
.generictest
)The Supported file types value is for informational purposes only. Copy it from the output of the
vstest.console.exe /UseVsixExtensions:true /ListDiscoverers
command.
Select Add.
Bamboo will now use the capability you defined to find matching jobs and deployment environments. If you want to add more capabilities, repeat these steps for each additional capability.