Forge Home

bamboo

Downloads and installs Bamboo 5.x with a Postgres backend

60,424 downloads

59,055 latest version

1.4 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.7.0 (latest)
  • 1.6.1
  • 1.6.0
  • 1.5.0
  • 1.1.0
  • 1.0.0
released Nov 12th 2014
This version is compatible with:
  • Puppet Enterprise >=3.2.0 <=3.7.0
  • Puppet >=3.0.0 <4.0.0
  • RedHat, Centos, Ubuntu

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'mukaibot-bamboo', '1.7.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add mukaibot-bamboo
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install mukaibot-bamboo --version 1.7.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

mukaibot/bamboo — version 1.7.0 Nov 12th 2014

#Bamboo Build Status

####Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with Bamboo
  4. Usage - How to use the module
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module

##Overview

Installs Bamboo on a server, with a local Postgres instance. By default, you get Bamboo 5.7.0, Postgres 9.3 and Java 1.7.

##Module Description

This module will install Bamboo 5.7 on your server. It also installs Postgres 9.3, and creates a database and user for you. Currently, it does not configure Bamboo to point to the database - you will need to do that yourself.

##Setup

###What Bamboo affects

  • Java JDK
  • Postgresql

###Setup Requirements

Mandatory requirements: nanliu/staging puppetlabs/stdlib

Optional requirements: puppetlabs/postgresql puppetlabs/java

Note that the default configuration of the module makes used of all these requirements.

Do not define your bamboo user separately, use this module to do it.

##Usage

class { '::bamboo':
  username        => 'bamboo',
  pass_hash       => '$6$XZ3WAndARKKP9d$gv8gsLeoaaKuWD5pPF86V3Y8lb6OdhmEntFrpZeCf2NYX4pnRs5PrRdjcVOGVzeqrHLaZoUVKXNUEpjIr8rcP/',
  bamboo_version  => '5.7.0',
  bamboo_home     => '/home/bamboo/data',
  bamboo_data     => '/var/bamboo/data',
  java_manage     => true,
  db_manage       => true,
  db_name         => 'bamboo_db',
  db_pass         => 'awesomepass',
}

##Reference

Classes

####Public Classes

  • bamboo: Main class, includes all other classes.

####Private Classes

  • bamboo::database: Selects the database to install.
  • bamboo::database::postgresql: Manage the PG database for bamboo.
  • bamboo::install: Download and install Bamboo.
  • bamboo::java: Install and configure java.
  • bamboo::params: Default values for parameters.
  • bamboo::service: Manage the bamboo service.
  • bamboo::user: Creates the user and required directories.

####Parameters

The following parameters are valid for bamboo:

####username

The username for the bamboo user. Default is bamboo

####pass_hash

Password hash for the bamboo user. Use the mkpassword -m sha-512 command to set this. eg $6$XZ3WAndARKKP9d$gv8gsLeoaaKuWD5pPF86V3Y8lb6OdhmEntFrpZeCf2NYX4pnRs5PrRdjcVOGVzeqrHLaZoUVKXNUEpjIr8rcP/

####bamboo_version

Version of Bamboo to install. Default is 5.7.0

####bamboo_home

Path to the directory bamboo should use for installing the software. Default is /opt/atlassian/bamboo

####bamboo_data

Path to the directory bamboo will store it's data in. Default is /var/atlassian/application-data/bamboo

####bamboo_url

The url to the bamboo download.

####db_manage

Specify whether or not puppet should manage a database. Default is true.

####db_type

The type of database to install. Currently only postgres is supported, but there are plans to add mysql.

####db_name

The name of the database for bamboo to use.

####db_user

The database user for bamboo.

####db_pass

The database password for bamboo.

####java_manage

Specify whether or not puppet should manage java (jdk/jre).

####java_distribution

Specify to use the jdk, or jre.

####java_version

The version of java to install. Default will use the system default.

####java_pacakge

Then name of the java package to install.

####service_manage

Specify whether or not puppet will manage the bamboo service.

####service_ensure

Specify whether the service should be running or stopped.

####service_enable

Specify whether the service should start at boot time.

####`service_name

The name of the bamboo service.

##Limitations

This module can only install a Postgresql backend. The groundwork is there if you want a MySQL backend though - reach out and let us know!

Todo list:

  • Add a ton more spec tests
  • Add acceptance tests
  • Add mysql support
  • Add variable validation
  • Add class documentation
  • Add example wrapper class in the documentation
  • Add code to install Bamboo addons.

##Testing

bundle rake install
bundle rake spec
  or
bundle rake spec_standalone

##Development

Pull requests are welcome. Please use a feature branch.