From ac5660825527c1c4924a1a0553ce70b629d5d214 Mon Sep 17 00:00:00 2001 From: Tim Meusel Date: Tue, 18 Jan 2022 11:11:24 +0100 Subject: [PATCH 1/2] Enable GitHub Actions for CI --- .github/workflows/ci.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..c1f75327c --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,27 @@ +name: Test + +on: + - pull_request + - push + +jobs: + test: + runs-on: ubuntu-latest + env: + BUNDLE_WITHOUT: system_tests + + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 2.7 + bundler-cache: true + - name: Run static validation for Puppet/Ruby files + run: bundle exec rake validate + - name: Run Ruby Linter + run: bundle exec rake rubocop + - name: Run Puppet Linter + run: bundle exec rake lint + - name: Check if REFERENCE.md is up2date + run: bundle exec rake strings:validate:reference From 88507482e67fb6ae548b9fbf4b87105b9bed2850 Mon Sep 17 00:00:00 2001 From: Tim Meusel Date: Tue, 18 Jan 2022 11:26:43 +0100 Subject: [PATCH 2/2] Regenerate REFERENCE.md --- REFERENCE.md | 2518 +++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 1961 insertions(+), 557 deletions(-) diff --git a/REFERENCE.md b/REFERENCE.md index 0d4c46720..61a601499 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -49,12 +49,16 @@ start on boot and will be restarted if stopped. * [`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::icingaapplication`](#icinga2objecticingaapplication) +* [`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. @@ -85,7 +89,7 @@ start on boot and will be restarted if stopped. ## Classes -### `icinga2` +### `icinga2` This module installs and configures Icinga 2. @@ -190,9 +194,23 @@ class { 'icinga2': #### Parameters -The following parameters are available in the `icinga2` class. +The following parameters are available in the `icinga2` class: -##### `ensure` +* [`ensure`](#ensure) +* [`enable`](#enable) +* [`manage_repo`](#manage_repo) +* [`manage_repos`](#manage_repos) +* [`manage_package`](#manage_package) +* [`manage_packages`](#manage_packages) +* [`manage_selinux`](#manage_selinux) +* [`manage_service`](#manage_service) +* [`features`](#features) +* [`purge_features`](#purge_features) +* [`constants`](#constants) +* [`plugins`](#plugins) +* [`confd`](#confd) + +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -200,7 +218,7 @@ Manages if the service should be stopped or running. Default value: `running` -##### `enable` +##### `enable` Data type: `Boolean` @@ -208,7 +226,7 @@ If set to true the Icinga 2 service will start on boot. Default value: ``true`` -##### `manage_repo` +##### `manage_repo` Data type: `Boolean` @@ -216,7 +234,7 @@ Deprecated, use manage_repos. Default value: ``false`` -##### `manage_repos` +##### `manage_repos` Data type: `Boolean` @@ -226,7 +244,7 @@ For more information, see http://github.com/icinga/puppet-icinga. Default value: ``false`` -##### `manage_package` +##### `manage_package` Data type: `Boolean` @@ -234,7 +252,7 @@ Deprecated, use manage_packages. Default value: ``false`` -##### `manage_packages` +##### `manage_packages` Data type: `Boolean` @@ -242,7 +260,7 @@ If set to false packages aren't managed. Default value: ``true`` -##### `manage_selinux` +##### `manage_selinux` Data type: `Boolean` @@ -251,7 +269,7 @@ and `manage_packages` has to be set to true. Default value: ``false`` -##### `manage_service` +##### `manage_service` Data type: `Boolean` @@ -260,13 +278,13 @@ isn't restarted if a config file changed. Default value: ``true`` -##### `features` +##### `features` Data type: `Array` List of features to activate. Defaults to [checker, mainlog, notification]. -##### `purge_features` +##### `purge_features` Data type: `Boolean` @@ -274,7 +292,7 @@ Define if configuration files for features not managed by Puppet should be purge Default value: ``true`` -##### `constants` +##### `constants` Data type: `Hash` @@ -282,13 +300,13 @@ Hash of constants. Defaults are set in the params class. Your settings will be m Default value: `{}` -##### `plugins` +##### `plugins` Data type: `Array` A list of the ITL plugins to load. Defaults to [ 'plugins', 'plugins-contrib', 'windows-plugins', 'nscp' ]. -##### `confd` +##### `confd` Data type: `Variant[Boolean, String]` @@ -299,7 +317,7 @@ with tag icinga2::config::file. Default value: ``true`` -### `icinga2::feature::api` +### `icinga2::feature::api` Configures the Icinga 2 feature api. @@ -369,9 +387,37 @@ file { '/var/lib/icinga2/ca/ca.key': #### Parameters -The following parameters are available in the `icinga2::feature::api` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::api` class: + +* [`ensure`](#ensure) +* [`pki`](#pki) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`ssl_crl`](#ssl_crl) +* [`accept_config`](#accept_config) +* [`accept_commands`](#accept_commands) +* [`max_anonymous_clients`](#max_anonymous_clients) +* [`ca_host`](#ca_host) +* [`ca_port`](#ca_port) +* [`fingerprint`](#fingerprint) +* [`ticket_salt`](#ticket_salt) +* [`ticket_id`](#ticket_id) +* [`endpoints`](#endpoints) +* [`zones`](#zones) +* [`ssl_protocolmin`](#ssl_protocolmin) +* [`ssl_handshake_timeout`](#ssl_handshake_timeout) +* [`connect_timeout`](#connect_timeout) +* [`ssl_cipher_list`](#ssl_cipher_list) +* [`bind_host`](#bind_host) +* [`bind_port`](#bind_port) +* [`access_control_allow_origin`](#access_control_allow_origin) +* [`access_control_allow_credentials`](#access_control_allow_credentials) +* [`access_control_allow_headers`](#access_control_allow_headers) +* [`access_control_allow_methods`](#access_control_allow_methods) +* [`environment`](#environment) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -379,7 +425,7 @@ Set to present enables the feature api, absent disabled it. Default value: `present` -##### `pki` +##### `pki` Data type: `Enum['ca', 'icinga2', 'none', 'puppet']` @@ -398,7 +444,7 @@ Provides multiple sources for the certificate, key and ca. Default value: `'icinga2'` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -407,7 +453,7 @@ requires pki to be set to 'none'. Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -416,7 +462,7 @@ The certificate in a base64 encoded string to store in cert directory This param Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -425,7 +471,7 @@ requires pki to be set to 'none'. Default value: ``undef`` -##### `ssl_crl` +##### `ssl_crl` Data type: `Optional[Stdlib::Absolutepath]` @@ -433,7 +479,7 @@ Optional location of the certificate revocation list. Default value: ``undef`` -##### `accept_config` +##### `accept_config` Data type: `Optional[Boolean]` @@ -441,7 +487,7 @@ Accept zone configuration. Default value: ``undef`` -##### `accept_commands` +##### `accept_commands` Data type: `Optional[Boolean]` @@ -449,7 +495,7 @@ Accept remote commands. Default value: ``undef`` -##### `max_anonymous_clients` +##### `max_anonymous_clients` Data type: `Optional[Integer[0]]` @@ -457,7 +503,7 @@ Limit the number of anonymous client connections (not configured endpoints and s Default value: ``undef`` -##### `ca_host` +##### `ca_host` Data type: `Optional[Stdlib::Host]` @@ -465,7 +511,7 @@ This host will be connected to request the certificate. Set this if you use the Default value: ``undef`` -##### `ca_port` +##### `ca_port` Data type: `Stdlib::Port::Unprivileged` @@ -473,7 +519,7 @@ Port of the 'ca_host'. Default value: `5665` -##### `fingerprint` +##### `fingerprint` Data type: `Optional[Icinga2::Fingerprint]` @@ -483,7 +529,7 @@ on your CA host. (Icinga2 versions before 2.12.0 require '-sha1' as digest algor Default value: ``undef`` -##### `ticket_salt` +##### `ticket_salt` Data type: `Variant[String, Sensitive[String]]` @@ -493,7 +539,7 @@ characters as salt or a constant. Default value: `'TicketSalt'` -##### `ticket_id` +##### `ticket_id` Data type: `Optional[Variant[String, Sensitive[String]]]` @@ -503,7 +549,7 @@ in case the pki is set to 'icinga2'. Default value: ``undef`` -##### `endpoints` +##### `endpoints` Data type: `Hash[String, Hash]` @@ -511,7 +557,7 @@ Hash to configure endpoint objects. `NodeName` is a icnga2 constant. Default value: `{ 'NodeName' => {} }` -##### `zones` +##### `zones` Data type: `Hash[String, Hash]` @@ -519,7 +565,7 @@ Hash to configure zone objects. `ZoneName` and `NodeName` are icinga2 constants. Default value: `{ 'ZoneName' => { endpoints => [ 'NodeName' ] } }` -##### `ssl_protocolmin` +##### `ssl_protocolmin` Data type: `Optional[Enum['TLSv1', 'TLSv1.1', 'TLSv1.2', 'TLSv1.3']]` @@ -527,7 +573,7 @@ Minimal TLS version to require. Default value: ``undef`` -##### `ssl_handshake_timeout` +##### `ssl_handshake_timeout` Data type: `Optional[Icinga2::Interval]` @@ -535,7 +581,7 @@ TLS Handshake timeout. Default value: ``undef`` -##### `connect_timeout` +##### `connect_timeout` Data type: `Optional[Icinga2::Interval]` @@ -543,7 +589,7 @@ Timeout for establishing new connections. Default value: ``undef`` -##### `ssl_cipher_list` +##### `ssl_cipher_list` Data type: `Optional[String]` @@ -551,7 +597,7 @@ List of allowed TLS ciphers, to finetune encryption. Default value: ``undef`` -##### `bind_host` +##### `bind_host` Data type: `Optional[Stdlib::Host]` @@ -559,7 +605,7 @@ The IP address the api listener will be bound to. Default value: ``undef`` -##### `bind_port` +##### `bind_port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -567,7 +613,7 @@ The port the api listener will be bound to. Default value: ``undef`` -##### `access_control_allow_origin` +##### `access_control_allow_origin` Data type: `Optional[Array[String]]` @@ -575,7 +621,7 @@ Specifies an array of origin URLs that may access the API. Default value: ``undef`` -##### `access_control_allow_credentials` +##### `access_control_allow_credentials` Data type: `Optional[Boolean]` @@ -583,7 +629,7 @@ Indicates whether or not the actual request can be made using credentials. Default value: ``undef`` -##### `access_control_allow_headers` +##### `access_control_allow_headers` Data type: `Optional[String]` @@ -591,7 +637,7 @@ Used in response to a preflight request to indicate which HTTP headers can be us Default value: ``undef`` -##### `access_control_allow_methods` +##### `access_control_allow_methods` Data type: `Optional[Array[Enum['GET', 'POST', 'PUT', 'DELETE']]]` @@ -599,7 +645,7 @@ Used in response to a preflight request to indicate which HTTP methods can be us Default value: ``undef`` -##### `environment` +##### `environment` Data type: `Optional[String]` @@ -607,7 +653,7 @@ Used as suffix in TLS SNI extension name; default from constant ApiEnvironment, Default value: ``undef`` -### `icinga2::feature::checker` +### `icinga2::feature::checker` Configures the Icinga 2 feature checker. @@ -616,9 +662,12 @@ MaxConcurrentChecks which will be set if you still use concurrent_checks. #### Parameters -The following parameters are available in the `icinga2::feature::checker` class. +The following parameters are available in the `icinga2::feature::checker` class: -##### `ensure` +* [`ensure`](#ensure) +* [`concurrent_checks`](#concurrent_checks) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -626,7 +675,7 @@ Set to present enables the feature checker, absent disabled it. Default value: `present` -##### `concurrent_checks` +##### `concurrent_checks` Data type: `Optional[Integer[1]]` @@ -634,15 +683,18 @@ The maximum number of concurrent checks. Default value: ``undef`` -### `icinga2::feature::command` +### `icinga2::feature::command` Configures the Icinga 2 feature command. #### Parameters -The following parameters are available in the `icinga2::feature::command` class. +The following parameters are available in the `icinga2::feature::command` class: + +* [`ensure`](#ensure) +* [`command_path`](#command_path) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -650,7 +702,7 @@ Set to present to enable the feature command, absent to disabled it. Default value: `present` -##### `command_path` +##### `command_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -658,15 +710,19 @@ Absolute path to the command pipe. Default value: ``undef`` -### `icinga2::feature::compatlog` +### `icinga2::feature::compatlog` Configures the Icinga 2 feature compatlog. #### Parameters -The following parameters are available in the `icinga2::feature::compatlog` class. +The following parameters are available in the `icinga2::feature::compatlog` class: -##### `ensure` +* [`ensure`](#ensure) +* [`log_dir`](#log_dir) +* [`rotation_method`](#rotation_method) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -674,7 +730,7 @@ Set to present enables the feature compatlog, absent disabled it. Default value: `present` -##### `log_dir` +##### `log_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -682,7 +738,7 @@ Absolute path to the log directory. Default value: ``undef`` -##### `rotation_method` +##### `rotation_method` Data type: `Optional[Enum['DAILY', 'HOURLY', 'MONTHLY', 'WEEKLY']]` @@ -690,15 +746,18 @@ Sets how often should the log file be rotated. Default value: ``undef`` -### `icinga2::feature::debuglog` +### `icinga2::feature::debuglog` Configures the Icinga 2 feature mainlog. #### Parameters -The following parameters are available in the `icinga2::feature::debuglog` class. +The following parameters are available in the `icinga2::feature::debuglog` class: + +* [`ensure`](#ensure) +* [`path`](#path) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -706,7 +765,7 @@ Set to present enables the feature mainlog, absent disables it. Default value: `present` -##### `path` +##### `path` Data type: `Stdlib::Absolutepath` @@ -714,7 +773,7 @@ Absolute path to the log file. Default value: `"${::icinga2::globals::log_dir}/debug.log"` -### `icinga2::feature::elasticsearch` +### `icinga2::feature::elasticsearch` Configures the Icinga 2 feature elasticsearch. @@ -731,9 +790,28 @@ class { 'icinga2::feature::elasticsearch': #### Parameters -The following parameters are available in the `icinga2::feature::elasticsearch` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::elasticsearch` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`index`](#index) +* [`username`](#username) +* [`password`](#password) +* [`enable_ssl`](#enable_ssl) +* [`ssl_noverify`](#ssl_noverify) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`enable_send_perfdata`](#enable_send_perfdata) +* [`flush_interval`](#flush_interval) +* [`flush_threshold`](#flush_threshold) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -741,7 +819,7 @@ Set to present enables the feature elasticsearch, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -749,7 +827,7 @@ Elasticsearch host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -757,7 +835,7 @@ Elasticsearch HTTP port. Default value: ``undef`` -##### `index` +##### `index` Data type: `Optional[String]` @@ -765,7 +843,7 @@ Elasticsearch index name. Default value: ``undef`` -##### `username` +##### `username` Data type: `Optional[String]` @@ -773,7 +851,7 @@ Elasticsearch user name. Default value: ``undef`` -##### `password` +##### `password` Data type: `Optional[Variant[String, Sensitive[String]]]` @@ -781,7 +859,7 @@ Elasticsearch user password. The password parameter isn't parsed anymore. Default value: ``undef`` -##### `enable_ssl` +##### `enable_ssl` Data type: `Optional[Boolean]` @@ -789,7 +867,7 @@ Either enable or disable SSL. Other SSL parameters are only affected if this is Default value: ``undef`` -##### `ssl_noverify` +##### `ssl_noverify` Data type: `Optional[Boolean]` @@ -797,7 +875,7 @@ Disable TLS peer verification. Default value: ``undef`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -805,7 +883,7 @@ Location of the private key. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -813,7 +891,7 @@ Location of the certificate. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -821,7 +899,7 @@ Location of the CA certificate. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -829,7 +907,7 @@ The private key in a base64 encoded string to store in spicified ssl_key_path fi Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -837,7 +915,7 @@ The certificate in a base64 encoded to store in spicified ssl_cert_path file. Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -845,7 +923,7 @@ The CA root certificate in a base64 encoded string to store in spicified ssl_cac Default value: ``undef`` -##### `enable_send_perfdata` +##### `enable_send_perfdata` Data type: `Optional[Boolean]` @@ -853,7 +931,7 @@ Whether to send check performance data metrics. Default value: ``undef`` -##### `flush_interval` +##### `flush_interval` Data type: `Optional[Icinga2::Interval]` @@ -861,7 +939,7 @@ How long to buffer data points before transferring to Elasticsearch. Default value: ``undef`` -##### `flush_threshold` +##### `flush_threshold` Data type: `Optional[Integer]` @@ -869,7 +947,7 @@ How many data points to buffer before forcing a transfer to Elasticsearch. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -877,15 +955,30 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::gelf` +### `icinga2::feature::gelf` Configures the Icinga 2 feature gelf. #### Parameters -The following parameters are available in the `icinga2::feature::gelf` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::gelf` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`source`](#source) +* [`enable_ssl`](#enable_ssl) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`ssl_noverify`](#ssl_noverify) +* [`enable_send_perfdata`](#enable_send_perfdata) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -893,7 +986,7 @@ Set to present enables the feature gelf, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -901,7 +994,7 @@ GELF receiver host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -909,7 +1002,7 @@ GELF receiver port. Default value: ``undef`` -##### `source` +##### `source` Data type: `Optional[String]` @@ -917,7 +1010,7 @@ Source name for this instance. Default value: ``undef`` -##### `enable_ssl` +##### `enable_ssl` Data type: `Boolean` @@ -925,7 +1018,7 @@ Either enable or disable SSL/TLS. Other SSL parameters are only affected if this Default value: ``false`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -933,7 +1026,7 @@ Location of the private key. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -941,7 +1034,7 @@ Location of the certificate. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -949,7 +1042,7 @@ Location of the CA certificate. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -958,7 +1051,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -967,7 +1060,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -976,7 +1069,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_noverify` +##### `ssl_noverify` Data type: `Optional[Boolean]` @@ -984,7 +1077,7 @@ Disable TLS peer verification. Default value: ``undef`` -##### `enable_send_perfdata` +##### `enable_send_perfdata` Data type: `Optional[Boolean]` @@ -992,7 +1085,7 @@ Enable performance data for 'CHECK RESULT' events. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1000,7 +1093,7 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::graphite` +### `icinga2::feature::graphite` Configures the Icinga 2 feature graphite. @@ -1019,9 +1112,18 @@ class { '::icinga2::feature::graphite': #### Parameters -The following parameters are available in the `icinga2::feature::graphite` class. +The following parameters are available in the `icinga2::feature::graphite` class: -##### `ensure` +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`host_name_template`](#host_name_template) +* [`service_name_template`](#service_name_template) +* [`enable_send_thresholds`](#enable_send_thresholds) +* [`enable_send_metadata`](#enable_send_metadata) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1029,7 +1131,7 @@ Set to present enables the feature graphite, absent disabled it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -1037,7 +1139,7 @@ Graphite Carbon host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -1045,7 +1147,7 @@ Graphite Carbon port. Default value: ``undef`` -##### `host_name_template` +##### `host_name_template` Data type: `Optional[String]` @@ -1053,7 +1155,7 @@ Template for metric path of hosts. Default value: ``undef`` -##### `service_name_template` +##### `service_name_template` Data type: `Optional[String]` @@ -1061,7 +1163,7 @@ Template for metric path of services. Default value: ``undef`` -##### `enable_send_thresholds` +##### `enable_send_thresholds` Data type: `Optional[Boolean]` @@ -1069,7 +1171,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_send_metadata` +##### `enable_send_metadata` Data type: `Optional[Boolean]` @@ -1077,7 +1179,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1085,15 +1187,22 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::icingadb` +### `icinga2::feature::icingadb` Configures the Icinga 2 feature icingadb. #### Parameters -The following parameters are available in the `icinga2::feature::icingadb` class. +The following parameters are available in the `icinga2::feature::icingadb` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`socket_path`](#socket_path) +* [`connect_timeout`](#connect_timeout) +* [`password`](#password) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1101,7 +1210,7 @@ Set to present, enables the feature icingadb, absent disabled it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -1109,7 +1218,7 @@ IcingaDB Redis host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -1117,7 +1226,7 @@ IcingaDB Redis port. Default value: ``undef`` -##### `socket_path` +##### `socket_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1125,7 +1234,7 @@ IcingaDB Redis unix sockt. Can be used instead of host and port attributes. Default value: ``undef`` -##### `connect_timeout` +##### `connect_timeout` Data type: `Optional[Icinga2::Interval]` @@ -1133,7 +1242,7 @@ Timeout for establishing new connections. Default value: ``undef`` -##### `password` +##### `password` Data type: `Optional[Variant[String, Sensitive[String]]]` @@ -1141,7 +1250,7 @@ IcingaDB Redis password. The password parameter isn't parsed anymore. Default value: ``undef`` -### `icinga2::feature::idomysql` +### `icinga2::feature::idomysql` Installs and configures the Icinga 2 feature ido-mysql. @@ -1170,9 +1279,34 @@ class{ 'icinga2::feature::idomysql': #### Parameters -The following parameters are available in the `icinga2::feature::idomysql` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::idomysql` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`socket_path`](#socket_path) +* [`user`](#user) +* [`password`](#password) +* [`database`](#database) +* [`enable_ssl`](#enable_ssl) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`ssl_capath`](#ssl_capath) +* [`ssl_cipher`](#ssl_cipher) +* [`table_prefix`](#table_prefix) +* [`instance_name`](#instance_name) +* [`instance_description`](#instance_description) +* [`enable_ha`](#enable_ha) +* [`failover_timeout`](#failover_timeout) +* [`cleanup`](#cleanup) +* [`categories`](#categories) +* [`import_schema`](#import_schema) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1180,7 +1314,7 @@ Set to present enables the feature ido-mysql, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Stdlib::Host` @@ -1188,7 +1322,7 @@ MySQL database host address. Default value: `'localhost'` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -1196,7 +1330,7 @@ MySQL database port. Default value: ``undef`` -##### `socket_path` +##### `socket_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1204,7 +1338,7 @@ MySQL socket path. Default value: ``undef`` -##### `user` +##### `user` Data type: `String` @@ -1212,13 +1346,13 @@ MySQL database user with read/write permission to the icinga database. Default value: `'icinga'` -##### `password` +##### `password` Data type: `Variant[String, Sensitive[String]]` MySQL database user's password. The password parameter isn't parsed anymore. -##### `database` +##### `database` Data type: `String` @@ -1226,7 +1360,7 @@ MySQL database name. Default value: `'icinga'` -##### `enable_ssl` +##### `enable_ssl` Data type: `Boolean` @@ -1234,7 +1368,7 @@ Either enable or disable SSL/TLS. Other SSL parameters are only affected if this Default value: ``false`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1242,7 +1376,7 @@ Location of the private key. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1250,7 +1384,7 @@ Location of the certificate. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1258,7 +1392,7 @@ Location of the CA certificate. Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -1267,7 +1401,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -1276,7 +1410,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -1285,7 +1419,7 @@ Only valid if ssl is enabled. Default value: ``undef`` -##### `ssl_capath` +##### `ssl_capath` Data type: `Optional[Stdlib::Absolutepath]` @@ -1293,7 +1427,7 @@ MySQL SSL trusted SSL CA certificates in PEM format directory path. Only valid i Default value: ``undef`` -##### `ssl_cipher` +##### `ssl_cipher` Data type: `Optional[String]` @@ -1301,7 +1435,7 @@ MySQL SSL list of allowed ciphers. Only valid if ssl is enabled. Default value: ``undef`` -##### `table_prefix` +##### `table_prefix` Data type: `Optional[String]` @@ -1309,7 +1443,7 @@ MySQL database table prefix. Default value: ``undef`` -##### `instance_name` +##### `instance_name` Data type: `Optional[String]` @@ -1317,7 +1451,7 @@ Unique identifier for the local Icinga 2 instance. Default value: ``undef`` -##### `instance_description` +##### `instance_description` Data type: `Optional[String]` @@ -1325,7 +1459,7 @@ Description for the Icinga 2 instance. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1333,7 +1467,7 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -##### `failover_timeout` +##### `failover_timeout` Data type: `Optional[Icinga2::Interval]` @@ -1341,7 +1475,7 @@ Set the failover timeout in a HA cluster. Must not be lower than 60s. Default value: ``undef`` -##### `cleanup` +##### `cleanup` Data type: `Optional[Icinga2::IdoCleanup]` @@ -1349,7 +1483,7 @@ Hash with items for historical table cleanup. Default value: ``undef`` -##### `categories` +##### `categories` Data type: `Optional[Array]` @@ -1357,7 +1491,7 @@ Array of information types that should be written to the database. Default value: ``undef`` -##### `import_schema` +##### `import_schema` Data type: `Boolean` @@ -1365,7 +1499,7 @@ Whether to import the MySQL schema or not. Default value: ``false`` -### `icinga2::feature::idopgsql` +### `icinga2::feature::idopgsql` Installs and configures the Icinga 2 feature ido-pgsql. @@ -1393,9 +1527,31 @@ class{ 'icinga2::feature::idopgsql': #### Parameters -The following parameters are available in the `icinga2::feature::idopgsql` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::idopgsql` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`user`](#user) +* [`password`](#password) +* [`database`](#database) +* [`ssl_mode`](#ssl_mode) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`table_prefix`](#table_prefix) +* [`instance_name`](#instance_name) +* [`instance_description`](#instance_description) +* [`enable_ha`](#enable_ha) +* [`failover_timeout`](#failover_timeout) +* [`cleanup`](#cleanup) +* [`categories`](#categories) +* [`import_schema`](#import_schema) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1403,7 +1559,7 @@ Set to present enables the feature ido-pgsql, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Stdlib::Host` @@ -1411,7 +1567,7 @@ PostgreSQL database host address. Default value: `'localhost'` -##### `port` +##### `port` Data type: `Stdlib::Port::Unprivileged` @@ -1419,7 +1575,7 @@ PostgreSQL database port. Default value: `5432` -##### `user` +##### `user` Data type: `String` @@ -1427,13 +1583,13 @@ PostgreSQL database user with read/write permission to the icinga database. Default value: `'icinga'` -##### `password` +##### `password` Data type: `Variant[String, Sensitive[String]]` PostgreSQL database user's password. The password parameter isn't parsed anymore. -##### `database` +##### `database` Data type: `String` @@ -1441,7 +1597,7 @@ PostgreSQL database name. Default value: `'icinga'` -##### `ssl_mode` +##### `ssl_mode` Data type: `Optional[Enum['disable', 'allow', 'prefer', 'verify-full', @@ -1451,7 +1607,7 @@ Enable SSL connection mode. Default value: ``undef`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1459,7 +1615,7 @@ Location of the private key. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1467,7 +1623,7 @@ Location of the certificate. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1475,7 +1631,7 @@ Location of the CA certificate. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -1483,7 +1639,7 @@ The private key in a base64 encoded string to store in spicified ssl_key_path fi Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -1491,7 +1647,7 @@ The certificate in a base64 encoded string to store in spicified ssl_cert_path f Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -1499,7 +1655,7 @@ The CA root certificate in a base64 encoded string to store in spicified ssl_cac Default value: ``undef`` -##### `table_prefix` +##### `table_prefix` Data type: `Optional[String]` @@ -1507,7 +1663,7 @@ PostgreSQL database table prefix. Default value: ``undef`` -##### `instance_name` +##### `instance_name` Data type: `Optional[String]` @@ -1515,7 +1671,7 @@ Unique identifier for the local Icinga 2 instance. Default value: ``undef`` -##### `instance_description` +##### `instance_description` Data type: `Optional[String]` @@ -1523,7 +1679,7 @@ Description of the Icinga 2 instance. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1531,7 +1687,7 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -##### `failover_timeout` +##### `failover_timeout` Data type: `Optional[Icinga2::Interval]` @@ -1539,7 +1695,7 @@ Set the failover timeout in a HA cluster. Must not be lower than 60s. Default value: ``undef`` -##### `cleanup` +##### `cleanup` Data type: `Optional[Icinga2::IdoCleanup]` @@ -1547,7 +1703,7 @@ Hash with items for historical table cleanup. Default value: ``undef`` -##### `categories` +##### `categories` Data type: `Optional[Array]` @@ -1555,7 +1711,7 @@ Array of information types that should be written to the database. Default value: ``undef`` -##### `import_schema` +##### `import_schema` Data type: `Boolean` @@ -1563,7 +1719,7 @@ Whether to import the PostgreSQL schema or not. Default value: ``false`` -### `icinga2::feature::influxdb` +### `icinga2::feature::influxdb` Configures the Icinga 2 feature influxdb. @@ -1582,9 +1738,34 @@ class { 'icinga2::feature::influxdb': #### Parameters -The following parameters are available in the `icinga2::feature::influxdb` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::influxdb` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`database`](#database) +* [`username`](#username) +* [`password`](#password) +* [`basic_auth`](#basic_auth) +* [`enable_ssl`](#enable_ssl) +* [`ssl_noverify`](#ssl_noverify) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`host_measurement`](#host_measurement) +* [`host_tags`](#host_tags) +* [`service_measurement`](#service_measurement) +* [`service_tags`](#service_tags) +* [`enable_send_thresholds`](#enable_send_thresholds) +* [`enable_send_metadata`](#enable_send_metadata) +* [`flush_interval`](#flush_interval) +* [`flush_threshold`](#flush_threshold) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1592,7 +1773,7 @@ Set to present enables the feature influxdb, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -1600,7 +1781,7 @@ InfluxDB host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port]` @@ -1608,7 +1789,7 @@ InfluxDB HTTP port. Default value: ``undef`` -##### `database` +##### `database` Data type: `Optional[String]` @@ -1616,7 +1797,7 @@ InfluxDB database name. Default value: ``undef`` -##### `username` +##### `username` Data type: `Optional[String]` @@ -1624,7 +1805,7 @@ InfluxDB user name. Default value: ``undef`` -##### `password` +##### `password` Data type: `Optional[Variant[String, Sensitive[String]]]` @@ -1632,7 +1813,7 @@ InfluxDB user password. The password parameter isn't parsed anymore. Default value: ``undef`` -##### `basic_auth` +##### `basic_auth` Data type: `Optional[Icinga2::BasicAuth]` @@ -1640,7 +1821,7 @@ Username and password for HTTP basic authentication. Default value: ``undef`` -##### `enable_ssl` +##### `enable_ssl` Data type: `Optional[Boolean]` @@ -1648,7 +1829,7 @@ Either enable or disable SSL. Other SSL parameters are only affected if this is Default value: ``undef`` -##### `ssl_noverify` +##### `ssl_noverify` Data type: `Optional[Boolean]` @@ -1656,7 +1837,7 @@ Disable TLS peer verification. Default value: ``undef`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1664,7 +1845,7 @@ Location of the private key. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1672,7 +1853,7 @@ Location of the certificate. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1680,7 +1861,7 @@ Location of the CA certificate. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -1688,7 +1869,7 @@ The private key in a base64 encoded string to store in ssl_key_path file. Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -1696,7 +1877,7 @@ The certificate in a base64 encoded string to store in ssl_cert_path file. Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -1704,7 +1885,7 @@ The CA root certificate in a base64 encoded to store in ssl_cacert_path file. Default value: ``undef`` -##### `host_measurement` +##### `host_measurement` Data type: `String` @@ -1712,7 +1893,7 @@ The value of this is used for the measurement setting in host_template. Default value: `'$host.check_command$'` -##### `host_tags` +##### `host_tags` Data type: `Hash` @@ -1720,7 +1901,7 @@ Tags defined in this hash will be set in the host_template. Default value: `{ hostname => '$host.name$' }` -##### `service_measurement` +##### `service_measurement` Data type: `String` @@ -1728,7 +1909,7 @@ The value of this is used for the measurement setting in host_template. Default value: `'$service.check_command$'` -##### `service_tags` +##### `service_tags` Data type: `Hash` @@ -1736,7 +1917,7 @@ Tags defined in this hash will be set in the service_template. Default value: `{ hostname => '$host.name$', service => '$service.name$' }` -##### `enable_send_thresholds` +##### `enable_send_thresholds` Data type: `Optional[Boolean]` @@ -1744,7 +1925,7 @@ Whether to send warn, crit, min & max tagged data. Default value: ``undef`` -##### `enable_send_metadata` +##### `enable_send_metadata` Data type: `Optional[Boolean]` @@ -1752,7 +1933,7 @@ Whether to send check metadata e.g. states, execution time, latency etc. Default value: ``undef`` -##### `flush_interval` +##### `flush_interval` Data type: `Optional[Icinga2::Interval]` @@ -1760,7 +1941,7 @@ How long to buffer data points before transfering to InfluxDB. Default value: ``undef`` -##### `flush_threshold` +##### `flush_threshold` Data type: `Optional[Integer[1]]` @@ -1768,7 +1949,7 @@ How many data points to buffer before forcing a transfer to InfluxDB. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1776,7 +1957,7 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::influxdb2` +### `icinga2::feature::influxdb2` Configures the Icinga 2 feature influxdb2. @@ -1795,9 +1976,33 @@ class { 'icinga2::feature::influxdb2': #### Parameters -The following parameters are available in the `icinga2::feature::influxdb2` class. - -##### `ensure` +The following parameters are available in the `icinga2::feature::influxdb2` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`organization`](#organization) +* [`bucket`](#bucket) +* [`auth_token`](#auth_token) +* [`enable_ssl`](#enable_ssl) +* [`ssl_noverify`](#ssl_noverify) +* [`ssl_key_path`](#ssl_key_path) +* [`ssl_cert_path`](#ssl_cert_path) +* [`ssl_cacert_path`](#ssl_cacert_path) +* [`ssl_key`](#ssl_key) +* [`ssl_cert`](#ssl_cert) +* [`ssl_cacert`](#ssl_cacert) +* [`host_measurement`](#host_measurement) +* [`host_tags`](#host_tags) +* [`service_measurement`](#service_measurement) +* [`service_tags`](#service_tags) +* [`enable_send_thresholds`](#enable_send_thresholds) +* [`enable_send_metadata`](#enable_send_metadata) +* [`flush_interval`](#flush_interval) +* [`flush_threshold`](#flush_threshold) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1805,7 +2010,7 @@ Set to present enables the feature influxdb, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -1813,7 +2018,7 @@ InfluxDB host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port]` @@ -1821,25 +2026,25 @@ InfluxDB HTTP port. Default value: ``undef`` -##### `organization` +##### `organization` Data type: `String` InfluxDB organization name. -##### `bucket` +##### `bucket` Data type: `String` InfluxDB bucket name. -##### `auth_token` +##### `auth_token` Data type: `Variant[String, Sensitive[String]]` InfluxDB authentication token. -##### `enable_ssl` +##### `enable_ssl` Data type: `Optional[Boolean]` @@ -1847,7 +2052,7 @@ Either enable or disable SSL. Other SSL parameters are only affected if this is Default value: ``undef`` -##### `ssl_noverify` +##### `ssl_noverify` Data type: `Optional[Boolean]` @@ -1855,7 +2060,7 @@ Disable TLS peer verification. Default value: ``undef`` -##### `ssl_key_path` +##### `ssl_key_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1863,7 +2068,7 @@ Location of the private key. Default value: ``undef`` -##### `ssl_cert_path` +##### `ssl_cert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1871,7 +2076,7 @@ Location of the certificate. Default value: ``undef`` -##### `ssl_cacert_path` +##### `ssl_cacert_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -1879,7 +2084,7 @@ Location of the CA certificate. Default value: ``undef`` -##### `ssl_key` +##### `ssl_key` Data type: `Optional[Stdlib::Base64]` @@ -1887,7 +2092,7 @@ The private key in a base64 encoded string to store in ssl_key_path file. Default value: ``undef`` -##### `ssl_cert` +##### `ssl_cert` Data type: `Optional[Stdlib::Base64]` @@ -1895,7 +2100,7 @@ The certificate in a base64 encoded string to store in ssl_cert_path file. Default value: ``undef`` -##### `ssl_cacert` +##### `ssl_cacert` Data type: `Optional[Stdlib::Base64]` @@ -1903,7 +2108,7 @@ The CA root certificate in a base64 encoded to store in ssl_cacert_path file. Default value: ``undef`` -##### `host_measurement` +##### `host_measurement` Data type: `String` @@ -1911,7 +2116,7 @@ The value of this is used for the measurement setting in host_template. Default value: `'$host.check_command$'` -##### `host_tags` +##### `host_tags` Data type: `Hash` @@ -1919,7 +2124,7 @@ Tags defined in this hash will be set in the host_template. Default value: `{ hostname => '$host.name$' }` -##### `service_measurement` +##### `service_measurement` Data type: `String` @@ -1927,7 +2132,7 @@ The value of this is used for the measurement setting in host_template. Default value: `'$service.check_command$'` -##### `service_tags` +##### `service_tags` Data type: `Hash` @@ -1935,7 +2140,7 @@ Tags defined in this hash will be set in the service_template. Default value: `{ hostname => '$host.name$', service => '$service.name$' }` -##### `enable_send_thresholds` +##### `enable_send_thresholds` Data type: `Optional[Boolean]` @@ -1943,7 +2148,7 @@ Whether to send warn, crit, min & max tagged data. Default value: ``undef`` -##### `enable_send_metadata` +##### `enable_send_metadata` Data type: `Optional[Boolean]` @@ -1951,7 +2156,7 @@ Whether to send check metadata e.g. states, execution time, latency etc. Default value: ``undef`` -##### `flush_interval` +##### `flush_interval` Data type: `Optional[Icinga2::Interval]` @@ -1959,7 +2164,7 @@ How long to buffer data points before transfering to InfluxDB. Default value: ``undef`` -##### `flush_threshold` +##### `flush_threshold` Data type: `Optional[Integer[1]]` @@ -1967,7 +2172,7 @@ How many data points to buffer before forcing a transfer to InfluxDB. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -1975,15 +2180,22 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::livestatus` +### `icinga2::feature::livestatus` Configures the Icinga 2 feature livestatus. #### Parameters -The following parameters are available in the `icinga2::feature::livestatus` class. +The following parameters are available in the `icinga2::feature::livestatus` class: -##### `ensure` +* [`ensure`](#ensure) +* [`socket_type`](#socket_type) +* [`bind_host`](#bind_host) +* [`bind_port`](#bind_port) +* [`socket_path`](#socket_path) +* [`compat_log_path`](#compat_log_path) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1991,7 +2203,7 @@ Set to present enables the feature livestatus, absent disables it. Default value: `present` -##### `socket_type` +##### `socket_type` Data type: `Optional[Enum['tcp', 'unix']]` @@ -1999,7 +2211,7 @@ Specifies the socket type. Can be either 'tcp' or 'unix'. Default value: ``undef`` -##### `bind_host` +##### `bind_host` Data type: `Optional[Stdlib::Host]` @@ -2007,7 +2219,7 @@ IP address to listen for connections. Only valid when socket_type is 'tcp'. Default value: ``undef`` -##### `bind_port` +##### `bind_port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -2015,7 +2227,7 @@ Port to listen for connections. Only valid when socket_type is 'tcp'. Default value: ``undef`` -##### `socket_path` +##### `socket_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2023,7 +2235,7 @@ Specifies the path to the UNIX socket file. Only valid when socket_type is 'unix Default value: ``undef`` -##### `compat_log_path` +##### `compat_log_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2031,15 +2243,19 @@ Required for historical table queries. Requires CompatLogger feature to be enabl Default value: ``undef`` -### `icinga2::feature::mainlog` +### `icinga2::feature::mainlog` Configures the Icinga 2 feature mainlog. #### Parameters -The following parameters are available in the `icinga2::feature::mainlog` class. +The following parameters are available in the `icinga2::feature::mainlog` class: + +* [`ensure`](#ensure) +* [`severity`](#severity) +* [`path`](#path) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2047,7 +2263,7 @@ Set to 'present' enables the feature mainlog, 'absent' disabled it. Default value: `present` -##### `severity` +##### `severity` Data type: `Icinga2::LogSeverity` @@ -2055,7 +2271,7 @@ You can set the log severity to 'information', 'notice', 'warning' or 'debug'. Default value: `'information'` -##### `path` +##### `path` Data type: `Stdlib::Absolutepath` @@ -2063,15 +2279,18 @@ Absolute path to the log file. Default value: `"${::icinga2::globals::log_dir}/icinga2.log"` -### `icinga2::feature::notification` +### `icinga2::feature::notification` Configures the Icinga 2 feature notification. #### Parameters -The following parameters are available in the `icinga2::feature::notification` class. +The following parameters are available in the `icinga2::feature::notification` class: -##### `ensure` +* [`ensure`](#ensure) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2079,7 +2298,7 @@ Set to present enables the feature notification, absent disabled it. Default value: `present` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -2087,15 +2306,20 @@ Notifications are load-balanced amongst all nodes in a zone. Default value: ``undef`` -### `icinga2::feature::opentsdb` +### `icinga2::feature::opentsdb` Configures the Icinga 2 feature opentsdb. #### Parameters -The following parameters are available in the `icinga2::feature::opentsdb` class. +The following parameters are available in the `icinga2::feature::opentsdb` class: + +* [`ensure`](#ensure) +* [`host`](#host) +* [`port`](#port) +* [`enable_ha`](#enable_ha) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2103,7 +2327,7 @@ Set to present enables the feature opentsdb, absent disables it. Default value: `present` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -2111,7 +2335,7 @@ OpenTSDB host address. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -2119,7 +2343,7 @@ OpenTSDB port. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -2127,15 +2351,25 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::perfdata` +### `icinga2::feature::perfdata` Configures the Icinga 2 feature perfdata. #### Parameters -The following parameters are available in the `icinga2::feature::perfdata` class. +The following parameters are available in the `icinga2::feature::perfdata` class: -##### `ensure` +* [`ensure`](#ensure) +* [`host_perfdata_path`](#host_perfdata_path) +* [`service_perfdata_path`](#service_perfdata_path) +* [`host_temp_path`](#host_temp_path) +* [`service_temp_path`](#service_temp_path) +* [`host_format_template`](#host_format_template) +* [`service_format_template`](#service_format_template) +* [`rotation_interval`](#rotation_interval) +* [`enable_ha`](#enable_ha) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2143,7 +2377,7 @@ Set to present enables the feature perfdata, absent disables it. Default value: `present` -##### `host_perfdata_path` +##### `host_perfdata_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2151,7 +2385,7 @@ Absolute path to the perfdata file for hosts. Default value: ``undef`` -##### `service_perfdata_path` +##### `service_perfdata_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2159,7 +2393,7 @@ Absolute path to the perfdata file for services. Default value: ``undef`` -##### `host_temp_path` +##### `host_temp_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2167,7 +2401,7 @@ Path to the temporary host file. Default value: ``undef`` -##### `service_temp_path` +##### `service_temp_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2175,7 +2409,7 @@ Path to the temporary service file. Default value: ``undef`` -##### `host_format_template` +##### `host_format_template` Data type: `Optional[String]` @@ -2183,7 +2417,7 @@ Host Format template for the performance data file. Default value: ``undef`` -##### `service_format_template` +##### `service_format_template` Data type: `Optional[String]` @@ -2191,7 +2425,7 @@ Service Format template for the performance data file. Default value: ``undef`` -##### `rotation_interval` +##### `rotation_interval` Data type: `Optional[Icinga2::Interval]` @@ -2200,7 +2434,7 @@ i.e. 1m or 15s. Default value: ``undef`` -##### `enable_ha` +##### `enable_ha` Data type: `Optional[Boolean]` @@ -2208,15 +2442,20 @@ Enable the high availability functionality. Only valid in a cluster setup. Default value: ``undef`` -### `icinga2::feature::statusdata` +### `icinga2::feature::statusdata` Configures the Icinga 2 feature statusdata. #### Parameters -The following parameters are available in the `icinga2::feature::statusdata` class. +The following parameters are available in the `icinga2::feature::statusdata` class: + +* [`ensure`](#ensure) +* [`status_path`](#status_path) +* [`objects_path`](#objects_path) +* [`update_interval`](#update_interval) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2224,7 +2463,7 @@ Set to present enables the feature statusdata, absent disables it. Default value: `present` -##### `status_path` +##### `status_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2232,7 +2471,7 @@ Absolute path to the status.dat file. Default value: ``undef`` -##### `objects_path` +##### `objects_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -2240,7 +2479,7 @@ Absolute path to the object.cache file. Default value: ``undef`` -##### `update_interval` +##### `update_interval` Data type: `Optional[Icinga2::Interval]` @@ -2249,15 +2488,19 @@ it in minutes with the letter m or in seconds with s. Default value: ``undef`` -### `icinga2::feature::syslog` +### `icinga2::feature::syslog` Configures the Icinga 2 feature syslog. #### Parameters -The following parameters are available in the `icinga2::feature::syslog` class. +The following parameters are available in the `icinga2::feature::syslog` class: -##### `ensure` +* [`ensure`](#ensure) +* [`severity`](#severity) +* [`facility`](#facility) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2265,7 +2508,7 @@ Set to present enables the feature syslog, absent disables it. Default value: `present` -##### `severity` +##### `severity` Data type: `Icinga2::LogSeverity` @@ -2273,7 +2516,7 @@ You can choose the log severity between information, notice, warning or debug. Default value: `'warning'` -##### `facility` +##### `facility` Data type: `Optional[Icinga2::LogFacility]` @@ -2282,15 +2525,18 @@ like FacilityDaemon. Default value: ``undef`` -### `icinga2::feature::windowseventlog` +### `icinga2::feature::windowseventlog` Configures the Icinga 2 feature windowseventlog. #### Parameters -The following parameters are available in the `icinga2::feature::windowseventlog` class. +The following parameters are available in the `icinga2::feature::windowseventlog` class: + +* [`ensure`](#ensure) +* [`severity`](#severity) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2298,7 +2544,7 @@ Set to present enables the feature windowseventlog, absent disables it. Default value: `present` -##### `severity` +##### `severity` Data type: `Icinga2::LogSeverity` @@ -2306,7 +2552,7 @@ You can choose the log severity between information, notice, warning or debug. Default value: `'warning'` -### `icinga2::pki::ca` +### `icinga2::pki::ca` This class provides multiple ways to create the CA used by Icinga 2. @@ -2332,9 +2578,12 @@ class { 'icinga2::pki::ca': #### Parameters -The following parameters are available in the `icinga2::pki::ca` class. +The following parameters are available in the `icinga2::pki::ca` class: -##### `ca_cert` +* [`ca_cert`](#ca_cert) +* [`ca_key`](#ca_key) + +##### `ca_cert` Data type: `Optional[String]` @@ -2343,7 +2592,7 @@ Icinga 2 CLI. Default value: ``undef`` -##### `ca_key` +##### `ca_key` Data type: `Optional[String]` @@ -2353,7 +2602,7 @@ Default value: ``undef`` ## Defined types -### `icinga2::config::fragment` +### `icinga2::config::fragment` Set a code fragment in a target configuration file. @@ -2388,22 +2637,27 @@ icinga2::config::fragment { 'load-function': #### Parameters -The following parameters are available in the `icinga2::config::fragment` defined type. +The following parameters are available in the `icinga2::config::fragment` defined type: + +* [`content`](#content) +* [`target`](#target) +* [`order`](#order) +* [`code_name`](#code_name) -##### `content` +##### `content` Data type: `String` Content to insert in file specified in target. -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this fragment. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2411,7 +2665,7 @@ String or integer to set the position in the target file, sorted in alpha numeri Default value: `'00'` -##### `code_name` +##### `code_name` Data type: `String` @@ -2419,7 +2673,7 @@ Data type: `String` Default value: `$title` -### `icinga2::object::apiuser` +### `icinga2::object::apiuser` Manage Icinga 2 ApiUser objects. @@ -2469,9 +2723,17 @@ Manage Icinga 2 ApiUser objects. #### Parameters -The following parameters are available in the `icinga2::object::apiuser` defined type. +The following parameters are available in the `icinga2::object::apiuser` defined type: -##### `ensure` +* [`ensure`](#ensure) +* [`apiuser_name`](#apiuser_name) +* [`password`](#password) +* [`client_cn`](#client_cn) +* [`permissions`](#permissions) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2479,7 +2741,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `apiuser_name` +##### `apiuser_name` Data type: `String` @@ -2487,7 +2749,7 @@ Set the name of the apiuser object. Default value: `$title` -##### `password` +##### `password` Data type: `Optional[Variant[String, Sensitive[String]]]` @@ -2495,7 +2757,7 @@ Password string. The password parameter isn't parsed anymore. Default value: ``undef`` -##### `client_cn` +##### `client_cn` Data type: `Optional[String]` @@ -2503,7 +2765,7 @@ Optional. Client Common Name (CN). Default value: ``undef`` -##### `permissions` +##### `permissions` Data type: `Optional[Array]` @@ -2512,14 +2774,14 @@ and filter. The latter must be specified as function. Default value: ``undef`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared at the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2527,15 +2789,27 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `30` -### `icinga2::object::checkcommand` +### `icinga2::object::checkcommand` Manage Icinga 2 Host objects. #### Parameters -The following parameters are available in the `icinga2::object::checkcommand` defined type. +The following parameters are available in the `icinga2::object::checkcommand` defined type: + +* [`ensure`](#ensure) +* [`checkcommand_name`](#checkcommand_name) +* [`import`](#import) +* [`command`](#command) +* [`env`](#env) +* [`vars`](#vars) +* [`timeout`](#timeout) +* [`arguments`](#arguments) +* [`target`](#target) +* [`template`](#template) +* [`order`](#order) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2543,7 +2817,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `checkcommand_name` +##### `checkcommand_name` Data type: `String` @@ -2551,7 +2825,7 @@ Title of the CheckCommand object. Default value: `$title` -##### `import` +##### `import` Data type: `Array` @@ -2559,7 +2833,7 @@ Sorted List of templates to include. Default value: `[]` -##### `command` +##### `command` Data type: `Optional[Variant[Array, String]]` @@ -2569,7 +2843,7 @@ When using the "arguments" attribute this must be an array. Can be specified as Default value: ``undef`` -##### `env` +##### `env` Data type: `Optional[Hash]` @@ -2577,7 +2851,7 @@ A dictionary of macros which should be exported as environment variables prior t Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -2587,7 +2861,7 @@ of custom attributes. Default value: ``undef`` -##### `timeout` +##### `timeout` Data type: `Optional[Icinga2::Interval]` @@ -2595,7 +2869,7 @@ The command timeout in seconds. Default value: ``undef`` -##### `arguments` +##### `arguments` Data type: `Optional[Variant[Hash, String]]` @@ -2603,14 +2877,14 @@ A dictionary of command arguments. Default value: ``undef`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `template` +##### `template` Data type: `Boolean` @@ -2618,7 +2892,7 @@ Set to true creates a template instead of an object. Default value: ``false`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2626,15 +2900,21 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `15` -### `icinga2::object::checkresultreader` +### `icinga2::object::checkresultreader` Manage Icinga 2 CheckResultReader objects. #### Parameters -The following parameters are available in the `icinga2::object::checkresultreader` defined type. +The following parameters are available in the `icinga2::object::checkresultreader` defined type: -##### `ensure` +* [`ensure`](#ensure) +* [`checkresultreader_name`](#checkresultreader_name) +* [`spool_dir`](#spool_dir) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2642,7 +2922,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `checkresultreader_name` +##### `checkresultreader_name` Data type: `String` @@ -2650,7 +2930,7 @@ Set the Icinga 2 name of the ceckresultreader object. Default value: `$title` -##### `spool_dir` +##### `spool_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -2658,14 +2938,14 @@ The directory which contains the check result files. Default value: ``undef`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2673,15 +2953,217 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `'05'` -### `icinga2::object::endpoint` +### `icinga2::object::dependency` + +Manage Icinga 2 dependency objects. + +#### Parameters + +The following parameters are available in the `icinga2::object::dependency` defined type: + +* [`ensure`](#ensure) +* [`dependency_name`](#dependency_name) +* [`parent_host_name`](#parent_host_name) +* [`parent_service_name`](#parent_service_name) +* [`child_host_name`](#child_host_name) +* [`child_service_name`](#child_service_name) +* [`disable_checks`](#disable_checks) +* [`disable_notifications`](#disable_notifications) +* [`ignore_soft_states`](#ignore_soft_states) +* [`period`](#period) +* [`states`](#states) +* [`apply`](#apply) +* [`prefix`](#prefix) +* [`apply_target`](#apply_target) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`template`](#template) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) + +##### `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: `[]` + +##### `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: `70` + +### `icinga2::object::endpoint` Manage Icinga 2 endpoint objects. #### Parameters -The following parameters are available in the `icinga2::object::endpoint` defined type. +The following parameters are available in the `icinga2::object::endpoint` defined type: -##### `ensure` +* [`ensure`](#ensure) +* [`endpoint_name`](#endpoint_name) +* [`host`](#host) +* [`port`](#port) +* [`log_duration`](#log_duration) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2689,7 +3171,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `endpoint_name` +##### `endpoint_name` Data type: `String` @@ -2697,7 +3179,7 @@ Set the Icinga 2 name of the endpoint object. Default value: `$title` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -2705,7 +3187,7 @@ Optional. The IP address of the remote Icinga 2 instance. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port::Unprivileged]` @@ -2713,7 +3195,7 @@ The service name/port of the remote Icinga 2 instance. Default value: ``undef`` -##### `log_duration` +##### `log_duration` Data type: `Optional[Icinga2::Interval]` @@ -2724,7 +3206,7 @@ or 1h for one hour. Default value: ``undef`` -##### `target` +##### `target` Data type: `Optional[Stdlib::Absolutepath]` @@ -2733,7 +3215,7 @@ first time. Default value: ``undef`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2741,15 +3223,26 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `40` -### `icinga2::object::eventcommand` +### `icinga2::object::eventcommand` Manage Icinga 2 EventCommand objects. #### Parameters -The following parameters are available in the `icinga2::object::eventcommand` defined type. +The following parameters are available in the `icinga2::object::eventcommand` defined type: + +* [`ensure`](#ensure) +* [`eventcommand_name`](#eventcommand_name) +* [`command`](#command) +* [`env`](#env) +* [`vars`](#vars) +* [`timeout`](#timeout) +* [`arguments`](#arguments) +* [`target`](#target) +* [`import`](#import) +* [`order`](#order) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2757,7 +3250,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `eventcommand_name` +##### `eventcommand_name` Data type: `String` @@ -2765,7 +3258,7 @@ Set the Icinga 2 name of the eventcommand object. Default value: `$title` -##### `command` +##### `command` Data type: `Optional[Variant[Array, String]]` @@ -2775,7 +3268,7 @@ takes care of parsing the command. Default value: ``undef`` -##### `env` +##### `env` Data type: `Optional[Hash]` @@ -2783,7 +3276,7 @@ A dictionary of macros which should be exported as environment variables prior t Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -2793,7 +3286,7 @@ of custom attributes. Default value: ``undef`` -##### `timeout` +##### `timeout` Data type: `Optional[Icinga2::Interval]` @@ -2801,7 +3294,7 @@ The command timeout in seconds. Default value: ``undef`` -##### `arguments` +##### `arguments` Data type: `Optional[Hash]` @@ -2809,14 +3302,14 @@ A dictionary of command arguments. Default value: ``undef`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `import` +##### `import` Data type: `Array` @@ -2824,7 +3317,7 @@ Sorted List of templates to include. Default value: `[]` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2832,15 +3325,50 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `20` -### `icinga2::object::host` +### `icinga2::object::host` Manage Icinga 2 Host objects. #### Parameters -The following parameters are available in the `icinga2::object::host` defined type. - -##### `ensure` +The following parameters are available in the `icinga2::object::host` defined type: + +* [`ensure`](#ensure) +* [`host_name`](#host_name) +* [`import`](#import) +* [`display_name`](#display_name) +* [`address`](#address) +* [`address6`](#address6) +* [`vars`](#vars) +* [`groups`](#groups) +* [`check_command`](#check_command) +* [`max_check_attempts`](#max_check_attempts) +* [`check_period`](#check_period) +* [`check_timeout`](#check_timeout) +* [`check_interval`](#check_interval) +* [`retry_interval`](#retry_interval) +* [`enable_notifications`](#enable_notifications) +* [`enable_active_checks`](#enable_active_checks) +* [`enable_passive_checks`](#enable_passive_checks) +* [`enable_event_handler`](#enable_event_handler) +* [`enable_flapping`](#enable_flapping) +* [`enable_perfdata`](#enable_perfdata) +* [`event_command`](#event_command) +* [`flapping_threshold_low`](#flapping_threshold_low) +* [`flapping_threshold_high`](#flapping_threshold_high) +* [`volatile`](#volatile) +* [`zone`](#zone) +* [`command_endpoint`](#command_endpoint) +* [`notes`](#notes) +* [`notes_url`](#notes_url) +* [`action_url`](#action_url) +* [`icon_image`](#icon_image) +* [`icon_image_alt`](#icon_image_alt) +* [`template`](#template) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2848,7 +3376,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `host_name` +##### `host_name` Data type: `String` @@ -2856,7 +3384,7 @@ Hostname of the Host object. Default value: `$title` -##### `import` +##### `import` Data type: `Array` @@ -2864,7 +3392,7 @@ Sorted List of templates to include. Default value: `[]` -##### `display_name` +##### `display_name` Data type: `Optional[String]` @@ -2872,7 +3400,7 @@ A short description of the host (e.g. displayed by external interfaces instead o Default value: ``undef`` -##### `address` +##### `address` Data type: `Optional[Stdlib::Host]` @@ -2880,7 +3408,7 @@ The host's address v4. Default value: ``undef`` -##### `address6` +##### `address6` Data type: `Optional[Stdlib::Host]` @@ -2888,7 +3416,7 @@ The host's address v6. Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -2898,7 +3426,7 @@ of custom attributes. Default value: ``undef`` -##### `groups` +##### `groups` Data type: `Optional[Array]` @@ -2906,7 +3434,7 @@ A list of host groups this host belongs to. Default value: ``undef`` -##### `check_command` +##### `check_command` Data type: `Optional[String]` @@ -2914,7 +3442,7 @@ The name of the check command. Default value: ``undef`` -##### `max_check_attempts` +##### `max_check_attempts` Data type: `Optional[Integer[1]]` @@ -2922,7 +3450,7 @@ The number of times a host is re-checked before changing into a hard state. Default value: ``undef`` -##### `check_period` +##### `check_period` Data type: `Optional[String]` @@ -2930,7 +3458,7 @@ The name of a time period which determines when this host should be checked. Default value: ``undef`` -##### `check_timeout` +##### `check_timeout` Data type: `Optional[Icinga2::Interval]` @@ -2938,7 +3466,7 @@ Check command timeout in seconds. Overrides the CheckCommand's timeout attribute Default value: ``undef`` -##### `check_interval` +##### `check_interval` Data type: `Optional[Icinga2::Interval]` @@ -2946,7 +3474,7 @@ The check interval (in seconds). This interval is used for checks when the host Default value: ``undef`` -##### `retry_interval` +##### `retry_interval` Data type: `Optional[Icinga2::Interval]` @@ -2954,7 +3482,7 @@ The retry interval (in seconds). This interval is used for checks when the host Default value: ``undef`` -##### `enable_notifications` +##### `enable_notifications` Data type: `Optional[Boolean]` @@ -2962,7 +3490,7 @@ Whether notifications are enabled. Default value: ``undef`` -##### `enable_active_checks` +##### `enable_active_checks` Data type: `Optional[Boolean]` @@ -2970,7 +3498,7 @@ Whether active checks are enabled. Default value: ``undef`` -##### `enable_passive_checks` +##### `enable_passive_checks` Data type: `Optional[Boolean]` @@ -2978,7 +3506,7 @@ Whether passive checks are enabled. Default value: ``undef`` -##### `enable_event_handler` +##### `enable_event_handler` Data type: `Optional[Boolean]` @@ -2986,7 +3514,7 @@ Enables event handlers for this host. Default value: ``undef`` -##### `enable_flapping` +##### `enable_flapping` Data type: `Optional[Boolean]` @@ -2994,7 +3522,7 @@ Whether flap detection is enabled. Default value: ``undef`` -##### `enable_perfdata` +##### `enable_perfdata` Data type: `Optional[Boolean]` @@ -3002,7 +3530,7 @@ Whether performance data processing is enabled. Default value: ``undef`` -##### `event_command` +##### `event_command` Data type: `Optional[String]` @@ -3011,7 +3539,7 @@ state changes or the host is in a SOFT state. Default value: ``undef`` -##### `flapping_threshold_low` +##### `flapping_threshold_low` Data type: `Optional[Integer[1]]` @@ -3019,7 +3547,7 @@ Flapping lower bound in percent for a host to be considered not flapping. Default value: ``undef`` -##### `flapping_threshold_high` +##### `flapping_threshold_high` Data type: `Optional[Integer[1]]` @@ -3027,7 +3555,7 @@ Flapping upper bound in percent for a host to be considered flapping. Default value: ``undef`` -##### `volatile` +##### `volatile` Data type: `Optional[Boolean]` @@ -3035,7 +3563,7 @@ The volatile setting enables always HARD state types if NOT-OK state changes occ Default value: ``undef`` -##### `zone` +##### `zone` Data type: `Optional[String]` @@ -3043,7 +3571,7 @@ The zone this object is a member of. Default value: ``undef`` -##### `command_endpoint` +##### `command_endpoint` Data type: `Optional[String]` @@ -3051,7 +3579,7 @@ The endpoint where commands are executed on. Default value: ``undef`` -##### `notes` +##### `notes` Data type: `Optional[String]` @@ -3059,7 +3587,7 @@ Notes for the host. Default value: ``undef`` -##### `notes_url` +##### `notes_url` Data type: `Optional[String]` @@ -3067,7 +3595,7 @@ Url for notes for the host (for example, in notification commands). Default value: ``undef`` -##### `action_url` +##### `action_url` Data type: `Optional[String]` @@ -3075,7 +3603,7 @@ Url for actions for the host (for example, an external graphing tool). Default value: ``undef`` -##### `icon_image` +##### `icon_image` Data type: `Optional[String]` @@ -3083,7 +3611,7 @@ Icon image for the host. Used by external interfaces only. Default value: ``undef`` -##### `icon_image_alt` +##### `icon_image_alt` Data type: `Optional[String]` @@ -3091,7 +3619,7 @@ Icon image description for the host. Used by external interface only. Default value: ``undef`` -##### `template` +##### `template` Data type: `Boolean` @@ -3099,14 +3627,14 @@ Set to true creates a template instead of an object. Default value: ``false`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3114,7 +3642,7 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `50` -### `icinga2::object::hostgroup` +### `icinga2::object::hostgroup` Manage Icinga 2 HostGroup objects. @@ -3133,9 +3661,18 @@ icinga2::object::hostgroup { 'monitoring-hosts': #### Parameters -The following parameters are available in the `icinga2::object::hostgroup` defined type. +The following parameters are available in the `icinga2::object::hostgroup` defined type: + +* [`ensure`](#ensure) +* [`display_name`](#display_name) +* [`groups`](#groups) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`target`](#target) +* [`order`](#order) +* [`hostgroup_name`](#hostgroup_name) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3143,7 +3680,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `display_name` +##### `display_name` Data type: `Optional[String]` @@ -3151,7 +3688,7 @@ A short description of the host group. Default value: ``undef`` -##### `groups` +##### `groups` Data type: `Optional[Array]` @@ -3159,7 +3696,7 @@ An array of nested group names. Default value: ``undef`` -##### `assign` +##### `assign` Data type: `Array` @@ -3167,7 +3704,7 @@ Assign host group members using the group rules. Default value: `[]` -##### `ignore` +##### `ignore` Data type: `Array` @@ -3175,14 +3712,14 @@ Ignore host group members using the group rules. Default value: `[]` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared at the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3190,7 +3727,7 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `55` -##### `hostgroup_name` +##### `hostgroup_name` Data type: `String` @@ -3198,15 +3735,28 @@ Data type: `String` Default value: `$title` -### `icinga2::object::icingaapplication` +### `icinga2::object::icingaapplication` The icinga2::object::icingaapplication class. #### Parameters -The following parameters are available in the `icinga2::object::icingaapplication` defined type. +The following parameters are available in the `icinga2::object::icingaapplication` defined type: -##### `environment` +* [`environment`](#environment) +* [`target`](#target) +* [`order`](#order) +* [`ensure`](#ensure) +* [`app_name`](#app_name) +* [`enable_notifications`](#enable_notifications) +* [`enable_event_handlers`](#enable_event_handlers) +* [`enable_flapping`](#enable_flapping) +* [`enable_host_checks`](#enable_host_checks) +* [`enable_service_checks`](#enable_service_checks) +* [`enable_perfdata`](#enable_perfdata) +* [`vars`](#vars) + +##### `environment` Data type: `Optional[String]` @@ -3215,7 +3765,7 @@ specified in the configuration or on the CLI with --define. Default value: ``undef`` -##### `target` +##### `target` Data type: `Optional[Stdlib::Absolutepath]` @@ -3224,7 +3774,7 @@ first time. Default value: ``undef`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3232,7 +3782,7 @@ String or integer to control the position in the target file, sorted alpha numer Default value: `5` -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3240,7 +3790,7 @@ Data type: `Enum['absent', 'present']` Default value: `present` -##### `app_name` +##### `app_name` Data type: `String` @@ -3248,7 +3798,7 @@ Data type: `String` Default value: `$title` -##### `enable_notifications` +##### `enable_notifications` Data type: `Optional[Boolean]` @@ -3256,7 +3806,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_event_handlers` +##### `enable_event_handlers` Data type: `Optional[Boolean]` @@ -3264,7 +3814,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_flapping` +##### `enable_flapping` Data type: `Optional[Boolean]` @@ -3272,7 +3822,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_host_checks` +##### `enable_host_checks` Data type: `Optional[Boolean]` @@ -3280,7 +3830,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_service_checks` +##### `enable_service_checks` Data type: `Optional[Boolean]` @@ -3288,7 +3838,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `enable_perfdata` +##### `enable_perfdata` Data type: `Optional[Boolean]` @@ -3296,7 +3846,7 @@ Data type: `Optional[Boolean]` Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -3304,15 +3854,39 @@ Data type: `Optional[Icinga2::CustomAttributes]` Default value: ``undef`` -### `icinga2::object::notificationcommand` +### `icinga2::object::notification` -Manage Icinga 2 notificationcommand objects. +Manage Icinga 2 notification objects. #### Parameters -The following parameters are available in the `icinga2::object::notificationcommand` defined type. - -##### `ensure` +The following parameters are available in the `icinga2::object::notification` defined type: + +* [`ensure`](#ensure) +* [`notification_name`](#notification_name) +* [`host_name`](#host_name) +* [`service_name`](#service_name) +* [`vars`](#vars) +* [`users`](#users) +* [`user_groups`](#user_groups) +* [`times`](#times) +* [`command`](#command) +* [`interval`](#interval) +* [`period`](#period) +* [`zone`](#zone) +* [`types`](#types) +* [`states`](#states) +* [`template`](#template) +* [`apply`](#apply) +* [`prefix`](#prefix) +* [`apply_target`](#apply_target) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) +* [`assign`](#assign) +* [`ignore`](#ignore) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3320,34 +3894,32 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `notificationcommand_name` +##### `notification_name` Data type: `String` -Set the Icinga 2 name of the notificationcommand object. +Set the Icinga 2 name of the notification object. Default value: `$title` -##### `command` +##### `host_name` -Data type: `Optional[Variant[Array, String]]` +Data type: `Optional[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. +The name of the host this notification belongs to. Default value: ``undef`` -##### `env` +##### `service_name` -Data type: `Optional[Hash]` +Data type: `Optional[String]` -A dictionary of macros which should be exported as environment variables -prior to executing the command. +The short name of the service this notification belongs to. If omitted, this +notification object is treated as host notification. Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -3357,118 +3929,115 @@ of custom attributes. Default value: ``undef`` -##### `timeout` +##### `users` -Data type: `Optional[Icinga2::Interval]` +Data type: `Optional[Variant[String, Array]]` -The command timeout in seconds. +A list of user names who should be notified. Default value: ``undef`` -##### `arguments` +##### `user_groups` -Data type: `Optional[Hash]` +Data type: `Optional[Variant[String, Array]]` -A dictionary of command arguments. +A list of user group names who should be notified. Default value: ``undef`` -##### `template` - -Data type: `Boolean` - -Set to true creates a template instead of an object. - -Default value: ``false`` +##### `times` -##### `import` +Data type: `Optional[Hash]` -Data type: `Array` +A dictionary containing begin and end attributes for the notification. -Sorted List of templates to include. +Default value: ``undef`` -Default value: `[]` +##### `command` -##### `target` +Data type: `Optional[String]` -Data type: `Stdlib::Absolutepath` +The name of the notification command which should be executed when the +notification is triggered. -Destination config file to store in this object. File will be declared the -first time. +Default value: ``undef`` -##### `order` +##### `interval` -Data type: `Variant[String, Integer]` +Data type: `Optional[Variant[Icinga2::Interval,Pattern[/(host|service)\./]]]` -String or integer to set the position in the target file, sorted alpha numeric. +The notification interval (in seconds). This interval is used for active +notifications. -Default value: `25` +Default value: ``undef`` -### `icinga2::object::servicegroup` +##### `period` -Manage Icinga 2 servicegroup objects. +Data type: `Optional[String]` -#### Parameters +The name of a time period which determines when this notification should be +triggered. -The following parameters are available in the `icinga2::object::servicegroup` defined type. +Default value: ``undef`` -##### `ensure` +##### `zone` -Data type: `Enum['absent', 'present']` +Data type: `Optional[String]` -Set to present enables the object, absent disables it. +The zone this object is a member of. -Default value: `present` +Default value: ``undef`` -##### `servicegroup_name` +##### `types` -Data type: `String` +Data type: `Optional[Variant[Array, String]]` -Set the Icinga 2 name of the servicegroup object. +A list of type filters when this notification should be triggered. -Default value: `$title` +Default value: ``undef`` -##### `display_name` +##### `states` -Data type: `Optional[String]` +Data type: `Optional[Variant[Array, String]]` -A short description of the service group. +A list of state filters when this notification should be triggered. Default value: ``undef`` -##### `groups` +##### `template` -Data type: `Optional[Array]` +Data type: `Boolean` -An array of nested group names. +Set to true creates a template instead of an object. -Default value: ``undef`` +Default value: ``false`` -##### `assign` +##### `apply` -Data type: `Array` +Data type: `Variant[Boolean, String]` -Assign user group members using the group assign rules. +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: `[]` +Default value: ``false`` -##### `ignore` +##### `prefix` -Data type: `Array` +Data type: `Variant[Boolean, String]` -Exclude users using the group ignore rules. +Set notification_name as prefix in front of 'apply for'. Only effects if apply is a string. -Default value: `[]` +Default value: ``false`` -##### `template` +##### `apply_target` -Data type: `Boolean` +Data type: `Enum['Host', 'Service']` -Set to true creates a template instead of an object. +An object type on which to target the apply rule. Valid values are `Host` and `Service`. -Default value: ``false`` +Default value: `'Host'` -##### `import` +##### `import` Data type: `Array` @@ -3476,62 +4045,834 @@ Sorted List of templates to include. Default value: `[]` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` String or integer to set the position in the target file, sorted alpha numeric. -Default value: `65` +Default value: `85` -### `icinga2::object::timeperiod` +##### `assign` -Manage Icinga 2 timeperiod objects. +Data type: `Array` -#### Parameters -The following parameters are available in the `icinga2::object::timeperiod` defined type. -##### `ensure` +Default value: `[]` -Data type: `Enum['absent', 'present']` +##### `ignore` -Set to present enables the object, absent disables it. +Data type: `Array` -Default value: `present` -##### `timeperiod_name` -Data type: `String` +Default value: `[]` -Set the Icinga 2 name of the timeperiod object. +### `icinga2::object::notificationcommand` -Default value: `$title` +Manage Icinga 2 notificationcommand objects. -##### `display_name` +#### Parameters -Data type: `Optional[String]` +The following parameters are available in the `icinga2::object::notificationcommand` defined type: -A short description of the time period. +* [`ensure`](#ensure) +* [`notificationcommand_name`](#notificationcommand_name) +* [`command`](#command) +* [`env`](#env) +* [`vars`](#vars) +* [`timeout`](#timeout) +* [`arguments`](#arguments) +* [`template`](#template) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) -Default value: ``undef`` +##### `ensure` -##### `import` +Data type: `Enum['absent', 'present']` -Data type: `Array` +Set to present enables the object, absent disables it. -Sorted List of templates to include. +Default value: `present` -Default value: `['legacy-timeperiod']` +##### `notificationcommand_name` -##### `ranges` +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[Icinga2::Interval]` + +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`](#ensure) +* [`scheduleddowntime_name`](#scheduleddowntime_name) +* [`host_name`](#host_name) +* [`service_name`](#service_name) +* [`author`](#author) +* [`comment`](#comment) +* [`fixed`](#fixed) +* [`duration`](#duration) +* [`ranges`](#ranges) +* [`apply`](#apply) +* [`prefix`](#prefix) +* [`apply_target`](#apply_target) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`target`](#target) +* [`order`](#order) + +##### `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`](#ensure) +* [`service_name`](#service_name) +* [`display_name`](#display_name) +* [`host_name`](#host_name) +* [`groups`](#groups) +* [`vars`](#vars) +* [`check_command`](#check_command) +* [`max_check_attempts`](#max_check_attempts) +* [`check_period`](#check_period) +* [`check_timeout`](#check_timeout) +* [`check_interval`](#check_interval) +* [`retry_interval`](#retry_interval) +* [`enable_notifications`](#enable_notifications) +* [`enable_active_checks`](#enable_active_checks) +* [`enable_passive_checks`](#enable_passive_checks) +* [`enable_event_handler`](#enable_event_handler) +* [`enable_flapping`](#enable_flapping) +* [`enable_perfdata`](#enable_perfdata) +* [`event_command`](#event_command) +* [`flapping_threshold_low`](#flapping_threshold_low) +* [`flapping_threshold_high`](#flapping_threshold_high) +* [`volatile`](#volatile) +* [`zone`](#zone) +* [`command_endpoint`](#command_endpoint) +* [`notes`](#notes) +* [`notes_url`](#notes_url) +* [`action_url`](#action_url) +* [`icon_image`](#icon_image) +* [`icon_image_alt`](#icon_image_alt) +* [`template`](#template) +* [`apply`](#apply) +* [`prefix`](#prefix) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) + +##### `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[String]` + +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: `[]` + +##### `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: `60` + +### `icinga2::object::servicegroup` + +Manage Icinga 2 servicegroup objects. + +#### Parameters + +The following parameters are available in the `icinga2::object::servicegroup` defined type: + +* [`ensure`](#ensure) +* [`servicegroup_name`](#servicegroup_name) +* [`display_name`](#display_name) +* [`groups`](#groups) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`template`](#template) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` + +Data type: `Enum['absent', 'present']` + +Set to present enables the object, absent disables it. + +Default value: `present` + +##### `servicegroup_name` + +Data type: `String` + +Set the Icinga 2 name of the servicegroup object. + +Default value: `$title` + +##### `display_name` + +Data type: `Optional[String]` + +A short description of the service group. + +Default value: ``undef`` + +##### `groups` + +Data type: `Optional[Array]` + +An array of nested group names. + +Default value: ``undef`` + +##### `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: `[]` + +##### `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: `65` + +### `icinga2::object::timeperiod` + +Manage Icinga 2 timeperiod objects. + +#### Parameters + +The following parameters are available in the `icinga2::object::timeperiod` defined type: + +* [`ensure`](#ensure) +* [`timeperiod_name`](#timeperiod_name) +* [`display_name`](#display_name) +* [`import`](#import) +* [`ranges`](#ranges) +* [`prefer_includes`](#prefer_includes) +* [`excludes`](#excludes) +* [`includes`](#includes) +* [`template`](#template) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` + +Data type: `Enum['absent', 'present']` + +Set to present enables the object, absent disables it. + +Default value: `present` + +##### `timeperiod_name` + +Data type: `String` + +Set the Icinga 2 name of the timeperiod object. + +Default value: `$title` + +##### `display_name` + +Data type: `Optional[String]` + +A short description of the time period. + +Default value: ``undef`` + +##### `import` + +Data type: `Array` + +Sorted List of templates to include. + +Default value: `['legacy-timeperiod']` + +##### `ranges` Data type: `Optional[Hash]` @@ -3540,7 +4881,7 @@ timeperiod. Default value: ``undef`` -##### `prefer_includes` +##### `prefer_includes` Data type: `Optional[Boolean]` @@ -3548,7 +4889,7 @@ Boolean whether to prefer timeperiods includes or excludes. Default value: ``undef`` -##### `excludes` +##### `excludes` Data type: `Optional[Array]` @@ -3556,7 +4897,7 @@ An array of timeperiods, which should exclude from your timerange. Default value: ``undef`` -##### `includes` +##### `includes` Data type: `Optional[Array]` @@ -3564,7 +4905,7 @@ An array of timeperiods, which should include into your timerange Default value: ``undef`` -##### `template` +##### `template` Data type: `Boolean` @@ -3572,13 +4913,13 @@ Set to true creates a template instead of an object. Default value: ``false`` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store this object in. File will be declared on the first run. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3586,15 +4927,31 @@ String or integer to control the position in the target file, sorted alpha numer Default value: `35` -### `icinga2::object::user` +### `icinga2::object::user` Manage Icinga 2 user objects. #### Parameters -The following parameters are available in the `icinga2::object::user` defined type. - -##### `ensure` +The following parameters are available in the `icinga2::object::user` defined type: + +* [`ensure`](#ensure) +* [`user_name`](#user_name) +* [`display_name`](#display_name) +* [`email`](#email) +* [`pager`](#pager) +* [`vars`](#vars) +* [`groups`](#groups) +* [`enable_notifications`](#enable_notifications) +* [`period`](#period) +* [`types`](#types) +* [`states`](#states) +* [`template`](#template) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3602,7 +4959,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `user_name` +##### `user_name` Data type: `String` @@ -3610,7 +4967,7 @@ Set the Icinga 2 name of the user object. Default value: `$title` -##### `display_name` +##### `display_name` Data type: `Optional[String]` @@ -3618,7 +4975,7 @@ A short description of the user. Default value: ``undef`` -##### `email` +##### `email` Data type: `Optional[String]` @@ -3626,7 +4983,7 @@ An email string for this user. Useful for notification commands. Default value: ``undef`` -##### `pager` +##### `pager` Data type: `Optional[String]` @@ -3634,7 +4991,7 @@ A pager string for this user. Useful for notification commands. Default value: ``undef`` -##### `vars` +##### `vars` Data type: `Optional[Icinga2::CustomAttributes]` @@ -3644,7 +5001,7 @@ of custom attributes. Default value: ``undef`` -##### `groups` +##### `groups` Data type: `Optional[Array]` @@ -3652,7 +5009,7 @@ An array of group names. Default value: ``undef`` -##### `enable_notifications` +##### `enable_notifications` Data type: `Optional[Boolean]` @@ -3660,7 +5017,7 @@ Whether notifications are enabled for this user. Default value: ``undef`` -##### `period` +##### `period` Data type: `Optional[String]` @@ -3669,7 +5026,7 @@ should be triggered. Default value: ``undef`` -##### `types` +##### `types` Data type: `Optional[Array]` @@ -3678,7 +5035,7 @@ everything is matched. Default value: ``undef`` -##### `states` +##### `states` Data type: `Optional[Array]` @@ -3686,7 +5043,7 @@ A set of state filters when this notification should be triggered. Default value: ``undef`` -##### `template` +##### `template` Data type: `Boolean` @@ -3694,7 +5051,7 @@ Set to true creates a template instead of an object. Default value: ``false`` -##### `import` +##### `import` Data type: `Array` @@ -3702,14 +5059,14 @@ Sorted List of templates to include. Default value: `[]` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3717,15 +5074,26 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `75` -### `icinga2::object::usergroup` +### `icinga2::object::usergroup` Manage Icinga 2 usergroup objects. #### Parameters -The following parameters are available in the `icinga2::object::usergroup` defined type. +The following parameters are available in the `icinga2::object::usergroup` defined type: -##### `ensure` +* [`ensure`](#ensure) +* [`usergroup_name`](#usergroup_name) +* [`display_name`](#display_name) +* [`groups`](#groups) +* [`assign`](#assign) +* [`ignore`](#ignore) +* [`template`](#template) +* [`import`](#import) +* [`target`](#target) +* [`order`](#order) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3733,7 +5101,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `usergroup_name` +##### `usergroup_name` Data type: `String` @@ -3741,7 +5109,7 @@ Set the Icinga 2 name of the usergroup object. Default value: `$title` -##### `display_name` +##### `display_name` Data type: `Optional[String]` @@ -3749,7 +5117,7 @@ A short description of the service group. Default value: ``undef`` -##### `groups` +##### `groups` Data type: `Array` @@ -3757,7 +5125,7 @@ An array of nested group names. Default value: `[]` -##### `assign` +##### `assign` Data type: `Array` @@ -3765,7 +5133,7 @@ Assign user group members using the group assign rules. Default value: `[]` -##### `ignore` +##### `ignore` Data type: `Array` @@ -3773,7 +5141,7 @@ Exclude users using the group ignore rules. Default value: `[]` -##### `template` +##### `template` Data type: `Boolean` @@ -3781,7 +5149,7 @@ Set to true creates a template instead of an object. Default value: ``false`` -##### `import` +##### `import` Data type: `Array` @@ -3789,14 +5157,14 @@ Sorted List of templates to include. Default value: `[]` -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Destination config file to store in this object. File will be declared the first time. -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3804,15 +5172,23 @@ String or integer to set the position in the target file, sorted alpha numeric. Default value: `80` -### `icinga2::object::zone` +### `icinga2::object::zone` Manage Icinga 2 zone objects. #### Parameters -The following parameters are available in the `icinga2::object::zone` defined type. +The following parameters are available in the `icinga2::object::zone` defined type: + +* [`ensure`](#ensure) +* [`zone_name`](#zone_name) +* [`endpoints`](#endpoints) +* [`parent`](#parent) +* [`global`](#global) +* [`target`](#target) +* [`order`](#order) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3820,7 +5196,7 @@ Set to present enables the object, absent disables it. Default value: `present` -##### `zone_name` +##### `zone_name` Data type: `String` @@ -3828,7 +5204,7 @@ Set the Icinga 2 name of the zone object. Default value: `$title` -##### `endpoints` +##### `endpoints` Data type: `Optional[Array]` @@ -3836,7 +5212,7 @@ List of endpoints belong to this zone. Default value: `[]` -##### `parent` +##### `parent` Data type: `Optional[String]` @@ -3844,7 +5220,7 @@ Parent zone to this zone. Default value: ``undef`` -##### `global` +##### `global` Data type: `Optional[Boolean]` @@ -3853,7 +5229,7 @@ and parent are ignored. Default value: ``false`` -##### `target` +##### `target` Data type: `Optional[Stdlib::Absolutepath]` @@ -3862,7 +5238,7 @@ first time. Default value: ``undef`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3872,7 +5248,7 @@ Default value: `45` ## Functions -### `icinga2::icinga2_attributes` +### `icinga2::icinga2_attributes` Type: Ruby 4.x API @@ -3891,7 +5267,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 @@ -3899,7 +5275,7 @@ Summarise what the function does here #### `icinga2::icinga2_ticket_id(String $cn, Variant[String, Sensitive[String]] $salt)` -The icinga2::icinga2_ticket_id function. +Summarise what the function does here Returns: `String` Calculated ticket to receive a certificate. @@ -3915,7 +5291,7 @@ Data type: `Variant[String, Sensitive[String]]` The ticket salt of the Icinga CA. -### `icinga2_attributes` +### `icinga2_attributes` Type: Ruby 3.x API @@ -3927,7 +5303,7 @@ The icinga2_attributes function. Returns: `Any` Parsed config as string -### `icinga2_ticket_id` +### `icinga2_ticket_id` Type: Ruby 3.x API @@ -3941,34 +5317,49 @@ Returns: `Any` The ticket to get a certificate ## Data types -### `Icinga2::BasicAuth` +### `Icinga2::BasicAuth` A strict type for basic authentication -Alias of `Struct[{ +Alias of + +```puppet +Struct[{ 'username' => String, 'password' => Variant[String, Sensitive[String]], -}]` +}] +``` -### `Icinga2::CustomAttributes` +### `Icinga2::CustomAttributes` A type for the structure of custom attributes -Alias of `Optional[Variant[String, Array[Variant[String, Hash]], Hash]]` +Alias of + +```puppet +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-9a-fA-F]{2}$/]` +Alias of + +```puppet +Pattern[/^([0-9a-fA-F]{2}\:){19}(([0-9a-fA-F]{2}\:){12})?[0-9a-fA-F]{2}$/] +``` -### `Icinga2::IdoCleanup` +### `Icinga2::IdoCleanup` A type for the structure of settings to cleanup IDO databases -Alias of `Hash[Enum[ +Alias of + +```puppet +Hash[Enum[ 'acknowledgements_age', 'commenthistory_age', 'contactnotifications_age', @@ -3984,19 +5375,27 @@ Alias of `Hash[Enum[ 'statehistory_age', 'servicechecks_age', 'systemcommands_age', - ], String]` + ], String] +``` -### `Icinga2::Interval` +### `Icinga2::Interval` A strict type for intervals -Alias of `Variant[Integer, Pattern[/^\d+\.?\d*[d|h|m|s]?$/]]` +Alias of + +```puppet +Variant[Integer, Pattern[/^\d+\.?\d*[d|h|m|s]?$/]] +``` -### `Icinga2::LogFacility` +### `Icinga2::LogFacility` A strict type of syslog facilities -Alias of `Variant[Enum[ +Alias of + +```puppet +Variant[Enum[ 'LOG_AUTH', 'LOG_AUTHPRIV', 'LOG_CRON', @@ -4009,11 +5408,16 @@ Alias of `Variant[Enum[ 'LOG_SYSLOG', 'LOG_USER', 'LOG_UUCP' - ], Pattern[/^LOG_LOCAL[0-7]$/]]` + ], Pattern[/^LOG_LOCAL[0-7]$/]] +``` -### `Icinga2::LogSeverity` +### `Icinga2::LogSeverity` A strict type for log levels -Alias of `Enum['debug', 'information', 'notice', 'warning', 'critical']` +Alias of + +```puppet +Enum['debug', 'information', 'notice', 'warning', 'critical'] +```