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:

  1. In the upper-right corner of the screen, select
    Administration bamboo administration icon
    > Overview.
  2. From the menu on the Bamboo administration page, under Ephemeral agents, select Templates.

  3. On the Manage ephemeral agent templates page, select an ephemeral agent template.

  4. On the Ephemeral agent template details page, select Add a capability.

  5. In the Add a capability dialog, select a capability type and configure it:

    Capability typeConfiguration
    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
    PerforcePerforce 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.

    tip/resting Created with Sketch.

    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

    DockerPath — 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 typesthe 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.

  6. 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.

Related pages

Last modified on Jun 1, 2023

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.