module-puppetdb/manifests/init.pp
Chris Price aef363a8bb Add support for specifying the version of the puppetdb packages
Prior to this commit, all of the puppetdb packages were being
installed with 'ensure=present'.  This commit changes things
so that you can explicitly specify a version if you desire;
the default is still 'present'.
2012-09-18 15:52:10 -07:00

54 lines
2 KiB
Puppet

# Class: puppetdb
#
# This class provides a simple way to get a puppetdb instance up and running
# with minimal effort. It will install and configure all necessary packages,
# including the database server and instance.
#
# This class is intended as a high-level abstraction to help simplify the process
# of getting your puppetdb server up and running; it wraps the slightly-lower-level
# classes `puppetdb::server` and `puppetdb::database::*`. For maximum
# configurability, you may choose not to use this class. You may prefer to
# use the `puppetdb::server` class directly, or manage your puppetdb setup on your
# own.
#
# In addition to this class, you'll need to configure your puppet master to use
# puppetdb. You can use the `puppetdb::master::config` class to accomplish this.
#
# Parameters:
# ['database'] - Which database backend to use; legal values are
# `postgres` (default) or `embedded`. (The `embedded`
# db can be used for very small installations or for
# testing, but is not recommended for use in production
# environments. For more info, see the puppetdb docs.)
# ['puppetdb_version'] - The version of the `puppetdb` package that should
# be installed. You may specify an explicit version
# number, 'present', or 'latest'. Defaults to
# 'present'.
#
# Actions:
# - Creates and manages a puppetdb server and its database server/instance.
#
# Requires:
# - `inkling/postgresql`
#
# Sample Usage:
# include puppetdb
#
# TODO: expose more parameters
class puppetdb(
$database = $puppetdb::params::database,
$puppetdb_version = $puppetdb::params::puppetdb_version,
) inherits puppetdb::params {
class { 'puppetdb::server':
database => $database,
puppetdb_version => $puppetdb_version,
}
if ($database == "postgres") {
class { 'puppetdb::database::postgresql':
before => Class['puppetdb::server']
}
}
}