https://github.com/ericsson/puppet-module-puppetserver
https://github.com/ericsson/puppet-module-puppetserver
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ericsson/puppet-module-puppetserver
- Owner: Ericsson
- Created: 2016-08-01T08:15:47.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2022-10-18T14:56:01.000Z (about 3 years ago)
- Last Synced: 2025-05-07T18:16:26.443Z (8 months ago)
- Language: Ruby
- Size: 53.7 KB
- Stars: 0
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# puppetserver
## Overview
Puppet module to manage Puppet Server
### Dependencies
* [puppetlabs-stdlib](https://forge.puppetlabs.com/puppetlabs/stdlib) (>= 4.6.0)
* [puppetlabs-inifile](https://forge.puppetlabs.com/puppetlabs/inifile) (>= 1.1.0)
* [puppetlabs-hocon](https://forge.puppetlabs.com/puppetlabs/hocon) (>= 0.9.0 < 1.0.0)
## Usage
Manage puppetserver with default settings
include puppetserver
### Example configuration
class { puppetserver:
enable_ca => false,
java_args => {
'-Xms' => { 'value' => '2g' },
'-Xmx' => { 'value' => '4g' }
},
}
### Hiera Example
puppetserver::enable_ca: false
puppetserver::java_args:
'-Xmx':
value: '4g'
'-XX:MaxPermSize=':
value: '512m'
puppetserver::puppetserver_settings:
'jruby-puppet.max-active-instances':
value: 6
'profiler.enabled':
value: true
'puppet-admin.client-whitelitst':
type: 'array'
value:
- 'host1.domain.tld'
puppetserver::webserver_settings:
'webserver.ssl-port':
type: 'number'
value: 9140
## Reference
### Class: puppetserver
Class to install package and manage puppetserver service. Configuration is done by `puppetserver::config`.
#### `enable_ca`
Boolean to control if the CA service should be enabled.
Default: `true`
#### `package_ensure`
Ensure attribute for the package
Default: `'installed'`
#### `package_name`
Name of the package(s) to manage
Default: `'puppetserver'`
#### `service_enable`
Enable attribute for the service
Default: `true`
#### `service_ensure`
Ensure attribute for the service
Default: `'running'`
#### `java_args`
Hash with Java arguments to set for puppetserver. `puppetserver::config::java_arg` resources are created from hash.
Default: `undef`
#### `bootstrap_settings`
Hash with `file_line` resources for configuring lines in bootstrap.cfg
Default: `undef`
#### `bootstrap_settings_hiera_merge`
Boolean to trigger merging hashes for `bootstrap_settings` through all hiera levels.
Default: `false`
#### `puppetserver_settings`
Hash with HOCON style settings for puppetserver.conf. `puppetserver::config::hocon` resources are created from hash.
Default: `undef`
#### `puppetserver_settings_hiera_merge`
Boolean to trigger merging hashes for `puppetserver_settings` through all hiera levels.
Default: `false`
#### `webserver_settings`
Hash with HOCON style settings for webserver.conf. `puppetserver::config::hocon` resources are created from hash.
Default: `undef`
#### `webserver_settings_hiera_merge`
Boolean to trigger merging hashes for `webserver_settings` through all hiera levels.
Default: `false`
### Class: puppetserver::config
Internal class to do puppetserver configuration.
#### `bootstrap_cfg`
String to specify the path and filename to the bootstrapping configuration file. The default value is valid for puppetserver >= 2.5.0.
Default: `/etc/puppetlabs/puppetserver/services.d/ca.cfg`
#### `configdir`
String to specify the path to puppetservers configuration files and settings directory. The default value is valid for puppetserver >= 2.5.0.
Default: `/etc/puppetlabs/puppetserver/conf.d`
#### `enable_ca`
Boolean to control if the CA service should be enabled.
Default: `$::puppetserver::enable_ca`
#### `enable_tmpfix`
Boolean to control if the workaround for /tmp being mounted with noexec should get applied.
When active /var/lib/puppet/tmp will be created and used as temporary directory for puppetserver.
This implements the workaround described here: https://gist.github.com/csschwe/cbdd36e27ee708aba441#gistcomment-1336281
Default: `true`
#### `java_args`
Hash with Java arguments to set for puppetserver. `puppetserver::config::java_arg` resources are created from hash.
Default: `$::puppetserver::java_args`
#### `bootstrap_settings`
Hash with `file_line` resources for configuring lines in bootstrap.cfg
Default: `$::puppetserver::bootstrap_settings`
#### `puppetserver_settings`
Hash with HOCON style settings for puppetserver.conf. `puppetserver::config::hocon` resources are created from hash.
Default: `$::puppetserver::puppetserver_settings`
#### `webserver_settings`
Hash with HOCON style settings for webserver.conf. `puppetserver::config::hocon` resources are created from hash.
Default: `$::puppetserver::webserver_settings`
### Resource: puppetserver::config::java_arg
Wrapper to manage JAVA_ARGS in puppetserver sysconfig. Uses `ini_subsetting` from `puppetlabs-inifile`.
#### `namevar`
Name of the setting to change.
#### `ensure`
Set to `absent` to remove a setting
Default: `present`
#### `value`
Value for the setting.
### Resource: puppetserver::config::hocon
Wrapper to create `hocon_setting` resources from `puppetlabs-hocon`.
#### `ensure`
Ensures that the resource is present. Valid values are 'present', 'absent'.
Default: `present`
#### `path`
The HOCON file in which Puppet will ensure the specified setting.
#### `setting` (namevar)
The name of the HOCON file setting to be defined.
#### `type`
The type of the value passed into the value parameter. This value should be a string, with valid values being 'number', 'boolean', 'string', 'hash', 'array', 'array_element', and 'text'.
## Limitations
Module is tested using Puppet 3.8.x and Puppetserver 1.x on el7.