You can define the capabilities for a specific remote agent by configuring a bamboo-capabilities.properties file on the agent machine. When the bamboo agent starts up, it will look in the current runtime directory (i.e. <bamboo-agent-home>/bin) for a file named bamboo-capabilities.properties. The capabilities defined in that file will then be published for the bamboo agent after registering.

We are aware of an issue that prevents a remote agent capability from being updated once it has been added using the bamboo-capabilities.properties file. If you choose to add capabilities with the bamboo-capabilities.properties file, you will only be able to update them by deleting the capability in Bamboo and restarting the remote agent. Please see BAM-4213 for further details.

To configure remote agent capabilities:

  1. Shut down the remote agent, if it is running.
  2. Create a file named bamboo-capabilities.properties on the agent machine.
  3. Edit the bamboo-capabilities.properties file and add the desired capabilities to the agent as desired. You need to follow the capability formats below in the file:
    Notes:
    (tick) Use '\' to escape spaces, periods and backslashes ('\').

    (tick) All capabilities, other than custom capabilities, should start with 'system'.

    • JDK capabilities — system.jdk.JDK\ <jdk number>=<jdk location>
      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
      

      Note the double backslashes in the path for the example above.

    • Builder capabilities — system.builder.<builder type>.<builder label>=<builder path>
      Examples:

      system.builder.ant.Ant=/opt/apache-ant-1.7.1
      system.builder.maven.Maven\ 1=/opt/maven-1.0.2
      system.builder.mvn2.Maven\ 2=/opt/maven-2.0
      
    • Perforce capabilities — system.p4Executable=<perforce executable location>
      Example:

      system.p4Executable=/usr/bin/p4
      
    • Custom capabilities<custom capability name>=<custom capability value>
      Example:

      system.os=osx
      
  4. Save your changes to the bamboo-capabilities.properties file.
  5. Start up your remote agent. The capabilities defined in the bamboo-capabilities.properties file will be configured for your agent.

3 Comments

  1. Anonymous

    Can we please get an update to this page? There is no longer any concept of a 'builder' in bamboo, so do we still use system.builder? or system.executable? 

  2. user-6619f

    please update this page

  3. Jama Software

    FWIW, I was able to add a custom Executable named "Start/Stop VNC Server" using the following line:

    system.builder.command.Start/Stop\ VNC\ Server=/usr/local/bin/vnc_server