- install modules required
- puppetdb
- postgresql
- puppetboard
- python
- create new profiles to manage each item (puppetdb/puppetboard)
- added puppetdb role
- include the puppetdb::master::config in puppetmaster role
- re-organised the puppetfile
- moved python to be managed by the python module
- added postgresql to list of managed repos
44 lines
1.5 KiB
Puppet
44 lines
1.5 KiB
Puppet
# Class: profiles::puppet::puppetboard
|
|
#
|
|
# This class manages the configuration of Puppetboard, a web frontend for PuppetDB.
|
|
#
|
|
# Parameters:
|
|
# - `python_version`: Specifies the Python version used for the virtualenv where Puppetboard runs.
|
|
# - `manage_virtualenv`: Determines if this class should handle the creation of the virtual environment for Puppetboard.
|
|
# - `reports_count`: Defines the number of reports to show per node in Puppetboard.
|
|
# - `offline_mode`: Determines if Puppetboard should work in offline mode or not.
|
|
# - `default_environment`: Sets the default Puppet environment to filter results in Puppetboard.
|
|
#
|
|
# Usage:
|
|
# This class can be called directly in your manifests or through Hiera.
|
|
#
|
|
# Example:
|
|
# To use the default parameters (as shown below), you can declare the class:
|
|
#
|
|
# include profiles::puppet::puppetboard
|
|
#
|
|
# Alternatively, you can customize the parameters:
|
|
#
|
|
# class { 'profiles::puppet::puppetboard':
|
|
# python_version => '3.8',
|
|
# reports_count => 50,
|
|
# offline_mode => false,
|
|
# }
|
|
#
|
|
class profiles::puppet::puppetboard (
|
|
String $python_version = '3.6',
|
|
Boolean $manage_virtualenv = false,
|
|
Integer $reports_count = 40,
|
|
Boolean $offline_mode = true,
|
|
String $default_environment = '*',
|
|
) {
|
|
|
|
class { 'puppetboard':
|
|
python_version => $python_version,
|
|
manage_virtualenv => $manage_virtualenv,
|
|
reports_count => $reports_count,
|
|
offline_mode => $offline_mode,
|
|
default_environment => $default_environment,
|
|
}
|
|
}
|