Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Feb 17, 2026. It is now read-only.

kayak/puppet-bamboo_agent

Open more actions menu

Repository files navigation

bamboo_agent

Build Status

A Puppet module for managing Bamboo agents.

It can:

  • Install multiple agents side-by-side on a node
  • Ensure agents are running / started up after a reboot
  • Set properties in an agent's wrapper.conf
  • Manage agent capabilities

Examples

Install a single Bamboo agent in /usr/local/bamboo.

class { 'bamboo_agent':
  server_url => 'http://your.bamboo.server:8085',
}

Install two Bamboo agents in /home/bamboo.

class { 'bamboo_agent':
  server_url  => 'http://your.bamboo.server:8085',
  agents      => [1,2],
  install_dir => '/home/bamboo',
}

Advanced Examples

Install two Bamboo agents. Give agent 1 extra heap space by setting the wrapper.java.maxmemory property in wrapper.conf.

class { 'bamboo_agent':
  server_url => 'http://your.bamboo.server:8085',
  agents     => {
    '1' => {
      'wrapper_conf_properties' => {
         'wrapper.java.maxmemory' => '4096',
      }
     },
    '2' => {},
  }
}

Install two Bamboo agents. Give the second agent some custom capabilities.

class { 'bamboo_agent':
  server_url => 'http://your.bamboo.server:8085',
  agents     => {
    '1' => {},
    '2' => {
      'manage_capabilities' => true,
      'capabilities'        => {
         'system.builder.command.Bash' => '/bin/bash',
         'hostname'                    => $::hostname,
         'os'                          => $::operatingsystem,
      }
    }
  }
}

Install six bamboo agents. Give them all the hostname and Bash capabilities from the previous example, as well as a custom capability called reserved. Make reserved default to false, but true for agent 2.

class { 'bamboo_agent':
  server_url           => 'http://your.bamboo.server:8085',
  agent_defaults       => {
    'manage_capabilities' => true,
  },
  default_capabilities => {
    'system.builder.command.Bash' => '/bin/bash',
    'hostname'                    => $::hostname,
    'reserved'                    => false,
  },
  agents => {
    '1' => {},
    '2' => {
      'capabilities' => { 'reserved' => true }
    },
    '3' => {},
    '4' => {},
    '5' => {},
    '6' => {},
  }
}

See init.pp and agent.pp for more details.

Notes

Capabilities are configured using the bamboo-capabilities.properties file

It is strongly recommended to use Hiera automatic parameter lookup to configure agents. Below is the final example from above, translated into Hiera configuration format:

---
bamboo_agent::server_url: http://your.bamboo.server:8085
bamboo_agent::agent_defaults:
  manage_capabilities: true
bamboo_agent::default_capabilities:
  "system.builder.command.Bash": /bin/bash
  hostname: "%{::hostname}"
  reserved: false
bamboo_agent::agents
  1:
  2:
    capabilities:
      reserved: true
  3:
  4:
  5:
  6:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.