From 352e70ff553685239cc4976b05e0bd4b88b9c81c Mon Sep 17 00:00:00 2001 From: Lennart Betz Date: Sat, 24 Apr 2021 10:15:58 +0200 Subject: [PATCH] Release version 3.1.0 --- CHANGELOG.md | 32 +- REFERENCE.md | 1705 +++++++++------------------------ RELEASE.md | 43 +- manifests/feature/idomysql.pp | 4 +- manifests/feature/influxdb.pp | 2 +- metadata.json | 2 +- 6 files changed, 500 insertions(+), 1288 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 96335c6ab..662520a38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # Change Log +## [v3.1.0](https://github.com/icinga/puppet-icinga2/tree/v3.1.0) (2021-04-24) +[Full Changelog](https://github.com/icinga/puppet-icinga2/compare/v3.0.0...v3.1.0) + +**Implemented enhancements:** + +- Change owner of config file to icinga [\#660](https://github.com/Icinga/puppet-icinga2/issues/660) +- Add some words to reserve list [\#659](https://github.com/Icinga/puppet-icinga2/issues/659) +- Allow to send cert req without ticket [\#653](https://github.com/Icinga/puppet-icinga2/issues/653) +- Add new parameter logon\_account [\#650](https://github.com/Icinga/puppet-icinga2/issues/650) +- Manage owner, group and permission of config files [\#648](https://github.com/Icinga/puppet-icinga2/issues/648) + +**Fixed bugs:** + +- Added Dictionary to reserved list [\#655](https://github.com/Icinga/puppet-icinga2/pull/655) ([hp197](https://github.com/hp197)) +- Changed Integer parameters into Icinga2::Interval [\#654](https://github.com/Icinga/puppet-icinga2/pull/654) ([hp197](https://github.com/hp197)) + +**Closed issues:** + +- Support conditional blocks inside objects [\#652](https://github.com/Icinga/puppet-icinga2/issues/652) + +**Merged pull requests:** + +- docs: Add comma to clustering example [\#646](https://github.com/Icinga/puppet-icinga2/pull/646) ([fionera](https://github.com/fionera)) + ## [v3.0.0](https://github.com/icinga/puppet-icinga2/tree/v3.0.0) (2020-10-13) [Full Changelog](https://github.com/icinga/puppet-icinga2/compare/v2.4.1...v3.0.0) @@ -21,13 +45,13 @@ **Closed issues:** +- Accept SHA256 fingerprints \(since Icinga2 2.12.0\) [\#631](https://github.com/Icinga/puppet-icinga2/issues/631) +- Setting up certificates does not work if user != icinga [\#617](https://github.com/Icinga/puppet-icinga2/issues/617) - Add unit test for type logseverity [\#639](https://github.com/Icinga/puppet-icinga2/issues/639) - Add unit test for type logfacility [\#638](https://github.com/Icinga/puppet-icinga2/issues/638) - Add unit test for type interval [\#636](https://github.com/Icinga/puppet-icinga2/issues/636) - Add unit test for type fingerprint [\#635](https://github.com/Icinga/puppet-icinga2/issues/635) -- Accept SHA256 fingerprints \(since Icinga2 2.12.0\) [\#631](https://github.com/Icinga/puppet-icinga2/issues/631) - Change all TLS certificates and keys to datatype Stdlib::Base64 [\#623](https://github.com/Icinga/puppet-icinga2/issues/623) -- Setting up certificates does not work if user != icinga [\#617](https://github.com/Icinga/puppet-icinga2/issues/617) **Merged pull requests:** @@ -349,7 +373,7 @@ - icinga2 binary is wrong on rhel5 [\#409](https://github.com/Icinga/puppet-icinga2/issues/409) - Add feature Elasticsearch [\#408](https://github.com/Icinga/puppet-icinga2/issues/408) - Add feature elasticsearch [\#399](https://github.com/Icinga/puppet-icinga2/issues/399) -- Added cloudlinux to supported operating systems. Is nearly identical … [\#424](https://github.com/Icinga/puppet-icinga2/pull/424) ([Koma-Andrea](https://github.com/Koma-Andrea)) +- Added cloudlinux to supported operating systems. Is nearly identical … [\#424](https://github.com/Icinga/puppet-icinga2/pull/424) ([thekoma](https://github.com/thekoma)) **Fixed bugs:** @@ -883,4 +907,4 @@ ## [v0.6.1](https://github.com/icinga/puppet-icinga2/tree/v0.6.1) (2014-12-03) -\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* +\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* \ No newline at end of file diff --git a/REFERENCE.md b/REFERENCE.md index 62a91b50a..092e7904a 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -1,11 +1,12 @@ # Reference + ## Table of Contents -**Classes** +### Classes -_Public Classes_ +#### Public Classes * [`icinga2`](#icinga2): This module installs and configures Icinga 2. * [`icinga2::feature::api`](#icinga2featureapi): Configures the Icinga 2 feature api. @@ -29,66 +30,61 @@ _Public Classes_ * [`icinga2::feature::syslog`](#icinga2featuresyslog): Configures the Icinga 2 feature syslog. * [`icinga2::pki::ca`](#icinga2pkica): This class provides multiple ways to create the CA used by Icinga 2. -_Private Classes_ +#### Private Classes * `icinga2::config`: This class exists to manage general configuration files needed by Icinga 2 to run. * `icinga2::globals`: This class loads the default parameters by doing a hiera lookup. * `icinga2::install`: This class handles the installation of the Icinga 2 package. On Windows only chocolatey is supported as installation source. -* `icinga2::repo`: This class manages the packages.icinga.com repository based on the operating system. Windows is not supported. * `icinga2::service`: This class handles the Icinga 2 service. By default the service will start on boot and will be restarted if stopped. -**Defined types** +### Defined types -_Public Defined types_ +#### Public Defined types * [`icinga2::config::fragment`](#icinga2configfragment): Set a code fragment in a target configuration file. * [`icinga2::object::apiuser`](#icinga2objectapiuser): Manage Icinga 2 ApiUser objects. * [`icinga2::object::checkcommand`](#icinga2objectcheckcommand): Manage Icinga 2 Host objects. * [`icinga2::object::checkresultreader`](#icinga2objectcheckresultreader): Manage Icinga 2 CheckResultReader objects. -* [`icinga2::object::dependency`](#icinga2objectdependency): Manage Icinga 2 dependency objects. * [`icinga2::object::endpoint`](#icinga2objectendpoint): Manage Icinga 2 endpoint objects. * [`icinga2::object::eventcommand`](#icinga2objecteventcommand): Manage Icinga 2 EventCommand objects. * [`icinga2::object::host`](#icinga2objecthost): Manage Icinga 2 Host objects. * [`icinga2::object::hostgroup`](#icinga2objecthostgroup): Manage Icinga 2 HostGroup objects. -* [`icinga2::object::notification`](#icinga2objectnotification): Manage Icinga 2 notification objects. * [`icinga2::object::notificationcommand`](#icinga2objectnotificationcommand): Manage Icinga 2 notificationcommand objects. -* [`icinga2::object::scheduleddowntime`](#icinga2objectscheduleddowntime): Manage Icinga 2 scheduleddowntime objects. -* [`icinga2::object::service`](#icinga2objectservice): Manage Icinga 2 service objects. * [`icinga2::object::servicegroup`](#icinga2objectservicegroup): Manage Icinga 2 servicegroup objects. * [`icinga2::object::timeperiod`](#icinga2objecttimeperiod): Manage Icinga 2 timeperiod objects. * [`icinga2::object::user`](#icinga2objectuser): Manage Icinga 2 user objects. * [`icinga2::object::usergroup`](#icinga2objectusergroup): Manage Icinga 2 usergroup objects. * [`icinga2::object::zone`](#icinga2objectzone): Manage Icinga 2 zone objects. -_Private Defined types_ +#### Private Defined types * `icinga2::feature`: Private define resource to used by this module only. * `icinga2::object`: Define resource to used by this module only. -**Functions** +### Functions * [`icinga2::icinga2_attributes`](#icinga2icinga2_attributes): Summarise what the function does here * [`icinga2::icinga2_ticket_id`](#icinga2icinga2_ticket_id): Summarise what the function does here * [`icinga2_attributes`](#icinga2_attributes): Wrapper for config parser * [`icinga2_ticket_id`](#icinga2_ticket_id): Generates a auth ticket to get a certificate -**Data types** +### Data types * [`Icinga2::CustomAttributes`](#icinga2customattributes): A type for the structure of custom attributes -* [`Icinga2::Fingerprint`](#icinga2fingerprint): Type for certificate fingerprints +* [`Icinga2::Fingerprint`](#icinga2fingerprint): Type for certificate fingerprints SHA1: 160 bit (20 byte) digest SHA256: 256 bit (32 byte) digest * [`Icinga2::Interval`](#icinga2interval): A strict type for intervals * [`Icinga2::LogFacility`](#icinga2logfacility): A strict type of syslog facilities * [`Icinga2::LogSeverity`](#icinga2logseverity): A strict type for log levels ## Classes -### icinga2 +### `icinga2` This module installs and configures Icinga 2. -* **Note** Setting manage_package to false means that all package aren't handeld by the module included the IDO packages. +* **Note** Setting manage_packages to false means that all package aren't handeld by the module included the IDO packages. #### Examples @@ -99,11 +95,11 @@ This module installs and configures Icinga 2. include ::icinga2 ``` -##### If you want to use the official Icinga Project repository, enable the manage_repo parameter. +##### If you want to use the module icinga/puppet-icinga, e.g. to use the official Icinga Project repositories, enable the manage_repos parameter. ```puppet class { 'icinga2': - manage_repo => true, + manage_repos => true, } ``` @@ -124,7 +120,7 @@ package { 'icinga2': } class { '::icinga2': - manage_package => false, + manage_packages => false, } ``` @@ -145,8 +141,8 @@ class { 'icinga2': ```puppet class { '::icinga2': - manage_repo => true, - features => ['checker', 'mainlog', 'command'], + manage_repos => true, + features => ['checker', 'mainlog', 'command'], } ``` @@ -197,7 +193,7 @@ Data type: `Stdlib::Ensure::Service` Manages if the service should be stopped or running. -Default value: running +Default value: `running` ##### `enable` @@ -205,34 +201,50 @@ Data type: `Boolean` If set to true the Icinga 2 service will start on boot. -Default value: `true` +Default value: ``true`` ##### `manage_repo` Data type: `Boolean` -When set to true this module will install the packages.icinga.com repository. With this official repo you can get -the latest version of Icinga. When set to false the operating systems default will be used. As the Icinga Project -does not offer a Chocolatey repository, you will get a warning if you enable this parameter on Windows. +Deprecated, use manage_repos. + +Default value: ``false`` + +##### `manage_repos` + +Data type: `Boolean` + +When set to true this module will use the module icinga/puppet-icinga to manage repositories, +e.g. the release repo on packages.icinga.com repository by default, the EPEL repository or Backports. +For more information, see http://github.com/icinga/puppet-icinga. -Default value: `false` +Default value: ``false`` ##### `manage_package` Data type: `Boolean` +Deprecated, use manage_packages. + +Default value: ``false`` + +##### `manage_packages` + +Data type: `Boolean` + If set to false packages aren't managed. -Default value: `true` +Default value: ``true`` ##### `manage_selinux` Data type: `Boolean` If set to true the icinga selinux package is installed. Requires a `selinux_package_name` (icinga2::globals) -and `manage_package` has to be set to true. +and `manage_packages` has to be set to true. -Default value: `false` +Default value: ``false`` ##### `manage_service` @@ -241,7 +253,7 @@ Data type: `Boolean` If set to true the service is managed otherwise the service also isn't restarted if a config file changed. -Default value: `true` +Default value: ``true`` ##### `features` @@ -255,7 +267,7 @@ Data type: `Boolean` Define if configuration files for features not managed by Puppet should be purged. -Default value: `true` +Default value: ``true`` ##### `constants` @@ -263,7 +275,7 @@ Data type: `Hash` Hash of constants. Defaults are set in the params class. Your settings will be merged with the defaults. -Default value: {} +Default value: `{}` ##### `plugins` @@ -280,9 +292,9 @@ set this parameter to `false`. By default this parameter is `true`. It's also po own directory. This directory must be managed outside of this module as file resource with tag icinga2::config::file. -Default value: `true` +Default value: ``true`` -### icinga2::feature::api +### `icinga2::feature::api` Configures the Icinga 2 feature api. @@ -360,7 +372,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature api, absent disabled it. -Default value: present +Default value: `present` ##### `pki` @@ -377,34 +389,34 @@ Provides multiple sources for the certificate, key and ca. - none: Does nothing and you either have to manage the files yourself as file resources or use the ssl_key, ssl_cert, ssl_cacert parameters. -Default value: 'icinga2' +Default value: `'icinga2'` ##### `ssl_key` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The private key in a base64 encoded string to store in cert directory. This parameter requires pki to be set to 'none'. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The certificate in a base64 encoded string to store in cert directory This parameter requires pki to be set to 'none'. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The CA root certificate in a base64 encoded string to store in cert directory. This parameter requires pki to be set to 'none'. -Default value: `undef` +Default value: ``undef`` ##### `ssl_crl` @@ -412,7 +424,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Optional location of the certificate revocation list. -Default value: `undef` +Default value: ``undef`` ##### `accept_config` @@ -420,7 +432,7 @@ Data type: `Optional[Boolean]` Accept zone configuration. -Default value: `undef` +Default value: ``undef`` ##### `accept_commands` @@ -428,7 +440,7 @@ Data type: `Optional[Boolean]` Accept remote commands. -Default value: `undef` +Default value: ``undef`` ##### `max_anonymous_clients` @@ -436,7 +448,7 @@ Data type: `Optional[Integer[0]]` Limit the number of anonymous client connections (not configured endpoints and signing requests). -Default value: `undef` +Default value: ``undef`` ##### `ca_host` @@ -444,7 +456,7 @@ Data type: `Optional[Stdlib::Host]` This host will be connected to request the certificate. Set this if you use the icinga2 pki. -Default value: `undef` +Default value: ``undef`` ##### `ca_port` @@ -452,7 +464,7 @@ Data type: `Stdlib::Port::Unprivileged` Port of the 'ca_host'. -Default value: 5665 +Default value: `5665` ##### `fingerprint` @@ -462,16 +474,17 @@ Fingerprint of the CA host certificate for validation. Requires pki is set to `i You can get the fingerprint via 'openssl x509 -noout -fingerprint -sha256 -inform pem -in [certificate-file.crt]' on your CA host. (Icinga2 versions before 2.12.0 require '-sha1' as digest algorithm.) -Default value: `undef` +Default value: ``undef`` ##### `ticket_salt` Data type: `String` Salt to use for ticket generation. The salt is stored to api.conf if none or ca is chosen for pki. -Defaults to constant TicketSalt. +Defaults to constant TicketSalt. Keep in mind this parameter is parsed so please use only alpha numric +characters as salt or a constant. -Default value: 'TicketSalt' +Default value: `'TicketSalt'` ##### `ticket_id` @@ -481,7 +494,7 @@ If a ticket_id is given it will be used instead of generating an ticket_id. The ticket_id will be used only when requesting a certificate from the ca_host in case the pki is set to 'icinga2'. -Default value: `undef` +Default value: ``undef`` ##### `endpoints` @@ -489,7 +502,7 @@ Data type: `Hash[String, Hash]` Hash to configure endpoint objects. `NodeName` is a icnga2 constant. -Default value: { 'NodeName' => {} } +Default value: `{ 'NodeName' => {} }` ##### `zones` @@ -497,7 +510,7 @@ Data type: `Hash[String, Hash]` Hash to configure zone objects. `ZoneName` and `NodeName` are icinga2 constants. -Default value: { 'ZoneName' => { endpoints => [ 'NodeName' ] } } +Default value: `{ 'ZoneName' => { endpoints => [ 'NodeName' ] } }` ##### `ssl_protocolmin` @@ -505,7 +518,7 @@ Data type: `Optional[Enum['TLSv1', 'TLSv1.1', 'TLSv1.2']]` Minimal TLS version to require. -Default value: `undef` +Default value: ``undef`` ##### `ssl_handshake_timeout` @@ -513,7 +526,7 @@ Data type: `Optional[Icinga2::Interval]` TLS Handshake timeout. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cipher_list` @@ -521,7 +534,7 @@ Data type: `Optional[String]` List of allowed TLS ciphers, to finetune encryption. -Default value: `undef` +Default value: ``undef`` ##### `bind_host` @@ -529,7 +542,7 @@ Data type: `Optional[Stdlib::Host]` The IP address the api listener will be bound to. -Default value: `undef` +Default value: ``undef`` ##### `bind_port` @@ -537,7 +550,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` The port the api listener will be bound to. -Default value: `undef` +Default value: ``undef`` ##### `access_control_allow_origin` @@ -545,7 +558,7 @@ Data type: `Optional[Array[String]]` Specifies an array of origin URLs that may access the API. -Default value: `undef` +Default value: ``undef`` ##### `access_control_allow_credentials` @@ -553,7 +566,7 @@ Data type: `Optional[Boolean]` Indicates whether or not the actual request can be made using credentials. -Default value: `undef` +Default value: ``undef`` ##### `access_control_allow_headers` @@ -561,7 +574,7 @@ Data type: `Optional[String]` Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request. -Default value: `undef` +Default value: ``undef`` ##### `access_control_allow_methods` @@ -569,7 +582,7 @@ Data type: `Optional[Array[Enum['GET', 'POST', 'PUT', 'DELETE']]]` Used in response to a preflight request to indicate which HTTP methods can be used when making the actual request. -Default value: `undef` +Default value: ``undef`` ##### `environment` @@ -577,9 +590,9 @@ Data type: `Optional[String]` Used as suffix in TLS SNI extension name; default from constant ApiEnvironment, which is empty. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::checker +### `icinga2::feature::checker` Configures the Icinga 2 feature checker. @@ -596,7 +609,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature checker, absent disabled it. -Default value: present +Default value: `present` ##### `concurrent_checks` @@ -604,9 +617,9 @@ Data type: `Optional[Integer[1]]` The maximum number of concurrent checks. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::command +### `icinga2::feature::command` Configures the Icinga 2 feature command. @@ -620,7 +633,7 @@ Data type: `Enum['absent', 'present']` Set to present to enable the feature command, absent to disabled it. -Default value: present +Default value: `present` ##### `command_path` @@ -628,9 +641,9 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the command pipe. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::compatlog +### `icinga2::feature::compatlog` Configures the Icinga 2 feature compatlog. @@ -644,7 +657,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature compatlog, absent disabled it. -Default value: present +Default value: `present` ##### `log_dir` @@ -652,7 +665,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the log directory. -Default value: `undef` +Default value: ``undef`` ##### `rotation_method` @@ -660,9 +673,9 @@ Data type: `Optional[Enum['DAILY', 'HOURLY', 'MONTHLY', 'WEEKLY']]` Sets how often should the log file be rotated. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::debuglog +### `icinga2::feature::debuglog` Configures the Icinga 2 feature mainlog. @@ -676,7 +689,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature mainlog, absent disables it. -Default value: present +Default value: `present` ##### `path` @@ -684,9 +697,9 @@ Data type: `Stdlib::Absolutepath` Absolute path to the log file. -Default value: "${::icinga2::globals::log_dir}/debug.log" +Default value: `"${::icinga2::globals::log_dir}/debug.log"` -### icinga2::feature::elasticsearch +### `icinga2::feature::elasticsearch` Configures the Icinga 2 feature elasticsearch. @@ -711,7 +724,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature elasticsearch, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -719,7 +732,7 @@ Data type: `Optional[Stdlib::Host]` Elasticsearch host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -727,7 +740,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` Elasticsearch HTTP port. -Default value: `undef` +Default value: ``undef`` ##### `index` @@ -735,7 +748,7 @@ Data type: `Optional[String]` Elasticsearch index name. -Default value: `undef` +Default value: ``undef`` ##### `username` @@ -743,15 +756,15 @@ Data type: `Optional[String]` Elasticsearch user name. -Default value: `undef` +Default value: ``undef`` ##### `password` Data type: `Optional[String]` -Elasticsearch user password. +Elasticsearch user password. The password parameter isn't parsed anymore. -Default value: `undef` +Default value: ``undef`` ##### `enable_ssl` @@ -759,7 +772,7 @@ Data type: `Optional[Boolean]` Either enable or disable SSL. Other SSL parameters are only affected if this is set to 'true'. -Default value: `undef` +Default value: ``undef`` ##### `ssl_key_path` @@ -767,7 +780,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the private key. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert_path` @@ -775,7 +788,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert_path` @@ -783,31 +796,31 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the CA certificate. -Default value: `undef` +Default value: ``undef`` ##### `ssl_key` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The private key in a base64 encoded string to store in spicified ssl_key_path file. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The certificate in a base64 encoded to store in spicified ssl_cert_path file. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The CA root certificate in a base64 encoded string to store in spicified ssl_cacert_path file. -Default value: `undef` +Default value: ``undef`` ##### `enable_send_perfdata` @@ -815,7 +828,7 @@ Data type: `Optional[Boolean]` Whether to send check performance data metrics. -Default value: `undef` +Default value: ``undef`` ##### `flush_interval` @@ -823,7 +836,7 @@ Data type: `Optional[Icinga2::Interval]` How long to buffer data points before transferring to Elasticsearch. -Default value: `undef` +Default value: ``undef`` ##### `flush_threshold` @@ -831,7 +844,7 @@ Data type: `Optional[Integer]` How many data points to buffer before forcing a transfer to Elasticsearch. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -839,9 +852,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::gelf +### `icinga2::feature::gelf` Configures the Icinga 2 feature gelf. @@ -855,7 +868,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature gelf, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -863,7 +876,7 @@ Data type: `Optional[Stdlib::Host]` GELF receiver host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -871,7 +884,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` GELF receiver port. -Default value: `undef` +Default value: ``undef`` ##### `source` @@ -879,7 +892,7 @@ Data type: `Optional[String]` Source name for this instance. -Default value: `undef` +Default value: ``undef`` ##### `enable_send_perfdata` @@ -887,7 +900,7 @@ Data type: `Optional[Boolean]` Enable performance data for 'CHECK RESULT' events. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -895,9 +908,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::graphite +### `icinga2::feature::graphite` Configures the Icinga 2 feature graphite. @@ -924,7 +937,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature graphite, absent disabled it. -Default value: present +Default value: `present` ##### `host` @@ -932,7 +945,7 @@ Data type: `Optional[Stdlib::Host]` Graphite Carbon host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -940,7 +953,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` Graphite Carbon port. -Default value: `undef` +Default value: ``undef`` ##### `host_name_template` @@ -948,7 +961,7 @@ Data type: `Optional[String]` Template for metric path of hosts. -Default value: `undef` +Default value: ``undef`` ##### `service_name_template` @@ -956,7 +969,7 @@ Data type: `Optional[String]` Template for metric path of services. -Default value: `undef` +Default value: ``undef`` ##### `enable_send_thresholds` @@ -964,7 +977,7 @@ Data type: `Optional[Boolean]` -Default value: `undef` +Default value: ``undef`` ##### `enable_send_metadata` @@ -972,7 +985,7 @@ Data type: `Optional[Boolean]` -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -980,9 +993,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::icingadb +### `icinga2::feature::icingadb` Configures the Icinga 2 feature icingadb. @@ -996,7 +1009,7 @@ Data type: `Enum['absent', 'present']` Set to present, enables the feature icingadb, absent disabled it. -Default value: present +Default value: `present` ##### `host` @@ -1004,7 +1017,7 @@ Data type: `Optional[Stdlib::Host]` IcingaDB Redis host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -1012,7 +1025,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` IcingaDB Redis port. -Default value: `undef` +Default value: ``undef`` ##### `socket_path` @@ -1020,17 +1033,17 @@ Data type: `Optional[Stdlib::Absolutepath]` IcingaDB Redis unix sockt. Can be used instead of host and port attributes. -Default value: `undef` +Default value: ``undef`` ##### `password` Data type: `Optional[String]` -IcingaDB Redis password. +IcingaDB Redis password. The password parameter isn't parsed anymore. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::idomysql +### `icinga2::feature::idomysql` Installs and configures the Icinga 2 feature ido-mysql. @@ -1067,7 +1080,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature ido-mysql, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -1075,7 +1088,7 @@ Data type: `Stdlib::Host` MySQL database host address. -Default value: 'localhost' +Default value: `'localhost'` ##### `port` @@ -1083,7 +1096,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` MySQL database port. -Default value: `undef` +Default value: ``undef`` ##### `socket_path` @@ -1091,7 +1104,7 @@ Data type: `Optional[Stdlib::Absolutepath]` MySQL socket path. -Default value: `undef` +Default value: ``undef`` ##### `user` @@ -1099,13 +1112,13 @@ Data type: `String` MySQL database user with read/write permission to the icinga database. -Default value: 'icinga' +Default value: `'icinga'` ##### `password` Data type: `String` -MySQL database user's password. +MySQL database user's password. The password parameter isn't parsed anymore. ##### `database` @@ -1113,7 +1126,7 @@ Data type: `String` MySQL database name. -Default value: 'icinga' +Default value: `'icinga'` ##### `enable_ssl` @@ -1121,7 +1134,7 @@ Data type: `Boolean` Either enable or disable SSL/TLS. Other SSL parameters are only affected if this is set to 'true'. -Default value: `false` +Default value: ``false`` ##### `ssl_key_path` @@ -1129,7 +1142,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the private key. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert_path` @@ -1137,7 +1150,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert_path` @@ -1145,34 +1158,34 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the CA certificate. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_key` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The private key in a base64 encoded string to store in spicified ssl_key_path file. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The certificate in a base64 encoded string to store in spicified ssl_cert_path file. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The CA root certificate in a base64 encoded string to store in spicified ssl_cacert_path file. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_capath` @@ -1180,7 +1193,7 @@ Data type: `Optional[Stdlib::Absolutepath]` MySQL SSL trusted SSL CA certificates in PEM format directory path. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cipher` @@ -1188,7 +1201,7 @@ Data type: `Optional[String]` MySQL SSL list of allowed ciphers. Only valid if ssl is enabled. -Default value: `undef` +Default value: ``undef`` ##### `table_prefix` @@ -1196,7 +1209,7 @@ Data type: `Optional[String]` MySQL database table prefix. -Default value: `undef` +Default value: ``undef`` ##### `instance_name` @@ -1204,7 +1217,7 @@ Data type: `Optional[String]` Unique identifier for the local Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `instance_description` @@ -1212,7 +1225,7 @@ Data type: `Optional[String]` Description for the Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -1220,7 +1233,7 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` ##### `failover_timeout` @@ -1228,7 +1241,7 @@ Data type: `Optional[Icinga2::Interval]` Set the failover timeout in a HA cluster. Must not be lower than 60s. -Default value: `undef` +Default value: ``undef`` ##### `cleanup` @@ -1236,7 +1249,7 @@ Data type: `Optional[Hash[String,Icinga2::Interval]]` Hash with items for historical table cleanup. -Default value: `undef` +Default value: ``undef`` ##### `categories` @@ -1244,7 +1257,7 @@ Data type: `Optional[Array]` Array of information types that should be written to the database. -Default value: `undef` +Default value: ``undef`` ##### `import_schema` @@ -1252,9 +1265,9 @@ Data type: `Boolean` Whether to import the MySQL schema or not. -Default value: `false` +Default value: ``false`` -### icinga2::feature::idopgsql +### `icinga2::feature::idopgsql` Installs and configures the Icinga 2 feature ido-pgsql. @@ -1272,9 +1285,9 @@ postgresql::server::db { 'icinga2': } class{ 'icinga2::feature::idopgsql': - user => "icinga2", - password => "supersecret", - database => "icinga2", + user => 'icinga2', + password => 'supersecret', + database => 'icinga2', import_schema => true, require => Postgresql::Server::Db['icinga2'] } @@ -1290,7 +1303,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature ido-pgsql, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -1298,7 +1311,7 @@ Data type: `Stdlib::Host` PostgreSQL database host address. -Default value: 'localhost' +Default value: `'localhost'` ##### `port` @@ -1306,7 +1319,7 @@ Data type: `Stdlib::Port::Unprivileged` PostgreSQL database port. -Default value: 5432 +Default value: `5432` ##### `user` @@ -1314,13 +1327,13 @@ Data type: `String` PostgreSQL database user with read/write permission to the icinga database. -Default value: 'icinga' +Default value: `'icinga'` ##### `password` Data type: `String` -PostgreSQL database user's password. +PostgreSQL database user's password. The password parameter isn't parsed anymore. ##### `database` @@ -1328,7 +1341,7 @@ Data type: `String` PostgreSQL database name. -Default value: 'icinga' +Default value: `'icinga'` ##### `table_prefix` @@ -1336,7 +1349,7 @@ Data type: `Optional[String]` PostgreSQL database table prefix. -Default value: `undef` +Default value: ``undef`` ##### `instance_name` @@ -1344,7 +1357,7 @@ Data type: `Optional[String]` Unique identifier for the local Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `instance_description` @@ -1352,7 +1365,7 @@ Data type: `Optional[String]` Description of the Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -1360,7 +1373,7 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` ##### `failover_timeout` @@ -1368,7 +1381,7 @@ Data type: `Optional[Icinga2::Interval]` Set the failover timeout in a HA cluster. Must not be lower than 60s. -Default value: `undef` +Default value: ``undef`` ##### `cleanup` @@ -1376,7 +1389,7 @@ Data type: `Optional[Hash]` Hash with items for historical table cleanup. -Default value: `undef` +Default value: ``undef`` ##### `categories` @@ -1384,7 +1397,7 @@ Data type: `Optional[Array]` Array of information types that should be written to the database. -Default value: `undef` +Default value: ``undef`` ##### `import_schema` @@ -1392,9 +1405,9 @@ Data type: `Boolean` Whether to import the PostgreSQL schema or not. -Default value: `false` +Default value: ``false`` -### icinga2::feature::influxdb +### `icinga2::feature::influxdb` Configures the Icinga 2 feature influxdb. @@ -1421,7 +1434,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature influxdb, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -1429,7 +1442,7 @@ Data type: `Optional[Stdlib::Host]` InfluxDB host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -1437,7 +1450,7 @@ Data type: `Optional[Stdlib::Port]` InfluxDB HTTP port. -Default value: `undef` +Default value: ``undef`` ##### `database` @@ -1445,7 +1458,7 @@ Data type: `Optional[String]` InfluxDB database name. -Default value: `undef` +Default value: ``undef`` ##### `username` @@ -1453,15 +1466,15 @@ Data type: `Optional[String]` InfluxDB user name. -Default value: `undef` +Default value: ``undef`` ##### `password` Data type: `Optional[String]` -InfluxDB user password. +InfluxDB user password. The password parameter isn't parsed anymore. -Default value: `undef` +Default value: ``undef`` ##### `enable_ssl` @@ -1469,7 +1482,7 @@ Data type: `Optional[Boolean]` Either enable or disable SSL. Other SSL parameters are only affected if this is set to 'true'. -Default value: `undef` +Default value: ``undef`` ##### `ssl_key_path` @@ -1477,7 +1490,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the private key. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert_path` @@ -1485,7 +1498,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert_path` @@ -1493,31 +1506,31 @@ Data type: `Optional[Stdlib::Absolutepath]` Location of the CA certificate. -Default value: `undef` +Default value: ``undef`` ##### `ssl_key` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The private key in a base64 encoded string to store in ssl_key_path file. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The certificate in a base64 encoded string to store in ssl_cert_path file. -Default value: `undef` +Default value: ``undef`` ##### `ssl_cacert` -Data type: `Optional[String]` +Data type: `Optional[Stdlib::Base64]` The CA root certificate in a base64 encoded to store in ssl_cacert_path file. -Default value: `undef` +Default value: ``undef`` ##### `host_measurement` @@ -1525,7 +1538,7 @@ Data type: `String` The value of this is used for the measurement setting in host_template. -Default value: '$host.check_command$' +Default value: `'$host.check_command$'` ##### `host_tags` @@ -1533,7 +1546,7 @@ Data type: `Hash` Tags defined in this hash will be set in the host_template. -Default value: { hostname => '$host.name$' } +Default value: `{ hostname => '$host.name$' }` ##### `service_measurement` @@ -1541,7 +1554,7 @@ Data type: `String` The value of this is used for the measurement setting in host_template. -Default value: '$service.check_command$' +Default value: `'$service.check_command$'` ##### `service_tags` @@ -1549,7 +1562,7 @@ Data type: `Hash` Tags defined in this hash will be set in the service_template. -Default value: { hostname => '$host.name$', service => '$service.name$' } +Default value: `{ hostname => '$host.name$', service => '$service.name$' }` ##### `enable_send_thresholds` @@ -1557,7 +1570,7 @@ Data type: `Optional[Boolean]` Whether to send warn, crit, min & max tagged data. -Default value: `undef` +Default value: ``undef`` ##### `enable_send_metadata` @@ -1565,7 +1578,7 @@ Data type: `Optional[Boolean]` Whether to send check metadata e.g. states, execution time, latency etc. -Default value: `undef` +Default value: ``undef`` ##### `flush_interval` @@ -1573,7 +1586,7 @@ Data type: `Optional[Icinga2::Interval]` How long to buffer data points before transfering to InfluxDB. -Default value: `undef` +Default value: ``undef`` ##### `flush_threshold` @@ -1581,7 +1594,7 @@ Data type: `Optional[Integer[1]]` How many data points to buffer before forcing a transfer to InfluxDB. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -1589,9 +1602,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::livestatus +### `icinga2::feature::livestatus` Configures the Icinga 2 feature livestatus. @@ -1605,7 +1618,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature livestatus, absent disables it. -Default value: present +Default value: `present` ##### `socket_type` @@ -1613,7 +1626,7 @@ Data type: `Optional[Enum['tcp', 'unix']]` Specifies the socket type. Can be either 'tcp' or 'unix'. -Default value: `undef` +Default value: ``undef`` ##### `bind_host` @@ -1621,7 +1634,7 @@ Data type: `Optional[Stdlib::Host]` IP address to listen for connections. Only valid when socket_type is 'tcp'. -Default value: `undef` +Default value: ``undef`` ##### `bind_port` @@ -1629,7 +1642,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` Port to listen for connections. Only valid when socket_type is 'tcp'. -Default value: `undef` +Default value: ``undef`` ##### `socket_path` @@ -1637,7 +1650,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Specifies the path to the UNIX socket file. Only valid when socket_type is 'unix'. -Default value: `undef` +Default value: ``undef`` ##### `compat_log_path` @@ -1645,9 +1658,9 @@ Data type: `Optional[Stdlib::Absolutepath]` Required for historical table queries. Requires CompatLogger feature to be enabled. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::mainlog +### `icinga2::feature::mainlog` Configures the Icinga 2 feature mainlog. @@ -1661,7 +1674,7 @@ Data type: `Enum['absent', 'present']` Set to 'present' enables the feature mainlog, 'absent' disabled it. -Default value: present +Default value: `present` ##### `severity` @@ -1669,7 +1682,7 @@ Data type: `Icinga2::LogSeverity` You can set the log severity to 'information', 'notice', 'warning' or 'debug'. -Default value: 'information' +Default value: `'information'` ##### `path` @@ -1677,9 +1690,9 @@ Data type: `Stdlib::Absolutepath` Absolute path to the log file. -Default value: "${::icinga2::globals::log_dir}/icinga2.log" +Default value: `"${::icinga2::globals::log_dir}/icinga2.log"` -### icinga2::feature::notification +### `icinga2::feature::notification` Configures the Icinga 2 feature notification. @@ -1693,7 +1706,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature notification, absent disabled it. -Default value: present +Default value: `present` ##### `enable_ha` @@ -1701,9 +1714,9 @@ Data type: `Optional[Boolean]` Notifications are load-balanced amongst all nodes in a zone. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::opentsdb +### `icinga2::feature::opentsdb` Configures the Icinga 2 feature opentsdb. @@ -1717,7 +1730,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature opentsdb, absent disables it. -Default value: present +Default value: `present` ##### `host` @@ -1725,7 +1738,7 @@ Data type: `Optional[Stdlib::Host]` OpenTSDB host address. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -1733,7 +1746,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` OpenTSDB port. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -1741,9 +1754,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::perfdata +### `icinga2::feature::perfdata` Configures the Icinga 2 feature perfdata. @@ -1757,7 +1770,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature perfdata, absent disables it. -Default value: present +Default value: `present` ##### `host_perfdata_path` @@ -1765,7 +1778,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the perfdata file for hosts. -Default value: `undef` +Default value: ``undef`` ##### `service_perfdata_path` @@ -1773,7 +1786,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the perfdata file for services. -Default value: `undef` +Default value: ``undef`` ##### `host_temp_path` @@ -1781,7 +1794,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Path to the temporary host file. -Default value: `undef` +Default value: ``undef`` ##### `service_temp_path` @@ -1789,7 +1802,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Path to the temporary service file. -Default value: `undef` +Default value: ``undef`` ##### `host_format_template` @@ -1797,7 +1810,7 @@ Data type: `Optional[String]` Host Format template for the performance data file. -Default value: `undef` +Default value: ``undef`` ##### `service_format_template` @@ -1805,7 +1818,7 @@ Data type: `Optional[String]` Service Format template for the performance data file. -Default value: `undef` +Default value: ``undef`` ##### `rotation_interval` @@ -1814,7 +1827,7 @@ Data type: `Optional[Icinga2::Interval]` Rotation interval for the files specified in {host,service}_perfdata_path. Can be written in minutes or seconds, i.e. 1m or 15s. -Default value: `undef` +Default value: ``undef`` ##### `enable_ha` @@ -1822,9 +1835,9 @@ Data type: `Optional[Boolean]` Enable the high availability functionality. Only valid in a cluster setup. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::statusdata +### `icinga2::feature::statusdata` Configures the Icinga 2 feature statusdata. @@ -1838,7 +1851,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature statusdata, absent disables it. -Default value: present +Default value: `present` ##### `status_path` @@ -1846,7 +1859,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the status.dat file. -Default value: `undef` +Default value: ``undef`` ##### `objects_path` @@ -1854,7 +1867,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Absolute path to the object.cache file. -Default value: `undef` +Default value: ``undef`` ##### `update_interval` @@ -1863,9 +1876,9 @@ Data type: `Optional[Icinga2::Interval]` Interval in seconds to update both status files. You can also specify it in minutes with the letter m or in seconds with s. -Default value: `undef` +Default value: ``undef`` -### icinga2::feature::syslog +### `icinga2::feature::syslog` Configures the Icinga 2 feature syslog. @@ -1879,7 +1892,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the feature syslog, absent disables it. -Default value: present +Default value: `present` ##### `severity` @@ -1887,7 +1900,7 @@ Data type: `Optional[Icinga2::LogSeverity]` You can choose the log severity between information, notice, warning or debug. -Default value: `undef` +Default value: ``undef`` ##### `facility` @@ -1896,9 +1909,9 @@ Data type: `Optional[Icinga2::LogFacility]` Defines the facility to use for syslog entries. This can be a facility constant like FacilityDaemon. -Default value: `undef` +Default value: ``undef`` -### icinga2::pki::ca +### `icinga2::pki::ca` This class provides multiple ways to create the CA used by Icinga 2. @@ -1933,7 +1946,7 @@ Data type: `Optional[String]` Content of the CA certificate. If this is unset, a certificate will be generated with the Icinga 2 CLI. -Default value: `undef` +Default value: ``undef`` ##### `ca_key` @@ -1941,11 +1954,11 @@ Data type: `Optional[String]` Content of the CA key. If this is unset, a key will be generated with the Icinga 2 CLI. -Default value: `undef` +Default value: ``undef`` ## Defined types -### icinga2::config::fragment +### `icinga2::config::fragment` Set a code fragment in a target configuration file. @@ -2001,7 +2014,7 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted in alpha numeric order. Defaults to `00`. -Default value: '00' +Default value: `'00'` ##### `code_name` @@ -2009,9 +2022,9 @@ Data type: `String` -Default value: $title +Default value: `$title` -### icinga2::object::apiuser +### `icinga2::object::apiuser` Manage Icinga 2 ApiUser objects. @@ -2069,7 +2082,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `apiuser_name` @@ -2077,15 +2090,15 @@ Data type: `String` Set the name of the apiuser object. -Default value: $title +Default value: `$title` ##### `password` Data type: `Optional[String]` -Password string. +Password string. The password parameter isn't parsed anymore. -Default value: `undef` +Default value: ``undef`` ##### `client_cn` @@ -2093,7 +2106,7 @@ Data type: `Optional[String]` Optional. Client Common Name (CN). -Default value: `undef` +Default value: ``undef`` ##### `permissions` @@ -2102,7 +2115,7 @@ Data type: `Optional[Array]` Array of permissions. Either as string or dictionary with the keys permission and filter. The latter must be specified as function. -Default value: `undef` +Default value: ``undef`` ##### `target` @@ -2117,9 +2130,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 30 +Default value: `30` -### icinga2::object::checkcommand +### `icinga2::object::checkcommand` Manage Icinga 2 Host objects. @@ -2133,7 +2146,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `checkcommand_name` @@ -2141,7 +2154,7 @@ Data type: `String` Title of the CheckCommand object. -Default value: $title +Default value: `$title` ##### `import` @@ -2149,7 +2162,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `command` @@ -2159,7 +2172,7 @@ The command. This can either be an array of individual command arguments. Alternatively a string can be specified in which case the shell interpreter (usually /bin/sh) takes care of parsing the command. When using the "arguments" attribute this must be an array. Can be specified as function for advanced implementations. -Default value: `undef` +Default value: ``undef`` ##### `env` @@ -2167,7 +2180,7 @@ Data type: `Optional[Hash]` A dictionary of macros which should be exported as environment variables prior to executing the command. -Default value: `undef` +Default value: ``undef`` ##### `vars` @@ -2177,15 +2190,15 @@ A dictionary containing custom attributes that are specific to this service, a string to do operations on this dictionary or an array for multiple use of custom attributes. -Default value: `undef` +Default value: ``undef`` ##### `timeout` -Data type: `Optional[Integer[1]]` +Data type: `Optional[Icinga2::Interval]` The command timeout in seconds. -Default value: `undef` +Default value: ``undef`` ##### `arguments` @@ -2193,7 +2206,7 @@ Data type: `Optional[Variant[Hash, String]]` A dictionary of command arguments. -Default value: `undef` +Default value: ``undef`` ##### `target` @@ -2208,7 +2221,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `order` @@ -2216,9 +2229,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 15 +Default value: `15` -### icinga2::object::checkresultreader +### `icinga2::object::checkresultreader` Manage Icinga 2 CheckResultReader objects. @@ -2232,7 +2245,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `checkresultreader_name` @@ -2240,7 +2253,7 @@ Data type: `String` Set the Icinga 2 name of the ceckresultreader object. -Default value: $title +Default value: `$title` ##### `spool_dir` @@ -2248,180 +2261,7 @@ Data type: `Optional[Stdlib::Absolutepath]` The directory which contains the check result files. -Default value: `undef` - -##### `target` - -Data type: `Stdlib::Absolutepath` - -Destination config file to store in this object. File will be declared the -first time. - -##### `order` - -Data type: `Variant[String, Integer]` - -String or integer to set the position in the target file, sorted alpha numeric. - -Default value: '05' - -### icinga2::object::dependency - -Manage Icinga 2 dependency objects. - -#### Parameters - -The following parameters are available in the `icinga2::object::dependency` defined type. - -##### `ensure` - -Data type: `Enum['absent', 'present']` - -Set to present enables the object, absent disables it. - -Default value: present - -##### `dependency_name` - -Data type: `String` - -Set the Icinga 2 name of the dependency object. - -Default value: $title - -##### `parent_host_name` - -Data type: `Optional[String]` - -The parent host. - -Default value: `undef` - -##### `parent_service_name` - -Data type: `Optional[String]` - -The parent service. If omitted, this dependency object is treated as host -dependency. - -Default value: `undef` - -##### `child_host_name` - -Data type: `Optional[String]` - -The child host. - -Default value: `undef` - -##### `child_service_name` - -Data type: `Optional[String]` - -The child service. If omitted, this dependency object is treated as host -dependency. - -Default value: `undef` - -##### `disable_checks` - -Data type: `Optional[Boolean]` - -Whether to disable checks when this dependency fails. - -Default value: `undef` - -##### `disable_notifications` - -Data type: `Optional[Boolean]` - -Whether to disable notifications when this dependency fails. -true. - -Default value: `undef` - -##### `ignore_soft_states` - -Data type: `Optional[Boolean]` - -Whether to ignore soft states for the reachability calculation. -true. - -Default value: `undef` - -##### `period` - -Data type: `Optional[String]` - -Time period during which this dependency is enabled. - -Default value: `undef` - -##### `states` - -Data type: `Optional[Array]` - -A list of state filters when this dependency should be OK. - -Default value: `undef` - -##### `apply` - -Data type: `Variant[Boolean, String]` - -Dispose an apply instead an object if set to 'true'. Value is taken as statement, -i.e. 'vhost => config in host.vars.vhosts'. - -Default value: `false` - -##### `prefix` - -Data type: `Variant[Boolean, String]` - -Set dependency_name as prefix in front of 'apply for'. Only effects if apply is a string. - -Default value: `false` - -##### `apply_target` - -Data type: `Enum['Host', 'Service']` - -An object type on which to target the apply rule. Valid values are `Host` -and `Service`. - -Default value: 'Host' - -##### `assign` - -Data type: `Array` - -Assign user group members using the group assign rules. - -Default value: [] - -##### `ignore` - -Data type: `Array` - -Exclude users using the group ignore rules. - -Default value: [] - -##### `template` - -Data type: `Boolean` - -Set to true creates a template instead of an object. - -Default value: `false` - -##### `import` - -Data type: `Array` - -Sorted List of templates to include. - -Default value: [] +Default value: ``undef`` ##### `target` @@ -2436,9 +2276,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 70 +Default value: `'05'` -### icinga2::object::endpoint +### `icinga2::object::endpoint` Manage Icinga 2 endpoint objects. @@ -2452,7 +2292,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `endpoint_name` @@ -2460,7 +2300,7 @@ Data type: `String` Set the Icinga 2 name of the endpoint object. -Default value: $title +Default value: `$title` ##### `host` @@ -2468,7 +2308,7 @@ Data type: `Optional[Stdlib::Host]` Optional. The IP address of the remote Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `port` @@ -2476,7 +2316,7 @@ Data type: `Optional[Stdlib::Port::Unprivileged]` The service name/port of the remote Icinga 2 instance. -Default value: `undef` +Default value: ``undef`` ##### `log_duration` @@ -2487,7 +2327,7 @@ Attribute is specified in seconds. If log_duration is set to 0, replaying logs i You could also specify the value in human readable format like 10m for 10 minutes or 1h for one hour. -Default value: `undef` +Default value: ``undef`` ##### `target` @@ -2496,7 +2336,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Destination config file to store in this object. File will be declared at the first time. -Default value: `undef` +Default value: ``undef`` ##### `order` @@ -2504,9 +2344,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 40 +Default value: `40` -### icinga2::object::eventcommand +### `icinga2::object::eventcommand` Manage Icinga 2 EventCommand objects. @@ -2520,7 +2360,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `eventcommand_name` @@ -2528,7 +2368,7 @@ Data type: `String` Set the Icinga 2 name of the eventcommand object. -Default value: $title +Default value: `$title` ##### `command` @@ -2538,7 +2378,7 @@ The command. This can either be an array of individual command arguments. Alternatively a string can be specified in which case the shell interpreter (usually /bin/sh) takes care of parsing the command. -Default value: `undef` +Default value: ``undef`` ##### `env` @@ -2546,7 +2386,7 @@ Data type: `Optional[Hash]` A dictionary of macros which should be exported as environment variables prior to executing the command. -Default value: `undef` +Default value: ``undef`` ##### `vars` @@ -2556,15 +2396,15 @@ A dictionary containing custom attributes that are specific to this service, a string to do operations on this dictionary or an array for multiple use of custom attributes. -Default value: `undef` +Default value: ``undef`` ##### `timeout` -Data type: `Optional[Integer[1]]` +Data type: `Optional[Icinga2::Interval]` The command timeout in seconds. -Default value: `undef` +Default value: ``undef`` ##### `arguments` @@ -2572,7 +2412,7 @@ Data type: `Optional[Hash]` A dictionary of command arguments. -Default value: `undef` +Default value: ``undef`` ##### `target` @@ -2587,7 +2427,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `order` @@ -2595,9 +2435,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 20 +Default value: `20` -### icinga2::object::host +### `icinga2::object::host` Manage Icinga 2 Host objects. @@ -2611,7 +2451,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `host_name` @@ -2619,7 +2459,7 @@ Data type: `String` Hostname of the Host object. -Default value: $title +Default value: `$title` ##### `import` @@ -2627,7 +2467,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `display_name` @@ -2635,7 +2475,7 @@ Data type: `Optional[String]` A short description of the host (e.g. displayed by external interfaces instead of the name if set). -Default value: `undef` +Default value: ``undef`` ##### `address` @@ -2643,7 +2483,7 @@ Data type: `Optional[Stdlib::Host]` The host's address v4. -Default value: `undef` +Default value: ``undef`` ##### `address6` @@ -2651,7 +2491,7 @@ Data type: `Optional[Stdlib::Host]` The host's address v6. -Default value: `undef` +Default value: ``undef`` ##### `vars` @@ -2661,7 +2501,7 @@ A dictionary containing custom attributes that are specific to this service, a string to do operations on this dictionary or an array for multiple use of custom attributes. -Default value: `undef` +Default value: ``undef`` ##### `groups` @@ -2669,7 +2509,7 @@ Data type: `Optional[Array]` A list of host groups this host belongs to. -Default value: `undef` +Default value: ``undef`` ##### `check_command` @@ -2677,7 +2517,7 @@ Data type: `Optional[String]` The name of the check command. -Default value: `undef` +Default value: ``undef`` ##### `max_check_attempts` @@ -2685,7 +2525,7 @@ Data type: `Optional[Integer[1]]` The number of times a host is re-checked before changing into a hard state. -Default value: `undef` +Default value: ``undef`` ##### `check_period` @@ -2693,7 +2533,7 @@ Data type: `Optional[String]` The name of a time period which determines when this host should be checked. -Default value: `undef` +Default value: ``undef`` ##### `check_timeout` @@ -2701,7 +2541,7 @@ Data type: `Optional[Icinga2::Interval]` Check command timeout in seconds. Overrides the CheckCommand's timeout attribute. -Default value: `undef` +Default value: ``undef`` ##### `check_interval` @@ -2709,7 +2549,7 @@ Data type: `Optional[Icinga2::Interval]` The check interval (in seconds). This interval is used for checks when the host is in a HARD state. -Default value: `undef` +Default value: ``undef`` ##### `retry_interval` @@ -2717,7 +2557,7 @@ Data type: `Optional[Icinga2::Interval]` The retry interval (in seconds). This interval is used for checks when the host is in a SOFT state. -Default value: `undef` +Default value: ``undef`` ##### `enable_notifications` @@ -2725,7 +2565,7 @@ Data type: `Optional[Boolean]` Whether notifications are enabled. -Default value: `undef` +Default value: ``undef`` ##### `enable_active_checks` @@ -2733,7 +2573,7 @@ Data type: `Optional[Boolean]` Whether active checks are enabled. -Default value: `undef` +Default value: ``undef`` ##### `enable_passive_checks` @@ -2741,7 +2581,7 @@ Data type: `Optional[Boolean]` Whether passive checks are enabled. -Default value: `undef` +Default value: ``undef`` ##### `enable_event_handler` @@ -2749,7 +2589,7 @@ Data type: `Optional[Boolean]` Enables event handlers for this host. -Default value: `undef` +Default value: ``undef`` ##### `enable_flapping` @@ -2757,7 +2597,7 @@ Data type: `Optional[Boolean]` Whether flap detection is enabled. -Default value: `undef` +Default value: ``undef`` ##### `enable_perfdata` @@ -2765,7 +2605,7 @@ Data type: `Optional[Boolean]` Whether performance data processing is enabled. -Default value: `undef` +Default value: ``undef`` ##### `event_command` @@ -2774,7 +2614,7 @@ Data type: `Optional[String]` The name of an event command that should be executed every time the host's state changes or the host is in a SOFT state. -Default value: `undef` +Default value: ``undef`` ##### `flapping_threshold_low` @@ -2782,7 +2622,7 @@ Data type: `Optional[Integer[1]]` Flapping lower bound in percent for a host to be considered not flapping. -Default value: `undef` +Default value: ``undef`` ##### `flapping_threshold_high` @@ -2790,7 +2630,7 @@ Data type: `Optional[Integer[1]]` Flapping upper bound in percent for a host to be considered flapping. -Default value: `undef` +Default value: ``undef`` ##### `volatile` @@ -2798,7 +2638,7 @@ Data type: `Optional[Boolean]` The volatile setting enables always HARD state types if NOT-OK state changes occur. -Default value: `undef` +Default value: ``undef`` ##### `zone` @@ -2806,7 +2646,7 @@ Data type: `Optional[String]` The zone this object is a member of. -Default value: `undef` +Default value: ``undef`` ##### `command_endpoint` @@ -2814,7 +2654,7 @@ Data type: `Optional[String]` The endpoint where commands are executed on. -Default value: `undef` +Default value: ``undef`` ##### `notes` @@ -2822,7 +2662,7 @@ Data type: `Optional[String]` Notes for the host. -Default value: `undef` +Default value: ``undef`` ##### `notes_url` @@ -2830,7 +2670,7 @@ Data type: `Optional[String]` Url for notes for the host (for example, in notification commands). -Default value: `undef` +Default value: ``undef`` ##### `action_url` @@ -2838,15 +2678,15 @@ Data type: `Optional[String]` Url for actions for the host (for example, an external graphing tool). -Default value: `undef` +Default value: ``undef`` ##### `icon_image` -Data type: `Optional[Stdlib::Absolutepath]` +Data type: `Optional[String]` Icon image for the host. Used by external interfaces only. -Default value: `undef` +Default value: ``undef`` ##### `icon_image_alt` @@ -2854,7 +2694,7 @@ Data type: `Optional[String]` Icon image description for the host. Used by external interface only. -Default value: `undef` +Default value: ``undef`` ##### `template` @@ -2862,7 +2702,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `target` @@ -2877,9 +2717,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 50 +Default value: `50` -### icinga2::object::hostgroup +### `icinga2::object::hostgroup` Manage Icinga 2 HostGroup objects. @@ -2906,7 +2746,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `display_name` @@ -2914,7 +2754,7 @@ Data type: `Optional[String]` A short description of the host group. -Default value: `undef` +Default value: ``undef`` ##### `groups` @@ -2922,7 +2762,7 @@ Data type: `Optional[Array]` An array of nested group names. -Default value: `undef` +Default value: ``undef`` ##### `assign` @@ -2930,7 +2770,7 @@ Data type: `Array` Assign host group members using the group rules. -Default value: [] +Default value: `[]` ##### `ignore` @@ -2938,7 +2778,7 @@ Data type: `Array` Ignore host group members using the group rules. -Default value: [] +Default value: `[]` ##### `target` @@ -2953,7 +2793,7 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 55 +Default value: `55` ##### `hostgroup_name` @@ -2961,15 +2801,15 @@ Data type: `String` -Default value: $title +Default value: `$title` -### icinga2::object::notification +### `icinga2::object::notificationcommand` -Manage Icinga 2 notification objects. +Manage Icinga 2 notificationcommand objects. #### Parameters -The following parameters are available in the `icinga2::object::notification` defined type. +The following parameters are available in the `icinga2::object::notificationcommand` defined type. ##### `ensure` @@ -2977,32 +2817,34 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` -##### `notification_name` +##### `notificationcommand_name` Data type: `String` -Set the Icinga 2 name of the notification object. +Set the Icinga 2 name of the notificationcommand object. -Default value: $title +Default value: `$title` -##### `host_name` +##### `command` -Data type: `Optional[String]` +Data type: `Optional[Variant[Array, String]]` -The name of the host this notification belongs to. +The command. This can either be an array of individual command arguments. +Alternatively a string can be specified in which case the shell interpreter +(usually /bin/sh) takes care of parsing the command. -Default value: `undef` +Default value: ``undef`` -##### `service_name` +##### `env` -Data type: `Optional[String]` +Data type: `Optional[Hash]` -The short name of the service this notification belongs to. If omitted, this -notification object is treated as host notification. +A dictionary of macros which should be exported as environment variables +prior to executing the command. -Default value: `undef` +Default value: ``undef`` ##### `vars` @@ -3012,82 +2854,23 @@ A dictionary containing custom attributes that are specific to this service, a string to do operations on this dictionary or an array for multiple use of custom attributes. -Default value: `undef` +Default value: ``undef`` -##### `users` - -Data type: `Optional[Variant[String, Array]]` - -A list of user names who should be notified. - -Default value: `undef` - -##### `user_groups` +##### `timeout` -Data type: `Optional[Variant[String, Array]]` +Data type: `Optional[Icinga2::Interval]` -A list of user group names who should be notified. +The command timeout in seconds. -Default value: `undef` +Default value: ``undef`` -##### `times` +##### `arguments` Data type: `Optional[Hash]` -A dictionary containing begin and end attributes for the notification. - -Default value: `undef` - -##### `command` - -Data type: `Optional[String]` - -The name of the notification command which should be executed when the -notification is triggered. - -Default value: `undef` - -##### `interval` - -Data type: `Optional[Variant[Icinga2::Interval,Pattern[/(host|service)\./]]]` - -The notification interval (in seconds). This interval is used for active -notifications. - -Default value: `undef` - -##### `period` - -Data type: `Optional[String]` - -The name of a time period which determines when this notification should be -triggered. - -Default value: `undef` - -##### `zone` - -Data type: `Optional[String]` - -The zone this object is a member of. - -Default value: `undef` - -##### `types` - -Data type: `Optional[Variant[Array, String]]` - -A list of type filters when this notification should be triggered. - -Default value: `undef` - -##### `states` - -Data type: `Optional[Variant[Array, String]]` - -A list of state filters when this notification should be triggered. +A dictionary of command arguments. -Default value: `undef` +Default value: ``undef`` ##### `template` @@ -3095,627 +2878,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` - -##### `apply` - -Data type: `Variant[Boolean, String]` - -Dispose an apply instead an object if set to 'true'. Value is taken as statement, -i.e. 'vhost => config in host.vars.vhosts'. - -Default value: `false` - -##### `prefix` - -Data type: `Variant[Boolean, String]` - -Set notification_name as prefix in front of 'apply for'. Only effects if apply is a string. - -Default value: `false` - -##### `apply_target` - -Data type: `Enum['Host', 'Service']` - -An object type on which to target the apply rule. Valid values are `Host` and `Service`. - -Default value: 'Host' - -##### `import` - -Data type: `Array` - -Sorted List of templates to include. - -Default value: [] - -##### `target` - -Data type: `Stdlib::Absolutepath` - -Destination config file to store in this object. File will be declared the -first time. - -##### `order` - -Data type: `Variant[String, Integer]` - -String or integer to set the position in the target file, sorted alpha numeric. - -Default value: 85 - -##### `assign` - -Data type: `Array` - - - -Default value: [] - -##### `ignore` - -Data type: `Array` - - - -Default value: [] - -### icinga2::object::notificationcommand - -Manage Icinga 2 notificationcommand objects. - -#### Parameters - -The following parameters are available in the `icinga2::object::notificationcommand` defined type. - -##### `ensure` - -Data type: `Enum['absent', 'present']` - -Set to present enables the object, absent disables it. - -Default value: present - -##### `notificationcommand_name` - -Data type: `String` - -Set the Icinga 2 name of the notificationcommand object. - -Default value: $title - -##### `command` - -Data type: `Optional[Variant[Array, String]]` - -The command. This can either be an array of individual command arguments. -Alternatively a string can be specified in which case the shell interpreter -(usually /bin/sh) takes care of parsing the command. - -Default value: `undef` - -##### `env` - -Data type: `Optional[Hash]` - -A dictionary of macros which should be exported as environment variables -prior to executing the command. - -Default value: `undef` - -##### `vars` - -Data type: `Optional[Icinga2::CustomAttributes]` - -A dictionary containing custom attributes that are specific to this service, -a string to do operations on this dictionary or an array for multiple use -of custom attributes. - -Default value: `undef` - -##### `timeout` - -Data type: `Optional[Integer[1]]` - -The command timeout in seconds. - -Default value: `undef` - -##### `arguments` - -Data type: `Optional[Hash]` - -A dictionary of command arguments. - -Default value: `undef` - -##### `template` - -Data type: `Boolean` - -Set to true creates a template instead of an object. - -Default value: `false` - -##### `import` - -Data type: `Array` - -Sorted List of templates to include. - -Default value: [] - -##### `target` - -Data type: `Stdlib::Absolutepath` - -Destination config file to store in this object. File will be declared the -first time. - -##### `order` - -Data type: `Variant[String, Integer]` - -String or integer to set the position in the target file, sorted alpha numeric. - -Default value: 25 - -### icinga2::object::scheduleddowntime - -Manage Icinga 2 scheduleddowntime objects. - -#### Parameters - -The following parameters are available in the `icinga2::object::scheduleddowntime` defined type. - -##### `ensure` - -Data type: `Enum['absent', 'present']` - -Set to present enables the object, absent disables it. - -Default value: present - -##### `scheduleddowntime_name` - -Data type: `String` - -Set the Icinga 2 name of the scheduleddowntime object. - -Default value: $title - -##### `host_name` - -Data type: `Optional[String]` - -The name of the host this comment belongs to. - -Default value: `undef` - -##### `service_name` - -Data type: `Optional[String]` - -The short name of the service this comment belongs to. If omitted, this comment object is treated as host comment. - -Default value: `undef` - -##### `author` - -Data type: `Optional[String]` - -The author's name. - -Default value: `undef` - -##### `comment` - -Data type: `Optional[String]` - -The comment text. - -Default value: `undef` - -##### `fixed` - -Data type: `Optional[Boolean]` - -Whether this is a fixed downtime. - -Default value: `undef` - -##### `duration` - -Data type: `Optional[Icinga2::Interval]` - -The duration as number. - -Default value: `undef` - -##### `ranges` - -Data type: `Optional[Hash]` - -A dictionary containing information which days and durations apply to this timeperiod. - -Default value: `undef` - -##### `apply` - -Data type: `Variant[Boolean, String]` - -Dispose an apply instead an object if set to 'true'. Value is taken as statement, -i.e. 'vhost => config in host.vars.vhosts'. - -Default value: `false` - -##### `prefix` - -Data type: `Variant[Boolean, String]` - -Set scheduleddowntime_name as prefix in front of 'apply for'. Only effects if apply is a string. - -Default value: `false` - -##### `apply_target` - -Data type: `Enum['Host', 'Service']` - -An object type on which to target the apply rule. Valid values are `Host` and `Service`. - -Default value: 'Host' - -##### `assign` - -Data type: `Array` - -Assign user group members using the group assign rules. - -Default value: [] - -##### `ignore` - -Data type: `Array` - -Exclude users using the group ignore rules. - -Default value: [] - -##### `target` - -Data type: `Stdlib::Absolutepath` - -Destination config file to store in this object. File will be declared the -first time. - -##### `order` - -Data type: `Variant[String, Integer]` - -String or integer to set the position in the target file, sorted alpha numeric. - -Default value: 90 - -### icinga2::object::service - -Manage Icinga 2 service objects. - -#### Examples - -##### A service `ping` is applied to all hosts with a valid ipv4 address. - -```puppet -::icinga2::object::service { 'ping4': - import => ['generic-service'], - apply => true, - check_command => 'ping', - assign => ['host.address'], - target => '/etc/icinga2/zones.d/global-templates/services.conf', -} -``` - -##### A `apply Service for (disk_name =>config in host.vars.disks)` rule is applied to all Linux hosts with an Icinga Agent. Note in this example it's required that the endpoint (see `command_endpoint`) and the host object has the same name! - -```puppet -::icinga2::object::service { 'linux_disks': - import => ['generic-service'], - apply => 'disk_name => config in host.vars.disks', - check_command => 'disk', - command_endpoint => 'host.name', - vars => '+ config', - assign => ['host.vars.os == Linux'], - ignore => ['host.vars.noagent'], - target => '/etc/icinga2/zones.d/global-templates/services.conf', -} -``` - -#### Parameters - -The following parameters are available in the `icinga2::object::service` defined type. - -##### `ensure` - -Data type: `Enum['absent', 'present']` - -Set to present enables the object, absent disables it. - -Default value: present - -##### `service_name` - -Data type: `String` - -Set the Icinga 2 name of the service object. - -Default value: $title - -##### `display_name` - -Data type: `Optional[String]` - -A short description of the service. - -Default value: `undef` - -##### `host_name` - -Data type: `Optional[String]` - -The host this service belongs to. There must be a Host object with -that name. - -Default value: `undef` - -##### `groups` - -Data type: `Optional[Array]` - -The service groups this service belongs to. - -Default value: `undef` - -##### `vars` - -Data type: `Optional[Icinga2::CustomAttributes]` - -A dictionary containing custom attributes that are specific to this service, -a string to do operations on this dictionary or an array for multiple use -of custom attributes. - -Default value: `undef` - -##### `check_command` - -Data type: `Optional[String]` - -The name of the check command. - -Default value: `undef` - -##### `max_check_attempts` - -Data type: `Optional[Integer[1]]` - -The number of times a service is re-checked before changing into a hard -state. - -Default value: `undef` - -##### `check_period` - -Data type: `Optional[String]` - -The name of a time period which determines when this service should be -checked. - -Default value: `undef` - -##### `check_timeout` - -Data type: `Optional[Icinga2::Interval]` - -Check command timeout in seconds. Overrides the CheckCommand's timeout -attribute. - -Default value: `undef` - -##### `check_interval` - -Data type: `Optional[Icinga2::Interval]` - -The check interval (in seconds). This interval is used for checks when the -service is in a HARD state. - -Default value: `undef` - -##### `retry_interval` - -Data type: `Optional[Icinga2::Interval]` - -The retry interval (in seconds). This interval is used for checks when the -service is in a SOFT state. - -Default value: `undef` - -##### `enable_notifications` - -Data type: `Optional[Boolean]` - -Whether notifications are enabled. - -Default value: `undef` - -##### `enable_active_checks` - -Data type: `Optional[Boolean]` - -Whether active checks are enabled. - -Default value: `undef` - -##### `enable_passive_checks` - -Data type: `Optional[Boolean]` - -Whether passive checks are enabled. - -Default value: `undef` - -##### `enable_event_handler` - -Data type: `Optional[Boolean]` - -Enables event handlers for this host. - -Default value: `undef` - -##### `enable_flapping` - -Data type: `Optional[Boolean]` - -Whether flap detection is enabled. - -Default value: `undef` - -##### `enable_perfdata` - -Data type: `Optional[Boolean]` - -Whether performance data processing is enabled. - -Default value: `undef` - -##### `event_command` - -Data type: `Optional[String]` - -The name of an event command that should be executed every time the -service's state changes or the service is in a SOFT state. - -Default value: `undef` - -##### `flapping_threshold_low` - -Data type: `Optional[Integer[1]]` - -Flapping lower bound in percent for a host to be considered not flapping. - -Default value: `undef` - -##### `flapping_threshold_high` - -Data type: `Optional[Integer[1]]` - -Flapping upper bound in percent for a host to be considered flapping. - -Default value: `undef` - -##### `volatile` - -Data type: `Optional[Boolean]` - -The volatile setting enables always HARD state types if NOT-OK state changes -occur. - -Default value: `undef` - -##### `zone` - -Data type: `Optional[String]` - -The zone this object is a member of. - -Default value: `undef` - -##### `command_endpoint` - -Data type: `Optional[String]` - -The endpoint where commands are executed on. - -Default value: `undef` - -##### `notes` - -Data type: `Optional[String]` - -Notes for the service. - -Default value: `undef` - -##### `notes_url` - -Data type: `Optional[String]` - -Url for notes for the service (for example, in notification commands). - -Default value: `undef` - -##### `action_url` - -Data type: `Optional[String]` - -Url for actions for the service (for example, an external graphing tool). - -Default value: `undef` - -##### `icon_image` - -Data type: `Optional[Stdlib::Absolutepath]` - -Icon image for the service. Used by external interfaces only. - -Default value: `undef` - -##### `icon_image_alt` - -Data type: `Optional[String]` - -Icon image description for the service. Used by external interface only. - -Default value: `undef` - -##### `template` - -Data type: `Boolean` - -Set to true creates a template instead of an object. - -Default value: `false` - -##### `apply` - -Data type: `Variant[Boolean, String]` - -Dispose an apply instead an object if set to 'true'. Value is taken as statement, -i.e. 'vhost => config in host.vars.vhosts'. - -Default value: `false` - -##### `prefix` - -Data type: `Variant[Boolean, String]` - -Set service_name as prefix in front of 'apply for'. Only effects if apply is a string. - -Default value: `false` - -##### `assign` - -Data type: `Array` - -Assign user group members using the group assign rules. - -Default value: [] - -##### `ignore` - -Data type: `Array` - -Exclude users using the group ignore rules. - -Default value: [] +Default value: ``false`` ##### `import` @@ -3723,7 +2886,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `target` @@ -3738,9 +2901,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 60 +Default value: `25` -### icinga2::object::servicegroup +### `icinga2::object::servicegroup` Manage Icinga 2 servicegroup objects. @@ -3754,7 +2917,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `servicegroup_name` @@ -3762,7 +2925,7 @@ Data type: `String` Set the Icinga 2 name of the servicegroup object. -Default value: $title +Default value: `$title` ##### `display_name` @@ -3770,7 +2933,7 @@ Data type: `Optional[String]` A short description of the service group. -Default value: `undef` +Default value: ``undef`` ##### `groups` @@ -3778,7 +2941,7 @@ Data type: `Optional[Array]` An array of nested group names. -Default value: `undef` +Default value: ``undef`` ##### `assign` @@ -3786,7 +2949,7 @@ Data type: `Array` Assign user group members using the group assign rules. -Default value: [] +Default value: `[]` ##### `ignore` @@ -3794,7 +2957,7 @@ Data type: `Array` Exclude users using the group ignore rules. -Default value: [] +Default value: `[]` ##### `template` @@ -3802,7 +2965,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `import` @@ -3810,7 +2973,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `target` @@ -3825,9 +2988,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 65 +Default value: `65` -### icinga2::object::timeperiod +### `icinga2::object::timeperiod` Manage Icinga 2 timeperiod objects. @@ -3841,7 +3004,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `timeperiod_name` @@ -3849,7 +3012,7 @@ Data type: `String` Set the Icinga 2 name of the timeperiod object. -Default value: $title +Default value: `$title` ##### `display_name` @@ -3857,7 +3020,7 @@ Data type: `Optional[String]` A short description of the time period. -Default value: `undef` +Default value: ``undef`` ##### `import` @@ -3865,7 +3028,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: ['legacy-timeperiod'] +Default value: `['legacy-timeperiod']` ##### `ranges` @@ -3874,7 +3037,7 @@ Data type: `Optional[Hash]` A dictionary containing information which days and durations apply to this timeperiod. -Default value: `undef` +Default value: ``undef`` ##### `prefer_includes` @@ -3882,7 +3045,7 @@ Data type: `Optional[Boolean]` Boolean whether to prefer timeperiods includes or excludes. -Default value: `undef` +Default value: ``undef`` ##### `excludes` @@ -3890,7 +3053,7 @@ Data type: `Optional[Array]` An array of timeperiods, which should exclude from your timerange. -Default value: `undef` +Default value: ``undef`` ##### `includes` @@ -3898,7 +3061,7 @@ Data type: `Optional[Array]` An array of timeperiods, which should include into your timerange -Default value: `undef` +Default value: ``undef`` ##### `template` @@ -3906,7 +3069,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `target` @@ -3920,9 +3083,9 @@ Data type: `Variant[String, Integer]` String or integer to control the position in the target file, sorted alpha numeric. -Default value: 35 +Default value: `35` -### icinga2::object::user +### `icinga2::object::user` Manage Icinga 2 user objects. @@ -3936,7 +3099,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `user_name` @@ -3944,7 +3107,7 @@ Data type: `String` Set the Icinga 2 name of the user object. -Default value: $title +Default value: `$title` ##### `display_name` @@ -3952,7 +3115,7 @@ Data type: `Optional[String]` A short description of the user. -Default value: `undef` +Default value: ``undef`` ##### `email` @@ -3960,7 +3123,7 @@ Data type: `Optional[String]` An email string for this user. Useful for notification commands. -Default value: `undef` +Default value: ``undef`` ##### `pager` @@ -3968,7 +3131,7 @@ Data type: `Optional[String]` A pager string for this user. Useful for notification commands. -Default value: `undef` +Default value: ``undef`` ##### `vars` @@ -3978,7 +3141,7 @@ A dictionary containing custom attributes that are specific to this service, a string to do operations on this dictionary or an array for multiple use of custom attributes. -Default value: `undef` +Default value: ``undef`` ##### `groups` @@ -3986,7 +3149,7 @@ Data type: `Optional[Array]` An array of group names. -Default value: `undef` +Default value: ``undef`` ##### `enable_notifications` @@ -3994,7 +3157,7 @@ Data type: `Optional[Boolean]` Whether notifications are enabled for this user. -Default value: `undef` +Default value: ``undef`` ##### `period` @@ -4003,7 +3166,7 @@ Data type: `Optional[String]` The name of a time period which determines when a notification for this user should be triggered. -Default value: `undef` +Default value: ``undef`` ##### `types` @@ -4012,7 +3175,7 @@ Data type: `Optional[Array]` A set of type filters when this notification should be triggered. everything is matched. -Default value: `undef` +Default value: ``undef`` ##### `states` @@ -4020,7 +3183,7 @@ Data type: `Optional[Array]` A set of state filters when this notification should be triggered. -Default value: `undef` +Default value: ``undef`` ##### `template` @@ -4028,7 +3191,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `import` @@ -4036,7 +3199,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `target` @@ -4051,9 +3214,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 75 +Default value: `75` -### icinga2::object::usergroup +### `icinga2::object::usergroup` Manage Icinga 2 usergroup objects. @@ -4067,7 +3230,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `usergroup_name` @@ -4075,7 +3238,7 @@ Data type: `String` Set the Icinga 2 name of the usergroup object. -Default value: $title +Default value: `$title` ##### `display_name` @@ -4083,7 +3246,7 @@ Data type: `Optional[String]` A short description of the service group. -Default value: `undef` +Default value: ``undef`` ##### `groups` @@ -4091,7 +3254,7 @@ Data type: `Array` An array of nested group names. -Default value: [] +Default value: `[]` ##### `assign` @@ -4099,7 +3262,7 @@ Data type: `Array` Assign user group members using the group assign rules. -Default value: [] +Default value: `[]` ##### `ignore` @@ -4107,7 +3270,7 @@ Data type: `Array` Exclude users using the group ignore rules. -Default value: [] +Default value: `[]` ##### `template` @@ -4115,7 +3278,7 @@ Data type: `Boolean` Set to true creates a template instead of an object. -Default value: `false` +Default value: ``false`` ##### `import` @@ -4123,7 +3286,7 @@ Data type: `Array` Sorted List of templates to include. -Default value: [] +Default value: `[]` ##### `target` @@ -4138,9 +3301,9 @@ Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: 80 +Default value: `80` -### icinga2::object::zone +### `icinga2::object::zone` Manage Icinga 2 zone objects. @@ -4154,7 +3317,7 @@ Data type: `Enum['absent', 'present']` Set to present enables the object, absent disables it. -Default value: present +Default value: `present` ##### `zone_name` @@ -4162,7 +3325,7 @@ Data type: `String` Set the Icinga 2 name of the zone object. -Default value: $title +Default value: `$title` ##### `endpoints` @@ -4170,7 +3333,7 @@ Data type: `Optional[Array]` List of endpoints belong to this zone. -Default value: [] +Default value: `[]` ##### `parent` @@ -4178,7 +3341,7 @@ Data type: `Optional[String]` Parent zone to this zone. -Default value: `undef` +Default value: ``undef`` ##### `global` @@ -4187,7 +3350,7 @@ Data type: `Optional[Boolean]` If set to true, a global zone is defined and the parameter endpoints and parent are ignored. -Default value: `false` +Default value: ``false`` ##### `target` @@ -4196,7 +3359,7 @@ Data type: `Optional[Stdlib::Absolutepath]` Destination config file to store in this object. File will be declared at the first time. -Default value: `undef` +Default value: ``undef`` ##### `order` @@ -4204,11 +3367,11 @@ Data type: `Variant[String, Integer]` String or integer to control the position in the target file, sorted alpha numeric. -Default value: 45 +Default value: `45` ## Functions -### icinga2::icinga2_attributes +### `icinga2::icinga2_attributes` Type: Ruby 4.x API @@ -4227,7 +3390,7 @@ Data type: `Any` The original array of arguments. Port this to individually managed params to get the full benefit of the modern function API. -### icinga2::icinga2_ticket_id +### `icinga2::icinga2_ticket_id` Type: Ruby 4.x API @@ -4246,7 +3409,7 @@ Data type: `Any` The original array of arguments. Port this to individually managed params to get the full benefit of the modern function API. -### icinga2_attributes +### `icinga2_attributes` Type: Ruby 3.x API @@ -4258,7 +3421,7 @@ The icinga2_attributes function. Returns: `Any` Parsed config as string -### icinga2_ticket_id +### `icinga2_ticket_id` Type: Ruby 3.x API @@ -4272,31 +3435,33 @@ Returns: `Any` The ticket to get a certificate ## Data types -### Icinga2::CustomAttributes +### `Icinga2::CustomAttributes` A type for the structure of custom attributes Alias of `Optional[Variant[String, Array[Variant[String, Hash]], Hash]]` -### Icinga2::Fingerprint +### `Icinga2::Fingerprint` Type for certificate fingerprints +SHA1: 160 bit (20 byte) digest +SHA256: 256 bit (32 byte) digest -Alias of `Pattern[/^([0-9a-fA-F]{2}\:)({19}[0-9a-fA-F]{2}\:){12})?[0-9,a-f,A-F]{2}$/]` +Alias of `Pattern[/^([0-9a-fA-F]{2}\:){19}(([0-9a-fA-F]{2}\:){12})?[0-9a-fA-F]{2}$/]` -### Icinga2::Interval +### `Icinga2::Interval` A strict type for intervals Alias of `Pattern[/^\d+\.?\d*[d|h|m|s]?$/]` -### Icinga2::LogFacility +### `Icinga2::LogFacility` A strict type of syslog facilities Alias of `Variant[Enum['LOG_AUTH', 'LOG_AUTHPRIV', 'LOG_CRON', 'LOG_DAEMON', 'LOG_FTP', 'LOG_KERN', 'LOG_LPR', 'LOG_MAIL', 'LOG_NEWS', 'LOG_SYSLOG', 'LOG_USER', 'LOG_UUCP'], Pattern[/^LOG_LOCAL[0-7]$/]]` -### Icinga2::LogSeverity +### `Icinga2::LogSeverity` A strict type for log levels diff --git a/RELEASE.md b/RELEASE.md index d104bfde1..64f4888fe 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -3,7 +3,17 @@ Before submitting a new release, make sure all relevant pull requests and local branch. All tests must pass before a release is tagged. -## 1. AUTHORS +## 1. Puppet Development Kit +If not installed, please install the PDK and do a 'bundle install'. +``` bash +pdk bundle install +``` +Or if already installed do an update. +``` bash +pdk bundle update +``` + +## 2. AUTHORS Update the [AUTHORS] and [.mailmap] file ``` bash @@ -12,7 +22,21 @@ git log --use-mailmap | grep ^Author: | cut -f2- -d' ' | sort | uniq > AUTHORS git commit -am "Update AUTHORS" ``` -## 2. Changelog +## 3. Reference +If it is not installed [puppet-strings]: +``` bash +gem install puppet-strings --no-ri --no-rdoc +``` +Generate [REFERENCE.md] via [Puppet Strings] +``` bash +puppet strings generate --format markdown --out ./REFERENCE.md +``` + +## 4. Version +Version numbers are incremented regarding the [SemVer 1.0.0] specification. +Update the version number in `metadata.json`. + +## 5. Changelog Install [github-changelog-generator] ```bash gem install github_changelog_generator -v 1.13.2 @@ -23,11 +47,7 @@ Generate [CHANGELOG.md] github_changelog_generator -t --future-release=v1.0.0 -u icinga -p puppet-icinga2 ``` -## 3. Version -Version numbers are incremented regarding the [SemVer 1.0.0] specification. -Update the version number in `metadata.json`. - -## 4. Git Tag +## 6. Git Tag Commit all changes to the `master` branch ``` bash @@ -47,11 +67,14 @@ Push tags git push --tags ``` - -## Puppet Forge -The module is uploaded automatically to Puppet Forge by TravisCI when a new tag is set. +## 7. Build and Upload +``` bash +pdk build +``` +Upload the tarball to Puppet Forge. [github-changelog-generator]: https://github.com/skywinder/github-changelog-generator +[Puppet Strings]: https://puppet.com/docs/puppet/5.5/puppet_strings.html [SemVer 1.0.0]: http://semver.org/spec/v1.0.0.html [CHANGELOG.md]: CHANGELOG.md [AUTHORS]: AUTHORS diff --git a/manifests/feature/idomysql.pp b/manifests/feature/idomysql.pp index 02e8a5c7f..ba7b22ca8 100644 --- a/manifests/feature/idomysql.pp +++ b/manifests/feature/idomysql.pp @@ -56,11 +56,11 @@ # The private key in a base64 encoded string to store in spicified ssl_key_path file. # Only valid if ssl is enabled. # -# @param [Optional[tdlib::Base64]] ssl_cert +# @param [Optional[Stdlib::Base64]] ssl_cert # The certificate in a base64 encoded string to store in spicified ssl_cert_path file. # Only valid if ssl is enabled. # -# @param [Optional[tdlib::Base64]] ssl_cacert +# @param [Optional[Stdlib::Base64]] ssl_cacert # The CA root certificate in a base64 encoded string to store in spicified ssl_cacert_path file. # Only valid if ssl is enabled. # diff --git a/manifests/feature/influxdb.pp b/manifests/feature/influxdb.pp index e722e36bb..ca5282490 100644 --- a/manifests/feature/influxdb.pp +++ b/manifests/feature/influxdb.pp @@ -45,7 +45,7 @@ # @param [Optional[Stdlib::Base64]] ssl_cert # The certificate in a base64 encoded string to store in ssl_cert_path file. # -# @param [Optional[Sdlib::Base64]] ssl_cacert +# @param [Optional[Stdlib::Base64]] ssl_cacert # The CA root certificate in a base64 encoded to store in ssl_cacert_path file. # # @param [String] host_measurement diff --git a/metadata.json b/metadata.json index 77c311e70..fd89d4a55 100644 --- a/metadata.json +++ b/metadata.json @@ -1,6 +1,6 @@ { "name": "icinga-icinga2", - "version": "3.0.0", + "version": "3.1.0", "author": "Icinga Development Team", "summary": "Icinga 2 Puppet Module", "license": "Apache-2.0",