diff --git a/CHANGELOG.md b/CHANGELOG.md index 09abebe0..803ed741 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,28 @@ # Change Log +## [v3.9.0](https://github.com/icinga/puppet-icingaweb2/tree/v3.9.0) (2023-07-21) +[Full Changelog](https://github.com/icinga/puppet-icingaweb2/compare/v3.8.0...v3.9.0) + +**Implemented enhancements:** + +- Add module x509 support [\#357](https://github.com/Icinga/puppet-icingaweb2/issues/357) +- Allow vcsrepo \< 7.0.0 [\#361](https://github.com/Icinga/puppet-icingaweb2/pull/361) ([saz](https://github.com/saz)) +- Module/x509 [\#360](https://github.com/Icinga/puppet-icingaweb2/pull/360) ([lbetz](https://github.com/lbetz)) + +**Fixed bugs:** + +- Markdown permission table for icingaweb2::config::role is broken [\#356](https://github.com/Icinga/puppet-icingaweb2/issues/356) +- Fix role documentation typo and table [\#358](https://github.com/Icinga/puppet-icingaweb2/pull/358) ([zilchms](https://github.com/zilchms)) + +**Closed issues:** + +- Rename default branch to main [\#367](https://github.com/Icinga/puppet-icingaweb2/issues/367) + +**Merged pull requests:** + +- Feature dependency version [\#362](https://github.com/Icinga/puppet-icingaweb2/pull/362) ([carraroj](https://github.com/carraroj)) +- Pin concurrent-ruby temporary to less than 1.2.0 [\#359](https://github.com/Icinga/puppet-icingaweb2/pull/359) ([lbetz](https://github.com/lbetz)) + ## [v3.8.0](https://github.com/icinga/puppet-icingaweb2/tree/v3.8.0) (2023-03-10) [Full Changelog](https://github.com/icinga/puppet-icingaweb2/compare/v3.7.3...v3.8.0) diff --git a/REFERENCE.md b/REFERENCE.md index 3a82028b..facb8b22 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -9,31 +9,33 @@ #### Public Classes * [`icingaweb2`](#icingaweb2): Installs and configures Icinga Web 2. -* [`icingaweb2::globals`](#icingaweb2globals): This class loads the default parameters by doing a hiera lookup. -* [`icingaweb2::module::audit`](#icingaweb2moduleaudit): Installs and enables the audit module. -* [`icingaweb2::module::businessprocess`](#icingaweb2modulebusinessprocess): Installs and enables the businessprocess module. -* [`icingaweb2::module::cube`](#icingaweb2modulecube): Installs and enables the cube module. -* [`icingaweb2::module::director`](#icingaweb2moduledirector): Installs and configures the director module. -* [`icingaweb2::module::director::service`](#icingaweb2moduledirectorservice): Installs and configures the director service. -* [`icingaweb2::module::doc`](#icingaweb2moduledoc): The doc module provides an interface to the Icinga 2 and Icinga Web 2 documentation. -* [`icingaweb2::module::elasticsearch`](#icingaweb2moduleelasticsearch): The Elasticsearch module displays events from data stored in Elasticsearch. -* [`icingaweb2::module::fileshipper`](#icingaweb2modulefileshipper): The fileshipper module extends the Director. It offers import sources to deal with CSV, JSON, YAML and XML files. -* [`icingaweb2::module::generictts`](#icingaweb2modulegenerictts): Installs and enables the generictts module. -* [`icingaweb2::module::graphite`](#icingaweb2modulegraphite): The Graphite module draws graphs out of time series data stored in Graphite. -* [`icingaweb2::module::icingadb`](#icingaweb2moduleicingadb): Manages the icingadb module. This module is still optional at the moment. -* [`icingaweb2::module::idoreports`](#icingaweb2moduleidoreports): Installs, configures and enables the idoreports module. -* [`icingaweb2::module::incubator`](#icingaweb2moduleincubator): Installs and enables the incubator module. -* [`icingaweb2::module::ipl`](#icingaweb2moduleipl): Installs and enables the ipl module. -* [`icingaweb2::module::monitoring`](#icingaweb2modulemonitoring): Manages the monitoring module. This module is mandatory for probably every setup. -* [`icingaweb2::module::pdfexport`](#icingaweb2modulepdfexport): Installs, configures and enables the pdfexport module. -* [`icingaweb2::module::puppetdb`](#icingaweb2modulepuppetdb): Installs and configures the puppetdb module. -* [`icingaweb2::module::reactbundle`](#icingaweb2modulereactbundle): Installs and enables the reactbundle module. -* [`icingaweb2::module::reporting`](#icingaweb2modulereporting): Installs the reporting plugin -* [`icingaweb2::module::reporting::service`](#icingaweb2modulereportingservice): Installs and configures the reporting scheduler. -* [`icingaweb2::module::translation`](#icingaweb2moduletranslation): Installs and configures the translation module. -* [`icingaweb2::module::vsphere`](#icingaweb2modulevsphere): The vSphere module extends the Director. It provides import sources for virtual machines and physical hosts from vSphere. -* [`icingaweb2::module::vspheredb`](#icingaweb2modulevspheredb): Installs the vsphereDB plugin -* [`icingaweb2::module::vspheredb::service`](#icingaweb2modulevspheredbservice): Installs and configures the vspheredb service. +* [`icingaweb2::globals`](#icingaweb2--globals): This class loads the default parameters by doing a hiera lookup. +* [`icingaweb2::module::audit`](#icingaweb2--module--audit): Installs and enables the audit module. +* [`icingaweb2::module::businessprocess`](#icingaweb2--module--businessprocess): Installs and enables the businessprocess module. +* [`icingaweb2::module::cube`](#icingaweb2--module--cube): Installs and enables the cube module. +* [`icingaweb2::module::director`](#icingaweb2--module--director): Installs and configures the director module. +* [`icingaweb2::module::director::service`](#icingaweb2--module--director--service): Installs and configures the director service. +* [`icingaweb2::module::doc`](#icingaweb2--module--doc): The doc module provides an interface to the Icinga 2 and Icinga Web 2 documentation. +* [`icingaweb2::module::elasticsearch`](#icingaweb2--module--elasticsearch): The Elasticsearch module displays events from data stored in Elasticsearch. +* [`icingaweb2::module::fileshipper`](#icingaweb2--module--fileshipper): The fileshipper module extends the Director. It offers import sources to deal with CSV, JSON, YAML and XML files. +* [`icingaweb2::module::generictts`](#icingaweb2--module--generictts): Installs and enables the generictts module. +* [`icingaweb2::module::graphite`](#icingaweb2--module--graphite): The Graphite module draws graphs out of time series data stored in Graphite. +* [`icingaweb2::module::icingadb`](#icingaweb2--module--icingadb): Manages the icingadb module. This module is still optional at the moment. +* [`icingaweb2::module::idoreports`](#icingaweb2--module--idoreports): Installs, configures and enables the idoreports module. +* [`icingaweb2::module::incubator`](#icingaweb2--module--incubator): Installs and enables the incubator module. +* [`icingaweb2::module::ipl`](#icingaweb2--module--ipl): Installs and enables the ipl module. +* [`icingaweb2::module::monitoring`](#icingaweb2--module--monitoring): Manages the monitoring module. This module is mandatory for probably every setup. +* [`icingaweb2::module::pdfexport`](#icingaweb2--module--pdfexport): Installs, configures and enables the pdfexport module. +* [`icingaweb2::module::puppetdb`](#icingaweb2--module--puppetdb): Installs and configures the puppetdb module. +* [`icingaweb2::module::reactbundle`](#icingaweb2--module--reactbundle): Installs and enables the reactbundle module. +* [`icingaweb2::module::reporting`](#icingaweb2--module--reporting): Installs the reporting module +* [`icingaweb2::module::reporting::service`](#icingaweb2--module--reporting--service): Installs and configures the reporting scheduler. +* [`icingaweb2::module::translation`](#icingaweb2--module--translation): Installs and configures the translation module. +* [`icingaweb2::module::vsphere`](#icingaweb2--module--vsphere): The vSphere module extends the Director. It provides import sources for virtual machines and physical hosts from vSphere. +* [`icingaweb2::module::vspheredb`](#icingaweb2--module--vspheredb): Installs the vsphereDB plugin +* [`icingaweb2::module::vspheredb::service`](#icingaweb2--module--vspheredb--service): Installs and configures the vspheredb service. +* [`icingaweb2::module::x509`](#icingaweb2--module--x509): Installs the x509 module +* [`icingaweb2::module::x509::service`](#icingaweb2--module--x509--service): Installs and configures the x509 job scheduler. #### Private Classes @@ -44,18 +46,18 @@ #### Public Defined types -* [`icingaweb2::config::authmethod`](#icingaweb2configauthmethod): Manage Icinga Web 2 authentication methods. Auth methods may be chained by setting proper ordering. -* [`icingaweb2::config::dashboard`](#icingaweb2configdashboard): Manage a dashboard. -* [`icingaweb2::config::dashlet`](#icingaweb2configdashlet): Manage a dashlet. -* [`icingaweb2::config::groupbackend`](#icingaweb2configgroupbackend): Groups of users can be stored either in a database, LDAP or ActiveDirectory. This defined type configures backends +* [`icingaweb2::config::authmethod`](#icingaweb2--config--authmethod): Manage Icinga Web 2 authentication methods. Auth methods may be chained by setting proper ordering. +* [`icingaweb2::config::dashboard`](#icingaweb2--config--dashboard): Manage a dashboard. +* [`icingaweb2::config::dashlet`](#icingaweb2--config--dashlet): Manage a dashlet. +* [`icingaweb2::config::groupbackend`](#icingaweb2--config--groupbackend): Groups of users can be stored either in a database, LDAP or ActiveDirectory. This defined type configures backends that store groups. -* [`icingaweb2::config::navigation`](#icingaweb2confignavigation): Navigate defines a menu entry, host- or service action. -* [`icingaweb2::config::resource`](#icingaweb2configresource): Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. -* [`icingaweb2::config::role`](#icingaweb2configrole): Roles define a set of permissions that may be applied to users or groups. -* [`icingaweb2::inisection`](#icingaweb2inisection): Manage settings in INI configuration files. -* [`icingaweb2::module`](#icingaweb2module): Download, enable and configure Icinga Web 2 modules. -* [`icingaweb2::resource::database`](#icingaweb2resourcedatabase): Create and remove Icinga Web 2 database resources. -* [`icingaweb2::resource::ldap`](#icingaweb2resourceldap): Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. +* [`icingaweb2::config::navigation`](#icingaweb2--config--navigation): Navigate defines a menu entry, host- or service action. +* [`icingaweb2::config::resource`](#icingaweb2--config--resource): Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. +* [`icingaweb2::config::role`](#icingaweb2--config--role): Roles define a set of permissions that may be applied to users or groups. +* [`icingaweb2::inisection`](#icingaweb2--inisection): Manage settings in INI configuration files. +* [`icingaweb2::module`](#icingaweb2--module): Download, enable and configure Icinga Web 2 modules. +* [`icingaweb2::resource::database`](#icingaweb2--resource--database): Create and remove Icinga Web 2 database resources. +* [`icingaweb2::resource::ldap`](#icingaweb2--resource--ldap): Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. #### Private Defined types @@ -71,16 +73,16 @@ that store groups. ### Functions -* [`icingaweb2::assert_module`](#icingaweb2assert_module): This function returns a fail if the icingaweb2 class isn't declared. -* [`icingaweb2::cert::files`](#icingaweb2certfiles): Choose the path of tls key, cert and ca file. -* [`icingaweb2::db::connect`](#icingaweb2dbconnect): This function returns a string to connect databases +* [`icingaweb2::assert_module`](#icingaweb2--assert_module): This function returns a fail if the icingaweb2 class isn't declared. +* [`icingaweb2::cert::files`](#icingaweb2--cert--files): Choose the path of tls key, cert and ca file. +* [`icingaweb2::db::connect`](#icingaweb2--db--connect): This function returns a string to connect databases with or without TLS information. -* [`icingaweb2::unwrap`](#icingaweb2unwrap): This function returns an unwrap string if necessary. +* [`icingaweb2::unwrap`](#icingaweb2--unwrap): This function returns an unwrap string if necessary. ### Data types -* [`Icingaweb2::AdminRole`](#icingaweb2adminrole): A strict type for the default admin role -* [`Icingaweb2::Secret`](#icingaweb2secret): A strict type for the secrets like passwords or keys +* [`Icingaweb2::AdminRole`](#Icingaweb2--AdminRole): A strict type for the default admin role +* [`Icingaweb2::Secret`](#Icingaweb2--Secret): A strict type for the secrets like passwords or keys ## Classes @@ -179,49 +181,49 @@ class { 'icingaweb2': The following parameters are available in the `icingaweb2` class: -* [`logging`](#logging) -* [`logging_file`](#logging_file) -* [`logging_level`](#logging_level) -* [`logging_facility`](#logging_facility) -* [`logging_application`](#logging_application) -* [`show_stacktraces`](#show_stacktraces) -* [`module_path`](#module_path) -* [`theme`](#theme) -* [`theme_disabled`](#theme_disabled) -* [`manage_repo`](#manage_repo) -* [`manage_repos`](#manage_repos) -* [`manage_package`](#manage_package) -* [`extra_packages`](#extra_packages) -* [`import_schema`](#import_schema) -* [`db_type`](#db_type) -* [`db_host`](#db_host) -* [`db_port`](#db_port) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) -* [`config_backend`](#config_backend) -* [`conf_user`](#conf_user) -* [`conf_group`](#conf_group) -* [`default_domain`](#default_domain) -* [`cookie_path`](#cookie_path) -* [`admin_role`](#admin_role) -* [`default_admin_username`](#default_admin_username) -* [`default_admin_password`](#default_admin_password) -* [`resources`](#resources) -* [`user_backends`](#user_backends) -* [`group_backends`](#group_backends) - -##### `logging` +* [`logging`](#-icingaweb2--logging) +* [`logging_file`](#-icingaweb2--logging_file) +* [`logging_level`](#-icingaweb2--logging_level) +* [`logging_facility`](#-icingaweb2--logging_facility) +* [`logging_application`](#-icingaweb2--logging_application) +* [`show_stacktraces`](#-icingaweb2--show_stacktraces) +* [`module_path`](#-icingaweb2--module_path) +* [`theme`](#-icingaweb2--theme) +* [`theme_disabled`](#-icingaweb2--theme_disabled) +* [`manage_repo`](#-icingaweb2--manage_repo) +* [`manage_repos`](#-icingaweb2--manage_repos) +* [`manage_package`](#-icingaweb2--manage_package) +* [`extra_packages`](#-icingaweb2--extra_packages) +* [`import_schema`](#-icingaweb2--import_schema) +* [`db_type`](#-icingaweb2--db_type) +* [`db_host`](#-icingaweb2--db_host) +* [`db_port`](#-icingaweb2--db_port) +* [`db_name`](#-icingaweb2--db_name) +* [`db_username`](#-icingaweb2--db_username) +* [`db_password`](#-icingaweb2--db_password) +* [`use_tls`](#-icingaweb2--use_tls) +* [`tls_key_file`](#-icingaweb2--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--tls_cacert_file) +* [`tls_key`](#-icingaweb2--tls_key) +* [`tls_cert`](#-icingaweb2--tls_cert) +* [`tls_cacert`](#-icingaweb2--tls_cacert) +* [`tls_capath`](#-icingaweb2--tls_capath) +* [`tls_noverify`](#-icingaweb2--tls_noverify) +* [`tls_cipher`](#-icingaweb2--tls_cipher) +* [`config_backend`](#-icingaweb2--config_backend) +* [`conf_user`](#-icingaweb2--conf_user) +* [`conf_group`](#-icingaweb2--conf_group) +* [`default_domain`](#-icingaweb2--default_domain) +* [`cookie_path`](#-icingaweb2--cookie_path) +* [`admin_role`](#-icingaweb2--admin_role) +* [`default_admin_username`](#-icingaweb2--default_admin_username) +* [`default_admin_password`](#-icingaweb2--default_admin_password) +* [`resources`](#-icingaweb2--resources) +* [`user_backends`](#-icingaweb2--user_backends) +* [`group_backends`](#-icingaweb2--group_backends) + +##### `logging` Data type: `Enum['file', 'syslog', 'php', 'none']` @@ -229,13 +231,13 @@ Whether Icinga Web 2 should log to 'file', 'syslog' or 'php' (web server's error Default value: `'file'` -##### `logging_file` +##### `logging_file` Data type: `Stdlib::Absolutepath` If 'logging' is set to 'file', this is the target log file. -##### `logging_level` +##### `logging_level` Data type: `Enum['ERROR', 'WARNING', 'INFO', 'DEBUG']` @@ -243,7 +245,7 @@ Logging verbosity. Possible values are 'ERROR', 'WARNING', 'INFO' and 'DEBUG'. Default value: `'INFO'` -##### `logging_facility` +##### `logging_facility` Data type: `Pattern[/user|local[0-7]/]` @@ -251,7 +253,7 @@ Logging facility when using syslog. Possible values are 'user' or 'local0' up to Default value: `'user'` -##### `logging_application` +##### `logging_application` Data type: `String` @@ -259,24 +261,28 @@ Logging application name when using syslog. Default value: `'icingaweb2'` -##### `show_stacktraces` +##### `show_stacktraces` Data type: `Boolean` Whether to display stacktraces in the web interface or not. -Default value: ``false`` +Default value: `false` -##### `module_path` +##### `module_path` -Data type: `Optional[Variant[Stdlib::Absolutepath, - Array[Stdlib::Absolutepath]]]` +Data type: + +```puppet +Optional[Variant[Stdlib::Absolutepath, + Array[Stdlib::Absolutepath]]] +``` Additional path to module sources. Multiple paths must be separated by colon. -Default value: ``undef`` +Default value: `undef` -##### `theme` +##### `theme` Data type: `String` @@ -284,23 +290,23 @@ The default theme setting. Users may override this settings. Default value: `'Icinga'` -##### `theme_disabled` +##### `theme_disabled` Data type: `Boolean` Whether users can change themes or not. -Default value: ``false`` +Default value: `false` -##### `manage_repo` +##### `manage_repo` Data type: `Boolean` Deprecated, use manage_repos. -Default value: ``false`` +Default value: `false` -##### `manage_repos` +##### `manage_repos` Data type: `Boolean` @@ -308,25 +314,25 @@ When set to true this module will use the module icinga/puppet-icinga to manage e.g. the release repo on packages.icinga.com repository by default, the EPEL repository or Backports. For more information, see http://github.com/icinga/puppet-icinga. -Default value: ``false`` +Default value: `false` -##### `manage_package` +##### `manage_package` Data type: `Boolean` If set to `false` packages aren't managed. -Default value: ``true`` +Default value: `true` -##### `extra_packages` +##### `extra_packages` Data type: `Optional[Array[String]]` An array of packages to install additionally. -Default value: ``undef`` +Default value: `undef` -##### `import_schema` +##### `import_schema` Data type: `Variant[Boolean, Enum['mariadb', 'mysql']]` @@ -334,9 +340,9 @@ Whether to import the MySQL schema or not. New options `mariadb` and `mysql`, both means true. With mariadb its cli options are used for the import, whereas with mysql its different options. -Default value: ``false`` +Default value: `false` -##### `db_type` +##### `db_type` Data type: `Enum['mysql', 'pgsql']` @@ -344,7 +350,7 @@ Database type, can be either `mysql` or `pgsql`. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -352,15 +358,15 @@ Database hostname. Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` Port to connect on the database host. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `String` @@ -368,7 +374,7 @@ Database name. Default value: `'icingaweb2'` -##### `db_username` +##### `db_username` Data type: `String` @@ -376,97 +382,97 @@ Username for database access. Default value: `'icingaweb2'` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` Password for database access. -Default value: ``undef`` +Default value: `undef` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `config_backend` +##### `config_backend` Data type: `Enum['ini', 'db']` @@ -475,56 +481,56 @@ be set to `db` or `ini`. Default value: `'ini'` -##### `conf_user` +##### `conf_user` Data type: `String` By default this module expects Apache2 on the server. You can change the owner of the config files with this parameter. -##### `conf_group` +##### `conf_group` Data type: `String` Group membership of config files. -##### `default_domain` +##### `default_domain` Data type: `Optional[String]` When using domain-aware authentication, you can set a default domain here. -Default value: ``undef`` +Default value: `undef` -##### `cookie_path` +##### `cookie_path` Data type: `Optional[Stdlib::Absolutepath]` Path to where cookies are stored. -Default value: ``undef`` +Default value: `undef` -##### `admin_role` +##### `admin_role` Data type: `Variant[Icingaweb2::AdminRole, Boolean[false]]` Manage a role for admin access. -##### `default_admin_username` +##### `default_admin_username` Data type: `String` Default username for initial admin access. This parameter is only used if `import_schema` is set to `true` and only during the import itself. -##### `default_admin_password` +##### `default_admin_password` Data type: `Icingaweb2::Secret` Default password for initial admin access. This parameter is only used if `import_schema` is set to `true` and only during the import itself. -##### `resources` +##### `resources` Data type: `Hash[String, Hash[String, Any]]` @@ -533,7 +539,7 @@ declares a define resource of `icingaweb2::resource::ldap`, a type of `mysql`, ` Default value: `{}` -##### `user_backends` +##### `user_backends` Data type: `Hash[String, Hash[String, Any]]` @@ -541,7 +547,7 @@ Additional user backends for access control. See `icingaweb2::config::authmethod Default value: `{}` -##### `group_backends` +##### `group_backends` Data type: `Hash[String, Hash[String, Any]]` @@ -549,7 +555,7 @@ Additional group backends for access control. See `icingaweb2::config::groupback Default value: `{}` -### `icingaweb2::globals` +### `icingaweb2::globals` This class loads the default parameters by doing a hiera lookup. @@ -559,134 +565,148 @@ This class loads the default parameters by doing a hiera lookup. The following parameters are available in the `icingaweb2::globals` class: -* [`package_name`](#package_name) -* [`conf_dir`](#conf_dir) -* [`data_dir`](#data_dir) -* [`role_replace`](#role_replace) -* [`comp_db_schema_dir`](#comp_db_schema_dir) -* [`default_module_path`](#default_module_path) -* [`mysql_db_schema`](#mysql_db_schema) -* [`pgsql_db_schema`](#pgsql_db_schema) -* [`mysql_vspheredb_schema`](#mysql_vspheredb_schema) -* [`pgsql_vspheredb_schema`](#pgsql_vspheredb_schema) -* [`mysql_reporting_schema`](#mysql_reporting_schema) -* [`pgsql_reporting_schema`](#pgsql_reporting_schema) -* [`mysql_idoreports_slaperiods`](#mysql_idoreports_slaperiods) -* [`mysql_idoreports_sla_percent`](#mysql_idoreports_sla_percent) -* [`pgsql_idoreports_slaperiods`](#pgsql_idoreports_slaperiods) -* [`pgsql_idoreports_sla_percent`](#pgsql_idoreports_sla_percent) -* [`gettext_package_name`](#gettext_package_name) -* [`icingacli_bin`](#icingacli_bin) - -##### `package_name` +* [`package_name`](#-icingaweb2--globals--package_name) +* [`conf_dir`](#-icingaweb2--globals--conf_dir) +* [`data_dir`](#-icingaweb2--globals--data_dir) +* [`role_replace`](#-icingaweb2--globals--role_replace) +* [`comp_db_schema_dir`](#-icingaweb2--globals--comp_db_schema_dir) +* [`default_module_path`](#-icingaweb2--globals--default_module_path) +* [`mysql_db_schema`](#-icingaweb2--globals--mysql_db_schema) +* [`pgsql_db_schema`](#-icingaweb2--globals--pgsql_db_schema) +* [`mysql_vspheredb_schema`](#-icingaweb2--globals--mysql_vspheredb_schema) +* [`pgsql_vspheredb_schema`](#-icingaweb2--globals--pgsql_vspheredb_schema) +* [`mysql_reporting_schema`](#-icingaweb2--globals--mysql_reporting_schema) +* [`pgsql_reporting_schema`](#-icingaweb2--globals--pgsql_reporting_schema) +* [`mysql_idoreports_slaperiods`](#-icingaweb2--globals--mysql_idoreports_slaperiods) +* [`mysql_idoreports_sla_percent`](#-icingaweb2--globals--mysql_idoreports_sla_percent) +* [`pgsql_idoreports_slaperiods`](#-icingaweb2--globals--pgsql_idoreports_slaperiods) +* [`pgsql_idoreports_sla_percent`](#-icingaweb2--globals--pgsql_idoreports_sla_percent) +* [`gettext_package_name`](#-icingaweb2--globals--gettext_package_name) +* [`icingacli_bin`](#-icingaweb2--globals--icingacli_bin) +* [`mysql_x509_schema`](#-icingaweb2--globals--mysql_x509_schema) +* [`pgsql_x509_schema`](#-icingaweb2--globals--pgsql_x509_schema) + +##### `package_name` Data type: `String` Package to install. -##### `conf_dir` +##### `conf_dir` Data type: `Stdlib::Absolutepath` Path to the config files. -##### `data_dir` +##### `data_dir` Data type: `Stdlib::Absolutepath` Location of PHP data files. -##### `role_replace` +##### `role_replace` Data type: `Boolean` Specifies whether to overwrite the roles.ini file if it already exists. -##### `comp_db_schema_dir` +##### `comp_db_schema_dir` Data type: `Stdlib::Absolutepath` For compatibility, since in Icinga Web 2 2.11.4 the schema files have been moved. -##### `default_module_path` +##### `default_module_path` Data type: `Stdlib::Absolutepath` Location of the modules. -##### `mysql_db_schema` +##### `mysql_db_schema` Data type: `Stdlib::Absolutepath` Location of the database schema for MySQL/MariaDB. -##### `pgsql_db_schema` +##### `pgsql_db_schema` Data type: `Stdlib::Absolutepath` Location of the database schema for PostgreSQL. -##### `mysql_vspheredb_schema` +##### `mysql_vspheredb_schema` Data type: `Stdlib::Absolutepath` Location of the vspheredb database schema for MySQL/MariaDB. -##### `pgsql_vspheredb_schema` +##### `pgsql_vspheredb_schema` Data type: `Stdlib::Absolutepath` Location of the vspheredb database schema for PostgreSQL. -##### `mysql_reporting_schema` +##### `mysql_reporting_schema` Data type: `Stdlib::Absolutepath` Location of the reporting database schema for MySQL/MariaDB. -##### `pgsql_reporting_schema` +##### `pgsql_reporting_schema` Data type: `Stdlib::Absolutepath` Location of the reporting database schema for PostgreSQL. -##### `mysql_idoreports_slaperiods` +##### `mysql_idoreports_slaperiods` Data type: `Stdlib::Absolutepath` Location of the slaperiods database extension for MySQL. -##### `mysql_idoreports_sla_percent` +##### `mysql_idoreports_sla_percent` Data type: `Stdlib::Absolutepath` Location of the get_sla_ok_percent database extension for MySQL. -##### `pgsql_idoreports_slaperiods` +##### `pgsql_idoreports_slaperiods` Data type: `Stdlib::Absolutepath` Location of the slaperiods database extension for PostgreSQL. -##### `pgsql_idoreports_sla_percent` +##### `pgsql_idoreports_sla_percent` Data type: `Stdlib::Absolutepath` Location of the get_sla_ok_percent database extension for PostgreSQL. -##### `gettext_package_name` +##### `gettext_package_name` Data type: `String` Package name `gettext` tool belongs to. -##### `icingacli_bin` +##### `icingacli_bin` Data type: `Stdlib::Absolutepath` Path to `icingacli' comand line tool. -### `icingaweb2::module::audit` +##### `mysql_x509_schema` + +Data type: `Stdlib::Absolutepath` + + + +##### `pgsql_x509_schema` + +Data type: `Stdlib::Absolutepath` + + + +### `icingaweb2::module::audit` Installs and enables the audit module. @@ -708,20 +728,20 @@ class { 'icingaweb2::module::audit': The following parameters are available in the `icingaweb2::module::audit` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`log_type`](#log_type) -* [`log_file`](#log_file) -* [`log_ident`](#log_ident) -* [`log_facility`](#log_facility) -* [`stream_format`](#stream_format) -* [`stream_file`](#stream_file) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--audit--ensure) +* [`module_dir`](#-icingaweb2--module--audit--module_dir) +* [`git_repository`](#-icingaweb2--module--audit--git_repository) +* [`git_revision`](#-icingaweb2--module--audit--git_revision) +* [`install_method`](#-icingaweb2--module--audit--install_method) +* [`package_name`](#-icingaweb2--module--audit--package_name) +* [`log_type`](#-icingaweb2--module--audit--log_type) +* [`log_file`](#-icingaweb2--module--audit--log_file) +* [`log_ident`](#-icingaweb2--module--audit--log_ident) +* [`log_facility`](#-icingaweb2--module--audit--log_facility) +* [`stream_format`](#-icingaweb2--module--audit--stream_format) +* [`stream_file`](#-icingaweb2--module--audit--stream_file) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -729,15 +749,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -745,15 +765,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-audit.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.0.2`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -761,7 +781,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -769,7 +789,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-audit'` -##### `log_type` +##### `log_type` Data type: `Enum['file', 'syslog', 'none']` @@ -777,34 +797,38 @@ Logging type to use. Default value: `'none'` -##### `log_file` +##### `log_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the log file. Only valid if `log_type` is set to `file`. -Default value: ``undef`` +Default value: `undef` -##### `log_ident` +##### `log_ident` Data type: `Optional[String]` Logging prefix ident. Only valid if `log_type` is set to `syslog`. -Default value: ``undef`` +Default value: `undef` + +##### `log_facility` -##### `log_facility` +Data type: -Data type: `Variant[ +```puppet +Variant[ Enum['auth', 'user', 'authpriv'], Pattern[/^local[0-7]$/] - ]` + ] +``` Facility to log to. Only valid if `log_type` is set to `syslog`. Default value: `'auth'` -##### `stream_format` +##### `stream_format` Data type: `Enum['json', 'none']` @@ -812,15 +836,15 @@ Set to `json` to stream in JSON format. Disabled by setting to `none`. Default value: `'none'` -##### `stream_file` +##### `stream_file` Data type: `Optional[Stdlib::Absolutepath]` Path to the stream destination. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::businessprocess` +### `icingaweb2::module::businessprocess` Installs and enables the businessprocess module. @@ -840,14 +864,14 @@ class { 'icingaweb2::module::businessprocess': The following parameters are available in the `icingaweb2::module::businessprocess` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) +* [`ensure`](#-icingaweb2--module--businessprocess--ensure) +* [`module_dir`](#-icingaweb2--module--businessprocess--module_dir) +* [`git_repository`](#-icingaweb2--module--businessprocess--git_repository) +* [`git_revision`](#-icingaweb2--module--businessprocess--git_revision) +* [`install_method`](#-icingaweb2--module--businessprocess--install_method) +* [`package_name`](#-icingaweb2--module--businessprocess--package_name) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -855,15 +879,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -871,15 +895,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-businessprocess.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v2.1.0`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -887,7 +911,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -895,7 +919,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-businessprocess'` -### `icingaweb2::module::cube` +### `icingaweb2::module::cube` Installs and enables the cube module. @@ -915,14 +939,14 @@ class { 'icingaweb2::module::cube': The following parameters are available in the `icingaweb2::module::cube` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) +* [`ensure`](#-icingaweb2--module--cube--ensure) +* [`module_dir`](#-icingaweb2--module--cube--module_dir) +* [`git_repository`](#-icingaweb2--module--cube--git_repository) +* [`git_revision`](#-icingaweb2--module--cube--git_revision) +* [`install_method`](#-icingaweb2--module--cube--install_method) +* [`package_name`](#-icingaweb2--module--cube--package_name) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -930,15 +954,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -946,15 +970,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-cube.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.0.0`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -962,7 +986,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -970,7 +994,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-cube'` -### `icingaweb2::module::director` +### `icingaweb2::module::director` Installs and configures the director module. @@ -1000,38 +1024,38 @@ class { 'icingaweb2::module::director': The following parameters are available in the `icingaweb2::module::director` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`db_type`](#db_type) -* [`db_host`](#db_host) -* [`db_port`](#db_port) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`db_charset`](#db_charset) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) -* [`import_schema`](#import_schema) -* [`kickstart`](#kickstart) -* [`endpoint`](#endpoint) -* [`api_host`](#api_host) -* [`api_port`](#api_port) -* [`api_username`](#api_username) -* [`api_password`](#api_password) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--director--ensure) +* [`module_dir`](#-icingaweb2--module--director--module_dir) +* [`git_repository`](#-icingaweb2--module--director--git_repository) +* [`git_revision`](#-icingaweb2--module--director--git_revision) +* [`install_method`](#-icingaweb2--module--director--install_method) +* [`package_name`](#-icingaweb2--module--director--package_name) +* [`db_type`](#-icingaweb2--module--director--db_type) +* [`db_host`](#-icingaweb2--module--director--db_host) +* [`db_port`](#-icingaweb2--module--director--db_port) +* [`db_name`](#-icingaweb2--module--director--db_name) +* [`db_username`](#-icingaweb2--module--director--db_username) +* [`db_password`](#-icingaweb2--module--director--db_password) +* [`db_charset`](#-icingaweb2--module--director--db_charset) +* [`use_tls`](#-icingaweb2--module--director--use_tls) +* [`tls_key_file`](#-icingaweb2--module--director--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--director--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--director--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--director--tls_key) +* [`tls_cert`](#-icingaweb2--module--director--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--director--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--director--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--director--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--director--tls_cipher) +* [`import_schema`](#-icingaweb2--module--director--import_schema) +* [`kickstart`](#-icingaweb2--module--director--kickstart) +* [`endpoint`](#-icingaweb2--module--director--endpoint) +* [`api_host`](#-icingaweb2--module--director--api_host) +* [`api_port`](#-icingaweb2--module--director--api_port) +* [`api_username`](#-icingaweb2--module--director--api_username) +* [`api_password`](#-icingaweb2--module--director--api_password) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1039,15 +1063,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1055,15 +1079,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-director.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.3.2`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'package', 'none']` @@ -1071,7 +1095,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1079,7 +1103,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-director'` -##### `db_type` +##### `db_type` Data type: `Enum['mysql', 'pgsql']` @@ -1087,7 +1111,7 @@ Type of your database. Either `mysql` or `pgsql`. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -1095,15 +1119,15 @@ Hostname of the database. Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` Port of the database. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `String` @@ -1111,7 +1135,7 @@ Name of the database. Default value: `'director'` -##### `db_username` +##### `db_username` Data type: `String` @@ -1119,15 +1143,15 @@ Username for DB connection. Default value: `'director'` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` Password for DB connection. -Default value: ``undef`` +Default value: `undef` -##### `db_charset` +##### `db_charset` Data type: `String` @@ -1135,113 +1159,113 @@ Character set to use for the database. Default value: `'utf8'` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `import_schema` +##### `import_schema` Data type: `Boolean` Import database schema. -Default value: ``false`` +Default value: `false` -##### `kickstart` +##### `kickstart` Data type: `Boolean` Run kickstart command after database migration. This requires `import_schema` to be `true`. -Default value: ``false`` +Default value: `false` -##### `endpoint` +##### `endpoint` Data type: `Optional[String]` Endpoint object name of Icinga 2 API. This setting is only valid if `kickstart` is `true`. -Default value: ``undef`` +Default value: `undef` -##### `api_host` +##### `api_host` Data type: `Stdlib::Host` @@ -1249,7 +1273,7 @@ Icinga 2 API hostname. This setting is only valid if `kickstart` is `true`. Default value: `'localhost'` -##### `api_port` +##### `api_port` Data type: `Stdlib::Port` @@ -1257,23 +1281,23 @@ Icinga 2 API port. This setting is only valid if `kickstart` is `true`. Default value: `5665` -##### `api_username` +##### `api_username` Data type: `Optional[String]` Icinga 2 API username. This setting is only valid if `kickstart` is `true`. -Default value: ``undef`` +Default value: `undef` -##### `api_password` +##### `api_password` Data type: `Optional[Icingaweb2::Secret]` Icinga 2 API password. This setting is only valid if `kickstart` is `true`. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::director::service` +### `icingaweb2::module::director::service` Installs and configures the director service. @@ -1283,13 +1307,13 @@ Installs and configures the director service. The following parameters are available in the `icingaweb2::module::director::service` class: -* [`ensure`](#ensure) -* [`enable`](#enable) -* [`user`](#user) -* [`group`](#group) -* [`manage_user`](#manage_user) +* [`ensure`](#-icingaweb2--module--director--service--ensure) +* [`enable`](#-icingaweb2--module--director--service--enable) +* [`user`](#-icingaweb2--module--director--service--user) +* [`group`](#-icingaweb2--module--director--service--group) +* [`manage_user`](#-icingaweb2--module--director--service--manage_user) -##### `ensure` +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -1297,15 +1321,15 @@ Whether the director service should be running. Default value: `'running'` -##### `enable` +##### `enable` Data type: `Boolean` Enable or disable the service. -Default value: ``true`` +Default value: `true` -##### `user` +##### `user` Data type: `String` @@ -1314,7 +1338,7 @@ install_method package is not used. Default value: `'icingadirector'` -##### `group` +##### `group` Data type: `String` @@ -1323,16 +1347,16 @@ Specifies primary group for user to run director service daemon. Default value: `'icingaweb2'` -##### `manage_user` +##### `manage_user` Data type: `Boolean` Whether to manage the server user resource. Only available if install_method package is not used. -Default value: ``true`` +Default value: `true` -### `icingaweb2::module::doc` +### `icingaweb2::module::doc` The doc module provides an interface to the Icinga 2 and Icinga Web 2 documentation. @@ -1340,9 +1364,9 @@ The doc module provides an interface to the Icinga 2 and Icinga Web 2 documentat The following parameters are available in the `icingaweb2::module::doc` class: -* [`ensure`](#ensure) +* [`ensure`](#-icingaweb2--module--doc--ensure) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1350,7 +1374,7 @@ Enable or disable module. Defaults to `present` Default value: `'present'` -### `icingaweb2::module::elasticsearch` +### `icingaweb2::module::elasticsearch` The Elasticsearch module displays events from data stored in Elasticsearch. @@ -1385,16 +1409,16 @@ class { 'icingaweb2::module::elasticsearch': The following parameters are available in the `icingaweb2::module::elasticsearch` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`git_revision`](#git_revision) -* [`instances`](#instances) -* [`eventtypes`](#eventtypes) +* [`ensure`](#-icingaweb2--module--elasticsearch--ensure) +* [`module_dir`](#-icingaweb2--module--elasticsearch--module_dir) +* [`git_repository`](#-icingaweb2--module--elasticsearch--git_repository) +* [`install_method`](#-icingaweb2--module--elasticsearch--install_method) +* [`package_name`](#-icingaweb2--module--elasticsearch--package_name) +* [`git_revision`](#-icingaweb2--module--elasticsearch--git_revision) +* [`instances`](#-icingaweb2--module--elasticsearch--instances) +* [`eventtypes`](#-icingaweb2--module--elasticsearch--eventtypes) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1402,15 +1426,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1418,7 +1442,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-elasticsearch.git'` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1426,7 +1450,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1434,33 +1458,33 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-elasticsearch'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.3.2`. -Default value: ``undef`` +Default value: `undef` -##### `instances` +##### `instances` Data type: `Optional[Hash]` A hash that configures one or more Elasticsearch instances that this module connects to. The defined type `icingaweb2::module::elasticsearch::instance` is used to create the instance configuration. -Default value: ``undef`` +Default value: `undef` -##### `eventtypes` +##### `eventtypes` Data type: `Optional[Hash]` A hash oft ypes of events that should be displayed. Event types are always connected to instances. The defined type `icingaweb2::module::elasticsearch::eventtype` is used to create the event types. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::fileshipper` +### `icingaweb2::module::fileshipper` @example: class { 'icingaweb2::module::fileshipper': @@ -1482,16 +1506,16 @@ Default value: ``undef`` The following parameters are available in the `icingaweb2::module::fileshipper` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`git_revision`](#git_revision) -* [`base_directories`](#base_directories) -* [`directories`](#directories) +* [`ensure`](#-icingaweb2--module--fileshipper--ensure) +* [`module_dir`](#-icingaweb2--module--fileshipper--module_dir) +* [`git_repository`](#-icingaweb2--module--fileshipper--git_repository) +* [`install_method`](#-icingaweb2--module--fileshipper--install_method) +* [`package_name`](#-icingaweb2--module--fileshipper--package_name) +* [`git_revision`](#-icingaweb2--module--fileshipper--git_revision) +* [`base_directories`](#-icingaweb2--module--fileshipper--base_directories) +* [`directories`](#-icingaweb2--module--fileshipper--directories) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1499,15 +1523,15 @@ Enables or disables module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1515,7 +1539,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-fileshipper.git'` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1523,7 +1547,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1531,15 +1555,15 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-fileshipper'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.3.2`. -Default value: ``undef`` +Default value: `undef` -##### `base_directories` +##### `base_directories` Data type: `Hash` @@ -1547,7 +1571,7 @@ Hash of base directories. These directories can later be selected in the import Default value: `{}` -##### `directories` +##### `directories` Data type: `Hash` @@ -1555,7 +1579,7 @@ Deploy plain Icinga 2 configuration files through the Director to your Icinga 2 Default value: `{}` -### `icingaweb2::module::generictts` +### `icingaweb2::module::generictts` Installs and enables the generictts module. @@ -1581,15 +1605,15 @@ class { 'icingaweb2::module::generictts': The following parameters are available in the `icingaweb2::module::generictts` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`ticketsystems`](#ticketsystems) +* [`ensure`](#-icingaweb2--module--generictts--ensure) +* [`module_dir`](#-icingaweb2--module--generictts--module_dir) +* [`git_repository`](#-icingaweb2--module--generictts--git_repository) +* [`git_revision`](#-icingaweb2--module--generictts--git_revision) +* [`install_method`](#-icingaweb2--module--generictts--install_method) +* [`package_name`](#-icingaweb2--module--generictts--package_name) +* [`ticketsystems`](#-icingaweb2--module--generictts--ticketsystems) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1597,15 +1621,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1613,15 +1637,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-generictts.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v2.0.0`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1629,7 +1653,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1637,7 +1661,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-generictts'` -##### `ticketsystems` +##### `ticketsystems` Data type: `Hash` @@ -1647,7 +1671,7 @@ in the URL, eg. `https://my.ticket.system/tickets/id=$1`. Default value: `{}` -### `icingaweb2::module::graphite` +### `icingaweb2::module::graphite` The Graphite module draws graphs out of time series data stored in Graphite. @@ -1668,24 +1692,24 @@ class { 'icingaweb2::module::graphite': The following parameters are available in the `icingaweb2::module::graphite` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`url`](#url) -* [`insecure`](#insecure) -* [`user`](#user) -* [`password`](#password) -* [`graphite_writer_host_name_template`](#graphite_writer_host_name_template) -* [`graphite_writer_service_name_template`](#graphite_writer_service_name_template) -* [`customvar_obscured_check_command`](#customvar_obscured_check_command) -* [`default_time_range_unit`](#default_time_range_unit) -* [`default_time_range`](#default_time_range) -* [`disable_no_graphs`](#disable_no_graphs) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--graphite--ensure) +* [`module_dir`](#-icingaweb2--module--graphite--module_dir) +* [`git_repository`](#-icingaweb2--module--graphite--git_repository) +* [`git_revision`](#-icingaweb2--module--graphite--git_revision) +* [`install_method`](#-icingaweb2--module--graphite--install_method) +* [`package_name`](#-icingaweb2--module--graphite--package_name) +* [`url`](#-icingaweb2--module--graphite--url) +* [`insecure`](#-icingaweb2--module--graphite--insecure) +* [`user`](#-icingaweb2--module--graphite--user) +* [`password`](#-icingaweb2--module--graphite--password) +* [`graphite_writer_host_name_template`](#-icingaweb2--module--graphite--graphite_writer_host_name_template) +* [`graphite_writer_service_name_template`](#-icingaweb2--module--graphite--graphite_writer_service_name_template) +* [`customvar_obscured_check_command`](#-icingaweb2--module--graphite--customvar_obscured_check_command) +* [`default_time_range_unit`](#-icingaweb2--module--graphite--default_time_range_unit) +* [`default_time_range`](#-icingaweb2--module--graphite--default_time_range) +* [`disable_no_graphs`](#-icingaweb2--module--graphite--disable_no_graphs) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1693,15 +1717,15 @@ Enables or disables module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1709,15 +1733,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-graphite.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.3.2`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1725,7 +1749,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1733,90 +1757,94 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-graphite'` -##### `url` +##### `url` Data type: `Optional[String]` URL to your Graphite Web/API. -Default value: ``undef`` +Default value: `undef` -##### `insecure` +##### `insecure` Data type: `Optional[Boolean]` Do not verify the TLS certificate. -Default value: ``undef`` +Default value: `undef` -##### `user` +##### `user` Data type: `Optional[String]` A user with access to your Graphite Web via HTTP basic authentication. -Default value: ``undef`` +Default value: `undef` -##### `password` +##### `password` Data type: `Optional[Icingaweb2::Secret]` The users password. -Default value: ``undef`` +Default value: `undef` -##### `graphite_writer_host_name_template` +##### `graphite_writer_host_name_template` Data type: `Optional[String]` The value of your Icinga 2 GraphiteWriter's attribute `host_name_template` (if specified). -Default value: ``undef`` +Default value: `undef` -##### `graphite_writer_service_name_template` +##### `graphite_writer_service_name_template` Data type: `Optional[String]` The value of your icinga 2 GraphiteWriter's attribute `service_name_template` (if specified). -Default value: ``undef`` +Default value: `undef` -##### `customvar_obscured_check_command` +##### `customvar_obscured_check_command` Data type: `Optional[String]` The Icinga custom variable with the `actual` check command obscured by e.g. check_by_ssh. -Default value: ``undef`` +Default value: `undef` -##### `default_time_range_unit` +##### `default_time_range_unit` -Data type: `Optional[Enum[ +Data type: + +```puppet +Optional[Enum[ 'minutes', 'hours', 'days', 'weeks', 'months', 'years' - ]]` + ]] +``` Set unit for the time range. -Default value: ``undef`` +Default value: `undef` -##### `default_time_range` +##### `default_time_range` Data type: `Optional[Integer[1]]` Set the displayed time range. -Default value: ``undef`` +Default value: `undef` -##### `disable_no_graphs` +##### `disable_no_graphs` Data type: `Optional[Boolean]` Do not display empty graphs. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::icingadb` +### `icingaweb2::module::icingadb` Manages the icingadb module. This module is still optional at the moment. @@ -1826,44 +1854,44 @@ Manages the icingadb module. This module is still optional at the moment. The following parameters are available in the `icingaweb2::module::icingadb` class: -* [`ensure`](#ensure) -* [`package_name`](#package_name) -* [`db_type`](#db_type) -* [`db_host`](#db_host) -* [`db_port`](#db_port) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`db_charset`](#db_charset) -* [`db_use_tls`](#db_use_tls) -* [`db_tls_cert_file`](#db_tls_cert_file) -* [`db_tls_key_file`](#db_tls_key_file) -* [`db_tls_cacert_file`](#db_tls_cacert_file) -* [`db_tls_cert`](#db_tls_cert) -* [`db_tls_key`](#db_tls_key) -* [`db_tls_cacert`](#db_tls_cacert) -* [`db_tls_capath`](#db_tls_capath) -* [`db_tls_noverify`](#db_tls_noverify) -* [`db_tls_cipher`](#db_tls_cipher) -* [`redis_host`](#redis_host) -* [`redis_port`](#redis_port) -* [`redis_password`](#redis_password) -* [`redis_primary_host`](#redis_primary_host) -* [`redis_primary_port`](#redis_primary_port) -* [`redis_primary_password`](#redis_primary_password) -* [`redis_secondary_host`](#redis_secondary_host) -* [`redis_secondary_port`](#redis_secondary_port) -* [`redis_secondary_password`](#redis_secondary_password) -* [`redis_use_tls`](#redis_use_tls) -* [`redis_tls_cert`](#redis_tls_cert) -* [`redis_tls_key`](#redis_tls_key) -* [`redis_tls_cacert`](#redis_tls_cacert) -* [`redis_tls_cert_file`](#redis_tls_cert_file) -* [`redis_tls_key_file`](#redis_tls_key_file) -* [`redis_tls_cacert_file`](#redis_tls_cacert_file) -* [`commandtransports`](#commandtransports) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--icingadb--ensure) +* [`package_name`](#-icingaweb2--module--icingadb--package_name) +* [`db_type`](#-icingaweb2--module--icingadb--db_type) +* [`db_host`](#-icingaweb2--module--icingadb--db_host) +* [`db_port`](#-icingaweb2--module--icingadb--db_port) +* [`db_name`](#-icingaweb2--module--icingadb--db_name) +* [`db_username`](#-icingaweb2--module--icingadb--db_username) +* [`db_password`](#-icingaweb2--module--icingadb--db_password) +* [`db_charset`](#-icingaweb2--module--icingadb--db_charset) +* [`db_use_tls`](#-icingaweb2--module--icingadb--db_use_tls) +* [`db_tls_cert_file`](#-icingaweb2--module--icingadb--db_tls_cert_file) +* [`db_tls_key_file`](#-icingaweb2--module--icingadb--db_tls_key_file) +* [`db_tls_cacert_file`](#-icingaweb2--module--icingadb--db_tls_cacert_file) +* [`db_tls_cert`](#-icingaweb2--module--icingadb--db_tls_cert) +* [`db_tls_key`](#-icingaweb2--module--icingadb--db_tls_key) +* [`db_tls_cacert`](#-icingaweb2--module--icingadb--db_tls_cacert) +* [`db_tls_capath`](#-icingaweb2--module--icingadb--db_tls_capath) +* [`db_tls_noverify`](#-icingaweb2--module--icingadb--db_tls_noverify) +* [`db_tls_cipher`](#-icingaweb2--module--icingadb--db_tls_cipher) +* [`redis_host`](#-icingaweb2--module--icingadb--redis_host) +* [`redis_port`](#-icingaweb2--module--icingadb--redis_port) +* [`redis_password`](#-icingaweb2--module--icingadb--redis_password) +* [`redis_primary_host`](#-icingaweb2--module--icingadb--redis_primary_host) +* [`redis_primary_port`](#-icingaweb2--module--icingadb--redis_primary_port) +* [`redis_primary_password`](#-icingaweb2--module--icingadb--redis_primary_password) +* [`redis_secondary_host`](#-icingaweb2--module--icingadb--redis_secondary_host) +* [`redis_secondary_port`](#-icingaweb2--module--icingadb--redis_secondary_port) +* [`redis_secondary_password`](#-icingaweb2--module--icingadb--redis_secondary_password) +* [`redis_use_tls`](#-icingaweb2--module--icingadb--redis_use_tls) +* [`redis_tls_cert`](#-icingaweb2--module--icingadb--redis_tls_cert) +* [`redis_tls_key`](#-icingaweb2--module--icingadb--redis_tls_key) +* [`redis_tls_cacert`](#-icingaweb2--module--icingadb--redis_tls_cacert) +* [`redis_tls_cert_file`](#-icingaweb2--module--icingadb--redis_tls_cert_file) +* [`redis_tls_key_file`](#-icingaweb2--module--icingadb--redis_tls_key_file) +* [`redis_tls_cacert_file`](#-icingaweb2--module--icingadb--redis_tls_cacert_file) +* [`commandtransports`](#-icingaweb2--module--icingadb--commandtransports) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1871,13 +1899,13 @@ Enable or disable module. Default value: `'present'` -##### `package_name` +##### `package_name` Data type: `String` IicngaDB-Web module package name. -##### `db_type` +##### `db_type` Data type: `Enum['mysql', 'pgsql']` @@ -1885,7 +1913,7 @@ Type of your IDO database. Either `mysql` or `pgsql`. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -1893,15 +1921,15 @@ Hostname of the IcingaDB database. Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` Port of the IcingaDB database. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `String` @@ -1909,7 +1937,7 @@ Name of the IcingaDB database. Default value: `'icingadb'` -##### `db_username` +##### `db_username` Data type: `String` @@ -1917,103 +1945,103 @@ Username for IcingaDB database connection. Default value: `'icingadb'` -##### `db_password` +##### `db_password` Data type: `Icingaweb2::Secret` Password for IcingaDB database connection. -##### `db_charset` +##### `db_charset` Data type: `Optional[String]` The character set to use for the IcingaDB database connection. -Default value: ``undef`` +Default value: `undef` -##### `db_use_tls` +##### `db_use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_cert_file` +##### `db_tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_key_file` +##### `db_tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_cacert_file` +##### `db_tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the CA root certificate. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_cert` +##### `db_tls_cert` Data type: `Optional[String]` The client certificate in PEM format. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_key` +##### `db_tls_key` Data type: `Optional[Icingaweb2::Secret]` The client private key in PEM format. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_cacert` +##### `db_tls_cacert` Data type: `Optional[String]` The CA root certificate in PEM format. Only valid if db_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_capath` +##### `db_tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_noverify` +##### `db_tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `db_tls_cipher` +##### `db_tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `redis_host` +##### `redis_host` Data type: `Stdlib::Host` @@ -2021,23 +2049,23 @@ Redis host to connect. Default value: `'localhost'` -##### `redis_port` +##### `redis_port` Data type: `Optional[Stdlib::Port]` Connect `redis_host` om this port. -Default value: ``undef`` +Default value: `undef` -##### `redis_password` +##### `redis_password` Data type: `Optional[Icingaweb2::Secret]` Password for Redis connection. -Default value: ``undef`` +Default value: `undef` -##### `redis_primary_host` +##### `redis_primary_host` Data type: `Stdlib::Host` @@ -2045,7 +2073,7 @@ Alternative parameter to use for `redis_host`. Useful for high availability envi Default value: `$redis_host` -##### `redis_primary_port` +##### `redis_primary_port` Data type: `Optional[Stdlib::Port]` @@ -2053,7 +2081,7 @@ Alternative parameter to use for `redis_port`. Useful for high availability envi Default value: `$redis_port` -##### `redis_primary_password` +##### `redis_primary_password` Data type: `Optional[Icingaweb2::Secret]` @@ -2061,89 +2089,89 @@ Alternative parameter to use for `redis_passwod`. Useful for high availability e Default value: `$redis_password` -##### `redis_secondary_host` +##### `redis_secondary_host` Data type: `Optional[Stdlib::Host]` Fallback Redis host to connect if the first one fails. -Default value: ``undef`` +Default value: `undef` -##### `redis_secondary_port` +##### `redis_secondary_port` Data type: `Optional[Stdlib::Port]` Port to connect on the fallback Redis server. -Default value: ``undef`` +Default value: `undef` -##### `redis_secondary_password` +##### `redis_secondary_password` Data type: `Optional[Icingaweb2::Secret]` Password for the second Redis server. -Default value: ``undef`` +Default value: `undef` -##### `redis_use_tls` +##### `redis_use_tls` Data type: `Optional[Boolean]` Use tls encrypt connection for Redis. All Credentials are applied for both connections in a high availability environments. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_cert` +##### `redis_tls_cert` Data type: `Optional[String]` Client certificate in PEM format to authenticate to Redis. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_key` +##### `redis_tls_key` Data type: `Optional[Icingaweb2::Secret]` Client private key in PEM format. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_cacert` +##### `redis_tls_cacert` Data type: `Optional[String]` The CA certificate in PEM format. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_cert_file` +##### `redis_tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the client certificate. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_key_file` +##### `redis_tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `redis_tls_cacert_file` +##### `redis_tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the CA certificate. Only valid if redis_use_tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `commandtransports` +##### `commandtransports` Data type: `Hash[String, Hash]` @@ -2151,7 +2179,7 @@ A hash of command transports. Default value: `{}` -### `icingaweb2::module::idoreports` +### `icingaweb2::module::idoreports` Installs, configures and enables the idoreports module. @@ -2171,67 +2199,67 @@ class { 'icingaweb2::module::idoreports': The following parameters are available in the `icingaweb2::module::idoreports` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`import_schema`](#import_schema) -* [`ido_db_username`](#ido_db_username) -* [`ido_db_password`](#ido_db_password) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--idoreports--ensure) +* [`module_dir`](#-icingaweb2--module--idoreports--module_dir) +* [`git_repository`](#-icingaweb2--module--idoreports--git_repository) +* [`git_revision`](#-icingaweb2--module--idoreports--git_revision) +* [`install_method`](#-icingaweb2--module--idoreports--install_method) +* [`package_name`](#-icingaweb2--module--idoreports--package_name) +* [`import_schema`](#-icingaweb2--module--idoreports--import_schema) +* [`ido_db_username`](#-icingaweb2--module--idoreports--ido_db_username) +* [`ido_db_password`](#-icingaweb2--module--idoreports--ido_db_password) +* [`use_tls`](#-icingaweb2--module--idoreports--use_tls) +* [`tls_key_file`](#-icingaweb2--module--idoreports--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--idoreports--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--idoreports--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--idoreports--tls_key) +* [`tls_cert`](#-icingaweb2--module--idoreports--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--idoreports--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--idoreports--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--idoreports--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--idoreports--tls_cipher) + +##### `ensure` Data type: `Enum['absent', 'present']` Enable or disable module. -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` Set a git repository URL. -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v2.1.0`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` Install methods are `git`, `package` and `none` is supported as installation method. -##### `package_name` +##### `package_name` Data type: `String` Package name of the module. This setting is only valid in combination with the installation method `package`. -##### `import_schema` +##### `import_schema` Data type: `Variant[Boolean, Enum['mariadb', 'mysql']]` @@ -2239,9 +2267,9 @@ The IDO database needs some extensions for reorting. Whether to import the datab Options `mariadb` and `mysql`, both means true. With mariadb its cli options are used for the import, whereas with mysql its different options. -Default value: ``false`` +Default value: `false` -##### `ido_db_username` +##### `ido_db_username` Data type: `Optional[String]` @@ -2250,7 +2278,7 @@ the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::ido_db_username` -##### `ido_db_password` +##### `ido_db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -2259,7 +2287,7 @@ the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::ido_db_password` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` @@ -2269,7 +2297,7 @@ the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::use_tls` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` @@ -2278,7 +2306,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_key_file` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` @@ -2287,7 +2315,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_cert_file` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` @@ -2296,7 +2324,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_cacert_file` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` @@ -2305,7 +2333,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_key` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` @@ -2314,7 +2342,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_cert` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` @@ -2323,7 +2351,7 @@ By default, same value from the `monitoring` module is used. Default value: `$icingaweb2::module::monitoring::tls_cacert` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` @@ -2332,7 +2360,7 @@ Only available for the mysql database. By default, same value from the `monitori Default value: `$icingaweb2::module::monitoring::tls_capath` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` @@ -2340,7 +2368,7 @@ Disable validation of the server certificate. By default, same value from the `m Default value: `$icingaweb2::module::monitoring::tls_noverify` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` @@ -2348,7 +2376,7 @@ Cipher to use for the encrypted database connection. By default, same value from Default value: `$icingaweb2::module::monitoring::tls_cipher` -### `icingaweb2::module::incubator` +### `icingaweb2::module::incubator` Installs and enables the incubator module. @@ -2358,12 +2386,12 @@ Installs and enables the incubator module. The following parameters are available in the `icingaweb2::module::incubator` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) +* [`ensure`](#-icingaweb2--module--incubator--ensure) +* [`module_dir`](#-icingaweb2--module--incubator--module_dir) +* [`git_repository`](#-icingaweb2--module--incubator--git_repository) +* [`git_revision`](#-icingaweb2--module--incubator--git_revision) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2371,27 +2399,27 @@ Enable or disable module. Defaults to `present` Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` Set a git repository URL. Defaults to github. -##### `git_revision` +##### `git_revision` Data type: `String` Set either a branch or a tag name, eg. `stable/0.7.0` or `v0.7.0`. -### `icingaweb2::module::ipl` +### `icingaweb2::module::ipl` Installs and enables the ipl module. @@ -2401,12 +2429,12 @@ Installs and enables the ipl module. The following parameters are available in the `icingaweb2::module::ipl` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) +* [`ensure`](#-icingaweb2--module--ipl--ensure) +* [`module_dir`](#-icingaweb2--module--ipl--module_dir) +* [`git_repository`](#-icingaweb2--module--ipl--git_repository) +* [`git_revision`](#-icingaweb2--module--ipl--git_revision) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2414,27 +2442,27 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` Set a git repository URL. -##### `git_revision` +##### `git_revision` Data type: `String` Set either a branch or a tag name, eg. `stable/0.7.0` or `v0.7.0`. -### `icingaweb2::module::monitoring` +### `icingaweb2::module::monitoring` Requirements: * IDO feature in Icinga 2 (MySQL or PostgreSQL) @@ -2469,28 +2497,28 @@ Requirements: The following parameters are available in the `icingaweb2::module::monitoring` class: -* [`ensure`](#ensure) -* [`protected_customvars`](#protected_customvars) -* [`ido_type`](#ido_type) -* [`ido_host`](#ido_host) -* [`ido_port`](#ido_port) -* [`ido_db_name`](#ido_db_name) -* [`ido_db_username`](#ido_db_username) -* [`ido_db_password`](#ido_db_password) -* [`ido_db_charset`](#ido_db_charset) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) -* [`commandtransports`](#commandtransports) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--monitoring--ensure) +* [`protected_customvars`](#-icingaweb2--module--monitoring--protected_customvars) +* [`ido_type`](#-icingaweb2--module--monitoring--ido_type) +* [`ido_host`](#-icingaweb2--module--monitoring--ido_host) +* [`ido_port`](#-icingaweb2--module--monitoring--ido_port) +* [`ido_db_name`](#-icingaweb2--module--monitoring--ido_db_name) +* [`ido_db_username`](#-icingaweb2--module--monitoring--ido_db_username) +* [`ido_db_password`](#-icingaweb2--module--monitoring--ido_db_password) +* [`ido_db_charset`](#-icingaweb2--module--monitoring--ido_db_charset) +* [`use_tls`](#-icingaweb2--module--monitoring--use_tls) +* [`tls_key_file`](#-icingaweb2--module--monitoring--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--monitoring--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--monitoring--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--monitoring--tls_key) +* [`tls_cert`](#-icingaweb2--module--monitoring--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--monitoring--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--monitoring--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--monitoring--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--monitoring--tls_cipher) +* [`commandtransports`](#-icingaweb2--module--monitoring--commandtransports) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2498,7 +2526,7 @@ Enable or disable module. Default value: `'present'` -##### `protected_customvars` +##### `protected_customvars` Data type: `Variant[String, Array[String]]` @@ -2507,7 +2535,7 @@ that should be hidden in the web interface. Default value: `['*pw*', '*pass*', 'community']` -##### `ido_type` +##### `ido_type` Data type: `Enum['mysql', 'pgsql']` @@ -2515,137 +2543,137 @@ Type of your IDO database. Either `mysql` or `pgsql`. Default value: `'mysql'` -##### `ido_host` +##### `ido_host` Data type: `Optional[Stdlib::Host]` Hostname of the IDO database. -Default value: ``undef`` +Default value: `undef` -##### `ido_port` +##### `ido_port` Data type: `Optional[Stdlib::Port]` Port of the IDO database. -Default value: ``undef`` +Default value: `undef` -##### `ido_db_name` +##### `ido_db_name` Data type: `Optional[String]` Name of the IDO database. -Default value: ``undef`` +Default value: `undef` -##### `ido_db_username` +##### `ido_db_username` Data type: `Optional[String]` Username for IDO DB connection. -Default value: ``undef`` +Default value: `undef` -##### `ido_db_password` +##### `ido_db_password` Data type: `Optional[Icingaweb2::Secret]` Password for IDO DB connection. -Default value: ``undef`` +Default value: `undef` -##### `ido_db_charset` +##### `ido_db_charset` Data type: `Optional[String]` The character set to use for the database connection. -Default value: ``undef`` +Default value: `undef` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `commandtransports` +##### `commandtransports` Data type: `Hash` @@ -2653,7 +2681,7 @@ A hash of command transports. Default value: `{}` -### `icingaweb2::module::pdfexport` +### `icingaweb2::module::pdfexport` Installs, configures and enables the pdfexport module. @@ -2674,18 +2702,18 @@ class { 'icingaweb2::module::pdfexport': The following parameters are available in the `icingaweb2::module::pdfexport` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`chrome_binary`](#chrome_binary) -* [`force_temp_storage`](#force_temp_storage) -* [`remote_host`](#remote_host) -* [`remote_port`](#remote_port) +* [`ensure`](#-icingaweb2--module--pdfexport--ensure) +* [`module_dir`](#-icingaweb2--module--pdfexport--module_dir) +* [`git_repository`](#-icingaweb2--module--pdfexport--git_repository) +* [`git_revision`](#-icingaweb2--module--pdfexport--git_revision) +* [`install_method`](#-icingaweb2--module--pdfexport--install_method) +* [`package_name`](#-icingaweb2--module--pdfexport--package_name) +* [`chrome_binary`](#-icingaweb2--module--pdfexport--chrome_binary) +* [`force_temp_storage`](#-icingaweb2--module--pdfexport--force_temp_storage) +* [`remote_host`](#-icingaweb2--module--pdfexport--remote_host) +* [`remote_port`](#-icingaweb2--module--pdfexport--remote_port) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2693,15 +2721,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -2709,15 +2737,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-pdfexport.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v2.1.0`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -2725,7 +2753,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -2733,39 +2761,39 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-pdfexport'` -##### `chrome_binary` +##### `chrome_binary` Data type: `Optional[Stdlib::Absolutepath]` Path of the chrome or Chrome/Chromium binary. -Default value: ``undef`` +Default value: `undef` -##### `force_temp_storage` +##### `force_temp_storage` Data type: `Optional[Boolean]` Force using of local temp storage. -Default value: ``undef`` +Default value: `undef` -##### `remote_host` +##### `remote_host` Data type: `Optional[Stdlib::Host]` Connect a remote running Chrome/Chromium. -Default value: ``undef`` +Default value: `undef` -##### `remote_port` +##### `remote_port` Data type: `Optional[Stdlib::Port]` Port to connect the remote running Chrome/Chromium. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::puppetdb` +### `icingaweb2::module::puppetdb` Installs and configures the puppetdb module. @@ -2808,17 +2836,17 @@ class {'::icingaweb2::module::puppetdb': The following parameters are available in the `icingaweb2::module::puppetdb` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`ssl`](#ssl) -* [`host`](#host) -* [`certificates`](#certificates) +* [`ensure`](#-icingaweb2--module--puppetdb--ensure) +* [`module_dir`](#-icingaweb2--module--puppetdb--module_dir) +* [`git_repository`](#-icingaweb2--module--puppetdb--git_repository) +* [`git_revision`](#-icingaweb2--module--puppetdb--git_revision) +* [`install_method`](#-icingaweb2--module--puppetdb--install_method) +* [`package_name`](#-icingaweb2--module--puppetdb--package_name) +* [`ssl`](#-icingaweb2--module--puppetdb--ssl) +* [`host`](#-icingaweb2--module--puppetdb--host) +* [`certificates`](#-icingaweb2--module--puppetdb--certificates) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2826,15 +2854,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -2842,15 +2870,15 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-puppetdb.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `master` or `v1.3.2`. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -2858,7 +2886,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -2866,7 +2894,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-puppetdb'` -##### `ssl` +##### `ssl` Data type: `Enum['none', 'puppet']` @@ -2874,15 +2902,15 @@ How to set up ssl certificates. To copy certificates from the local puppet insta Default value: `'none'` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` Hostname of the server where PuppetDB is running. The `ssl` parameter needs to be set to `puppet`. -Default value: ``undef`` +Default value: `undef` -##### `certificates` +##### `certificates` Data type: `Hash` @@ -2890,7 +2918,7 @@ Hash with icingaweb2::module::puppetdb::certificate resources. Default value: `{}` -### `icingaweb2::module::reactbundle` +### `icingaweb2::module::reactbundle` Installs and enables the reactbundle module. @@ -2900,12 +2928,12 @@ Installs and enables the reactbundle module. The following parameters are available in the `icingaweb2::module::reactbundle` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) +* [`ensure`](#-icingaweb2--module--reactbundle--ensure) +* [`module_dir`](#-icingaweb2--module--reactbundle--module_dir) +* [`git_repository`](#-icingaweb2--module--reactbundle--git_repository) +* [`git_revision`](#-icingaweb2--module--reactbundle--git_revision) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2913,29 +2941,29 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` Set a git repository URL. -##### `git_revision` +##### `git_revision` Data type: `String` Set either a branch or a tag name, eg. `stable/0.7.0` or `v0.7.0`. -### `icingaweb2::module::reporting` +### `icingaweb2::module::reporting` -Installs the reporting plugin +Installs the reporting module #### Examples @@ -2956,73 +2984,73 @@ class { 'icingaweb2::module::reporting': The following parameters are available in the `icingaweb2::module::reporting` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`db_type`](#db_type) -* [`db_host`](#db_host) -* [`db_port`](#db_port) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`db_charset`](#db_charset) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) -* [`import_schema`](#import_schema) -* [`mail`](#mail) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--reporting--ensure) +* [`module_dir`](#-icingaweb2--module--reporting--module_dir) +* [`git_repository`](#-icingaweb2--module--reporting--git_repository) +* [`git_revision`](#-icingaweb2--module--reporting--git_revision) +* [`install_method`](#-icingaweb2--module--reporting--install_method) +* [`package_name`](#-icingaweb2--module--reporting--package_name) +* [`db_type`](#-icingaweb2--module--reporting--db_type) +* [`db_host`](#-icingaweb2--module--reporting--db_host) +* [`db_port`](#-icingaweb2--module--reporting--db_port) +* [`db_name`](#-icingaweb2--module--reporting--db_name) +* [`db_username`](#-icingaweb2--module--reporting--db_username) +* [`db_password`](#-icingaweb2--module--reporting--db_password) +* [`db_charset`](#-icingaweb2--module--reporting--db_charset) +* [`use_tls`](#-icingaweb2--module--reporting--use_tls) +* [`tls_key_file`](#-icingaweb2--module--reporting--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--reporting--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--reporting--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--reporting--tls_key) +* [`tls_cert`](#-icingaweb2--module--reporting--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--reporting--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--reporting--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--reporting--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--reporting--tls_cipher) +* [`import_schema`](#-icingaweb2--module--reporting--import_schema) +* [`mail`](#-icingaweb2--module--reporting--mail) + +##### `ensure` Data type: `Enum['absent', 'present']` Ensures the state of the reporting module. -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` The upstream module repository. -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` The version of the module that needs to be used. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` Install methods are `git`, `package` and `none` is supported as installation method. -##### `package_name` +##### `package_name` Data type: `String` Package name of the module. This setting is only valid in combination with the installation method `package`. -##### `db_type` +##### `db_type` Data type: `Enum['mysql', 'pgsql']` @@ -3030,7 +3058,7 @@ The database type. Either mysql or postgres. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -3038,15 +3066,15 @@ The host where the reporting database will be running Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` The port on which the database is accessible. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `String` @@ -3054,7 +3082,7 @@ The name of the database this module should use. Default value: `'reporting'` -##### `db_username` +##### `db_username` Data type: `String` @@ -3062,105 +3090,105 @@ The username needed to access the database. Default value: `'reporting'` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` The password needed to access the database. -Default value: ``undef`` +Default value: `undef` -##### `db_charset` +##### `db_charset` Data type: `Optional[String]` The charset the database is set to. -Default value: ``undef`` +Default value: `undef` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `import_schema` +##### `import_schema` Data type: `Variant[Boolean, Enum['mariadb', 'mysql']]` @@ -3168,17 +3196,17 @@ Whether to import the database schema or not. Options `mariadb` and `mysql`, both means true. With mariadb its cli options are used for the import, whereas with mysql its different options. -Default value: ``false`` +Default value: `false` -##### `mail` +##### `mail` Data type: `Optional[String]` Mails are sent with this sender address. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::reporting::service` +### `icingaweb2::module::reporting::service` Installs and configures the reporting scheduler. @@ -3196,13 +3224,13 @@ include icingaweb2::module::reporting::service The following parameters are available in the `icingaweb2::module::reporting::service` class: -* [`ensure`](#ensure) -* [`enable`](#enable) -* [`user`](#user) -* [`group`](#group) -* [`manage_user`](#manage_user) +* [`ensure`](#-icingaweb2--module--reporting--service--ensure) +* [`enable`](#-icingaweb2--module--reporting--service--enable) +* [`user`](#-icingaweb2--module--reporting--service--user) +* [`group`](#-icingaweb2--module--reporting--service--group) +* [`manage_user`](#-icingaweb2--module--reporting--service--manage_user) -##### `ensure` +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -3210,15 +3238,15 @@ Whether the reporting service should be running. Default value: `'running'` -##### `enable` +##### `enable` Data type: `Boolean` Enable or disable the service. -Default value: ``true`` +Default value: `true` -##### `user` +##### `user` Data type: `String` @@ -3227,7 +3255,7 @@ Only available if install_method package is not used. Default value: `'icingareporting'` -##### `group` +##### `group` Data type: `String` @@ -3236,16 +3264,16 @@ Only available if install_method package is not used. Default value: `'icingaweb2'` -##### `manage_user` +##### `manage_user` Data type: `Boolean` Whether to manage the server user resource. Only available if install_method package is not used. -Default value: ``true`` +Default value: `true` -### `icingaweb2::module::translation` +### `icingaweb2::module::translation` Installs and configures the translation module. @@ -3253,9 +3281,9 @@ Installs and configures the translation module. The following parameters are available in the `icingaweb2::module::translation` class: -* [`ensure`](#ensure) +* [`ensure`](#-icingaweb2--module--translation--ensure) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3263,7 +3291,7 @@ Enable or disable module. Default value: `'present'` -### `icingaweb2::module::vsphere` +### `icingaweb2::module::vsphere` The vSphere module extends the Director. It provides import sources for virtual machines and physical hosts from vSphere. @@ -3273,14 +3301,14 @@ The vSphere module extends the Director. It provides import sources for virtual The following parameters are available in the `icingaweb2::module::vsphere` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`git_revision`](#git_revision) +* [`ensure`](#-icingaweb2--module--vsphere--ensure) +* [`module_dir`](#-icingaweb2--module--vsphere--module_dir) +* [`git_repository`](#-icingaweb2--module--vsphere--git_repository) +* [`install_method`](#-icingaweb2--module--vsphere--install_method) +* [`package_name`](#-icingaweb2--module--vsphere--package_name) +* [`git_revision`](#-icingaweb2--module--vsphere--git_revision) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3288,15 +3316,15 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -3304,7 +3332,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-vsphere.git'` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -3312,7 +3340,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -3320,15 +3348,15 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-vsphere'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` Set either a branch or a tag name, eg. `stable/0.7.0` or `v0.7.0`. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::module::vspheredb` +### `icingaweb2::module::vspheredb` Installs the vsphereDB plugin @@ -3351,32 +3379,32 @@ class { 'icingaweb2::module::vspheredb': The following parameters are available in the `icingaweb2::module::vspheredb` class: -* [`ensure`](#ensure) -* [`module_dir`](#module_dir) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`install_method`](#install_method) -* [`package_name`](#package_name) -* [`db_type`](#db_type) -* [`db_host`](#db_host) -* [`db_port`](#db_port) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`db_charset`](#db_charset) -* [`use_tls`](#use_tls) -* [`tls_key_file`](#tls_key_file) -* [`tls_cert_file`](#tls_cert_file) -* [`tls_cacert_file`](#tls_cacert_file) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_noverify`](#tls_noverify) -* [`tls_cipher`](#tls_cipher) -* [`import_schema`](#import_schema) - -##### `ensure` +* [`ensure`](#-icingaweb2--module--vspheredb--ensure) +* [`module_dir`](#-icingaweb2--module--vspheredb--module_dir) +* [`git_repository`](#-icingaweb2--module--vspheredb--git_repository) +* [`git_revision`](#-icingaweb2--module--vspheredb--git_revision) +* [`install_method`](#-icingaweb2--module--vspheredb--install_method) +* [`package_name`](#-icingaweb2--module--vspheredb--package_name) +* [`db_type`](#-icingaweb2--module--vspheredb--db_type) +* [`db_host`](#-icingaweb2--module--vspheredb--db_host) +* [`db_port`](#-icingaweb2--module--vspheredb--db_port) +* [`db_name`](#-icingaweb2--module--vspheredb--db_name) +* [`db_username`](#-icingaweb2--module--vspheredb--db_username) +* [`db_password`](#-icingaweb2--module--vspheredb--db_password) +* [`db_charset`](#-icingaweb2--module--vspheredb--db_charset) +* [`use_tls`](#-icingaweb2--module--vspheredb--use_tls) +* [`tls_key_file`](#-icingaweb2--module--vspheredb--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--vspheredb--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--vspheredb--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--vspheredb--tls_key) +* [`tls_cert`](#-icingaweb2--module--vspheredb--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--vspheredb--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--vspheredb--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--vspheredb--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--vspheredb--tls_cipher) +* [`import_schema`](#-icingaweb2--module--vspheredb--import_schema) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -3384,15 +3412,15 @@ Ensur es the state of the vspheredb module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` Target directory of the module. -Default value: ``undef`` +Default value: `undef` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -3400,15 +3428,15 @@ The upstream module repository. Default value: `'https://github.com/Icinga/icingaweb2-module-vspheredb.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` The version of the module that needs to be used. -Default value: ``undef`` +Default value: `undef` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -3416,7 +3444,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -3424,7 +3452,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: `'icingaweb2-module-vspheredb'` -##### `db_type` +##### `db_type` Data type: `Enum['mysql']` @@ -3432,7 +3460,7 @@ The database type. Either mysql or postgres. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -3440,15 +3468,15 @@ The host where the vspheredb-database will be running Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` The port on which the database is accessible. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `String` @@ -3456,7 +3484,7 @@ The name of the database this module should use. Default value: `'vspheredb'` -##### `db_username` +##### `db_username` Data type: `String` @@ -3464,15 +3492,15 @@ The username needed to access the database. Default value: `'vspheredb'` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` The password needed to access the database. -Default value: ``undef`` +Default value: `undef` -##### `db_charset` +##### `db_charset` Data type: `String` @@ -3480,89 +3508,89 @@ The charset the database is set to. Default value: `'utf8mb4'` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_key_file` +##### `tls_key_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert_file` +##### `tls_cert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert_file` +##### `tls_cacert_file` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Icingaweb2::Secret]` The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[String]` The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[String]` The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Cipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -##### `import_schema` +##### `import_schema` Data type: `Variant[Boolean, Enum['mariadb', 'mysql']]` @@ -3570,9 +3598,9 @@ Whether to import the database schema or not. New options `mariadb` and `mysql`, both means true. With mariadb its cli options are used for the import, whereas with mysql its different options. -Default value: ``false`` +Default value: `false` -### `icingaweb2::module::vspheredb::service` +### `icingaweb2::module::vspheredb::service` Installs and configures the vspheredb service. @@ -3590,13 +3618,13 @@ include icingaweb2::module::vspheredb::service The following parameters are available in the `icingaweb2::module::vspheredb::service` class: -* [`ensure`](#ensure) -* [`enable`](#enable) -* [`user`](#user) -* [`group`](#group) -* [`manage_user`](#manage_user) +* [`ensure`](#-icingaweb2--module--vspheredb--service--ensure) +* [`enable`](#-icingaweb2--module--vspheredb--service--enable) +* [`user`](#-icingaweb2--module--vspheredb--service--user) +* [`group`](#-icingaweb2--module--vspheredb--service--group) +* [`manage_user`](#-icingaweb2--module--vspheredb--service--manage_user) -##### `ensure` +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -3604,15 +3632,15 @@ Whether the vspheredb service should be running. Default value: `'running'` -##### `enable` +##### `enable` Data type: `Boolean` Enable or disable the service. -Default value: ``true`` +Default value: `true` -##### `user` +##### `user` Data type: `String` @@ -3621,7 +3649,7 @@ Only available if install_method package is not used. Default value: `'icingavspheredb'` -##### `group` +##### `group` Data type: `String` @@ -3630,18 +3658,291 @@ Only available if install_method package is not used. Default value: `'icingaweb2'` -##### `manage_user` +##### `manage_user` Data type: `Boolean` Whether to manage the server user resource. Only available if install_method package is not used. -Default value: ``true`` +Default value: `true` + +### `icingaweb2::module::x509` + +Installs the x509 module + +#### Examples + +##### + +```puppet +class { 'icingaweb2::module::x509': + ensure => present, + git_revision => 'v1.2.1', + db_host => 'localhost', + db_name => 'x509', + db_username => 'x509', + db_password => Sensitive('supersecret'), +} +``` + +#### Parameters + +The following parameters are available in the `icingaweb2::module::x509` class: + +* [`ensure`](#-icingaweb2--module--x509--ensure) +* [`module_dir`](#-icingaweb2--module--x509--module_dir) +* [`git_repository`](#-icingaweb2--module--x509--git_repository) +* [`git_revision`](#-icingaweb2--module--x509--git_revision) +* [`install_method`](#-icingaweb2--module--x509--install_method) +* [`package_name`](#-icingaweb2--module--x509--package_name) +* [`db_type`](#-icingaweb2--module--x509--db_type) +* [`db_host`](#-icingaweb2--module--x509--db_host) +* [`db_port`](#-icingaweb2--module--x509--db_port) +* [`db_name`](#-icingaweb2--module--x509--db_name) +* [`db_username`](#-icingaweb2--module--x509--db_username) +* [`db_password`](#-icingaweb2--module--x509--db_password) +* [`db_charset`](#-icingaweb2--module--x509--db_charset) +* [`use_tls`](#-icingaweb2--module--x509--use_tls) +* [`tls_key_file`](#-icingaweb2--module--x509--tls_key_file) +* [`tls_cert_file`](#-icingaweb2--module--x509--tls_cert_file) +* [`tls_cacert_file`](#-icingaweb2--module--x509--tls_cacert_file) +* [`tls_key`](#-icingaweb2--module--x509--tls_key) +* [`tls_cert`](#-icingaweb2--module--x509--tls_cert) +* [`tls_cacert`](#-icingaweb2--module--x509--tls_cacert) +* [`tls_capath`](#-icingaweb2--module--x509--tls_capath) +* [`tls_noverify`](#-icingaweb2--module--x509--tls_noverify) +* [`tls_cipher`](#-icingaweb2--module--x509--tls_cipher) +* [`import_schema`](#-icingaweb2--module--x509--import_schema) + +##### `ensure` + +Data type: `Enum['absent', 'present']` + +Ensures the state of the x509 module. + +##### `module_dir` + +Data type: `Optional[Stdlib::Absolutepath]` + +Target directory of the module. + +Default value: `undef` + +##### `git_repository` + +Data type: `String` + +The upstream module repository. + +##### `git_revision` + +Data type: `Optional[String]` + +The version of the module that needs to be used. + +Default value: `undef` + +##### `install_method` + +Data type: `Enum['git', 'none', 'package']` + +Install methods are `git`, `package` and `none` is supported as installation method. + +##### `package_name` + +Data type: `String` + +Package name of the module. This setting is only valid in combination with the installation method `package`. + +##### `db_type` + +Data type: `Enum['mysql', 'pgsql']` + +The database type. Either mysql or pgsql. + +Default value: `'mysql'` + +##### `db_host` + +Data type: `Stdlib::Host` + +The host where the database will be running + +Default value: `'localhost'` + +##### `db_port` + +Data type: `Optional[Stdlib::Port]` + +The port on which the database is accessible. + +Default value: `undef` + +##### `db_name` + +Data type: `String` + +The name of the database this module should use. + +Default value: `'x509'` + +##### `db_username` + +Data type: `String` + +The username needed to access the database. + +Default value: `'x509'` + +##### `db_password` + +Data type: `Optional[Icingaweb2::Secret]` + +The password needed to access the database. + +Default value: `undef` + +##### `db_charset` + +Data type: `Optional[String]` + +The charset the database is set to. + +Default value: `undef` + +##### `use_tls` + +Data type: `Optional[Boolean]` + +Either enable or disable TLS encryption to the database. Other TLS parameters +are only affected if this is set to 'true'. + +Default value: `undef` + +##### `tls_key_file` + +Data type: `Optional[Stdlib::Absolutepath]` + +Location of the private key for client authentication. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_cert_file` + +Data type: `Optional[Stdlib::Absolutepath]` + +Location of the certificate for client authentication. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_cacert_file` + +Data type: `Optional[Stdlib::Absolutepath]` + +Location of the ca certificate. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_key` + +Data type: `Optional[Icingaweb2::Secret]` + +The private key to store in spicified `tls_key_file` file. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_cert` + +Data type: `Optional[String]` + +The certificate to store in spicified `tls_cert_file` file. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_cacert` + +Data type: `Optional[String]` + +The ca certificate to store in spicified `tls_cacert_file` file. Only valid if tls is enabled. + +Default value: `undef` + +##### `tls_capath` + +Data type: `Optional[Stdlib::Absolutepath]` + +The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. +Only available for the mysql database. + +Default value: `undef` + +##### `tls_noverify` + +Data type: `Optional[Boolean]` + +Disable validation of the server certificate. + +Default value: `undef` + +##### `tls_cipher` + +Data type: `Optional[String]` + +Cipher to use for the encrypted database connection. + +Default value: `undef` + +##### `import_schema` + +Data type: `Variant[Boolean, Enum['mariadb', 'mysql']]` + +Whether to import the database schema or not. Options `mariadb` and `mysql`, +both means true. With mariadb its cli options are used for the import, +whereas with mysql its different options. + +Default value: `false` + +### `icingaweb2::module::x509::service` + +Installs and configures the x509 job scheduler. + +* **Note** Only systemd is supported by the Icinga Team and this module. + +#### Examples + +##### + +```puppet +include icingaweb2::module::x509::service +``` + +#### Parameters + +The following parameters are available in the `icingaweb2::module::x509::service` class: + +* [`ensure`](#-icingaweb2--module--x509--service--ensure) +* [`enable`](#-icingaweb2--module--x509--service--enable) + +##### `ensure` + +Data type: `Stdlib::Ensure::Service` + +Whether the x509 service should be running. + +Default value: `'running'` + +##### `enable` + +Data type: `Boolean` + +Enable or disable the service. + +Default value: `true` ## Defined types -### `icingaweb2::config::authmethod` +### `icingaweb2::config::authmethod` Manage Icinga Web 2 authentication methods. Auth methods may be chained by setting proper ordering. @@ -3674,70 +3975,70 @@ icingaweb2::config::authmethod { 'ldap-auth': The following parameters are available in the `icingaweb2::config::authmethod` defined type: -* [`backend`](#backend) -* [`resource`](#resource) -* [`ldap_user_class`](#ldap_user_class) -* [`ldap_user_name_attribute`](#ldap_user_name_attribute) -* [`ldap_filter`](#ldap_filter) -* [`ldap_base_dn`](#ldap_base_dn) -* [`domain`](#domain) -* [`order`](#order) +* [`backend`](#-icingaweb2--config--authmethod--backend) +* [`resource`](#-icingaweb2--config--authmethod--resource) +* [`ldap_user_class`](#-icingaweb2--config--authmethod--ldap_user_class) +* [`ldap_user_name_attribute`](#-icingaweb2--config--authmethod--ldap_user_name_attribute) +* [`ldap_filter`](#-icingaweb2--config--authmethod--ldap_filter) +* [`ldap_base_dn`](#-icingaweb2--config--authmethod--ldap_base_dn) +* [`domain`](#-icingaweb2--config--authmethod--domain) +* [`order`](#-icingaweb2--config--authmethod--order) -##### `backend` +##### `backend` Data type: `Enum['external', 'ldap', 'msldap', 'db']` Select between 'external', 'ldap', 'msldap' or 'db'. Each backend may require other settings. -##### `resource` +##### `resource` Data type: `Optional[String]` The name of the resource defined in resources.ini. -Default value: ``undef`` +Default value: `undef` -##### `ldap_user_class` +##### `ldap_user_class` Data type: `Optional[String]` LDAP user class. Only valid if `backend` is `ldap` or `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_user_name_attribute` +##### `ldap_user_name_attribute` Data type: `Optional[String]` LDAP attribute which contains the username. Only valid if `backend` is `ldap` or `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_filter` +##### `ldap_filter` Data type: `Optional[String]` LDAP search filter. Only valid if `backend` is `ldap` or `msladap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_base_dn` +##### `ldap_base_dn` Data type: `Optional[String]` LDAP base DN. Only valid if `backend` is `ldap` or `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `domain` +##### `domain` Data type: `Optional[String]` Domain for domain-aware authentication -Default value: ``undef`` +Default value: `undef` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3746,7 +4047,7 @@ configuration determines the order of the authentication methods. Default value: `'01'` -### `icingaweb2::config::dashboard` +### `icingaweb2::config::dashboard` Manage a dashboard. @@ -3765,22 +4066,22 @@ icingaweb2::config::dashboard { 'icingaadmin-NewDashboard': The following parameters are available in the `icingaweb2::config::dashboard` defined type: -* [`owner`](#owner) -* [`dashboard`](#dashboard) +* [`owner`](#-icingaweb2--config--dashboard--owner) +* [`dashboard`](#-icingaweb2--config--dashboard--dashboard) -##### `owner` +##### `owner` Data type: `String` Owner of the dashboard. -##### `dashboard` +##### `dashboard` Data type: `String` Title of the dashboard. -### `icingaweb2::config::dashlet` +### `icingaweb2::config::dashlet` Manage a dashlet. @@ -3817,36 +4118,36 @@ icingaweb2::config::dashlet { 'icingaadmin-Overdue-NewDashlet': The following parameters are available in the `icingaweb2::config::dashlet` defined type: -* [`owner`](#owner) -* [`dashboard`](#dashboard) -* [`dashlet`](#dashlet) -* [`url`](#url) +* [`owner`](#-icingaweb2--config--dashlet--owner) +* [`dashboard`](#-icingaweb2--config--dashlet--dashboard) +* [`dashlet`](#-icingaweb2--config--dashlet--dashlet) +* [`url`](#-icingaweb2--config--dashlet--url) -##### `owner` +##### `owner` Data type: `String` Owner of the dashlet. -##### `dashboard` +##### `dashboard` Data type: `String` Dashboard to which the dashlet belongs. -##### `dashlet` +##### `dashlet` Data type: `String` Name of the dashlet. -##### `url` +##### `url` Data type: `String` URL of the dashlet. -### `icingaweb2::config::groupbackend` +### `icingaweb2::config::groupbackend` Groups of users can be stored either in a database, LDAP or ActiveDirectory. This defined type configures backends that store groups. @@ -3880,20 +4181,20 @@ icingaweb2::config::groupbackend { 'mysql-backend': The following parameters are available in the `icingaweb2::config::groupbackend` defined type: -* [`group_name`](#group_name) -* [`backend`](#backend) -* [`resource`](#resource) -* [`ldap_user_backend`](#ldap_user_backend) -* [`ldap_group_class`](#ldap_group_class) -* [`ldap_group_filter`](#ldap_group_filter) -* [`ldap_group_name_attribute`](#ldap_group_name_attribute) -* [`ldap_group_member_attribute`](#ldap_group_member_attribute) -* [`ldap_base_dn`](#ldap_base_dn) -* [`ldap_nested_group_search`](#ldap_nested_group_search) -* [`domain`](#domain) -* [`order`](#order) - -##### `group_name` +* [`group_name`](#-icingaweb2--config--groupbackend--group_name) +* [`backend`](#-icingaweb2--config--groupbackend--backend) +* [`resource`](#-icingaweb2--config--groupbackend--resource) +* [`ldap_user_backend`](#-icingaweb2--config--groupbackend--ldap_user_backend) +* [`ldap_group_class`](#-icingaweb2--config--groupbackend--ldap_group_class) +* [`ldap_group_filter`](#-icingaweb2--config--groupbackend--ldap_group_filter) +* [`ldap_group_name_attribute`](#-icingaweb2--config--groupbackend--ldap_group_name_attribute) +* [`ldap_group_member_attribute`](#-icingaweb2--config--groupbackend--ldap_group_member_attribute) +* [`ldap_base_dn`](#-icingaweb2--config--groupbackend--ldap_base_dn) +* [`ldap_nested_group_search`](#-icingaweb2--config--groupbackend--ldap_nested_group_search) +* [`domain`](#-icingaweb2--config--groupbackend--domain) +* [`order`](#-icingaweb2--config--groupbackend--order) + +##### `group_name` Data type: `String` @@ -3901,85 +4202,85 @@ Name of the resources. Resources are referenced by their name in other configura Default value: `$title` -##### `backend` +##### `backend` Data type: `Enum['db', 'ldap', 'msldap']` Type of backend. Valide values are: `db`, `ldap` and `msldap`. Each backend supports different settings, see the parameters for detailed information. -##### `resource` +##### `resource` Data type: `String` The resource used to connect to the backend. The resource contains connection information. -##### `ldap_user_backend` +##### `ldap_user_backend` Data type: `Optional[String]` A group backend can be connected with an authentication method. This parameter references the auth method. Only valid with backend `ldap` or `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_group_class` +##### `ldap_group_class` Data type: `Optional[String]` Class used to identify group objects. Only valid with backend `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_group_filter` +##### `ldap_group_filter` Data type: `Optional[String]` Use a LDAP filter to receive only certain groups. Only valid with backend `ldap` or `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_group_name_attribute` +##### `ldap_group_name_attribute` Data type: `Optional[String]` The group name attribute. Only valid with backend `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_group_member_attribute` +##### `ldap_group_member_attribute` Data type: `Optional[String]` The group member attribute. Only valid with backend `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_base_dn` +##### `ldap_base_dn` Data type: `Optional[String]` Base DN that is searched for groups. Only valid with backend `ldap` with `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_nested_group_search` +##### `ldap_nested_group_search` Data type: `Optional[Boolean]` Search for groups in groups. Only valid with backend `msldap`. -Default value: ``undef`` +Default value: `undef` -##### `domain` +##### `domain` Data type: `Optional[String]` Domain for domain-aware authentication. -Default value: ``undef`` +Default value: `undef` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -3988,7 +4289,7 @@ configuration determines the order of the authentication methods. Default value: `'01'` -### `icingaweb2::config::navigation` +### `icingaweb2::config::navigation` Navigate defines a menu entry, host- or service action. @@ -3996,19 +4297,19 @@ Navigate defines a menu entry, host- or service action. The following parameters are available in the `icingaweb2::config::navigation` defined type: -* [`item_name`](#item_name) -* [`owner`](#owner) -* [`type`](#type) -* [`shared`](#shared) -* [`users`](#users) -* [`groups`](#groups) -* [`parent`](#parent) -* [`target`](#target) -* [`url`](#url) -* [`icon`](#icon) -* [`filter`](#filter) +* [`item_name`](#-icingaweb2--config--navigation--item_name) +* [`owner`](#-icingaweb2--config--navigation--owner) +* [`type`](#-icingaweb2--config--navigation--type) +* [`shared`](#-icingaweb2--config--navigation--shared) +* [`users`](#-icingaweb2--config--navigation--users) +* [`groups`](#-icingaweb2--config--navigation--groups) +* [`parent`](#-icingaweb2--config--navigation--parent) +* [`target`](#-icingaweb2--config--navigation--target) +* [`url`](#-icingaweb2--config--navigation--url) +* [`icon`](#-icingaweb2--config--navigation--icon) +* [`filter`](#-icingaweb2--config--navigation--filter) -##### `item_name` +##### `item_name` Data type: `String` @@ -4016,58 +4317,62 @@ Name of the menu entry, host- or service action. Default value: `$title` -##### `owner` +##### `owner` Data type: `String` Owner of the navigation item. -##### `type` +##### `type` + +Data type: -Data type: `Enum[ +```puppet +Enum[ 'menu-item', 'host-action', 'service-action' - ]` + ] +``` Type of the navigation item. Default value: `'menu-item'` -##### `shared` +##### `shared` Data type: `Boolean` Creates a shared navigation item. -Default value: ``false`` +Default value: `false` -##### `users` +##### `users` Data type: `Optional[Array[String]]` List of users who have access to the element. Only valid if shared. -Default value: ``undef`` +Default value: `undef` -##### `groups` +##### `groups` Data type: `Optional[Array[String]]` List of user groups that have access to the element. Only valid if shared. -Default value: ``undef`` +Default value: `undef` -##### `parent` +##### `parent` Data type: `Optional[String]` The name of the a parent item. Only valid for menu entries. Important: `shared` has to set if the parent entry is also `shared`. -Default value: ``undef`` +Default value: `undef` -##### `target` +##### `target` Data type: `Enum['_blank', '_main']` @@ -4075,29 +4380,29 @@ The target to view the content. Default value: `'_main'` -##### `url` +##### `url` Data type: `String` Url to the content of the navigation item. -##### `icon` +##### `icon` Data type: `Optional[String]` Location of an icon for the navigation item. -Default value: ``undef`` +Default value: `undef` -##### `filter` +##### `filter` Data type: `Optional[String]` Filter to restrict the result of the content. Only valid for actions. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::config::resource` +### `icingaweb2::config::resource` Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. @@ -4134,22 +4439,22 @@ icingaweb2::config::resource{ 'my-ldap': The following parameters are available in the `icingaweb2::config::resource` defined type: -* [`resource_name`](#resource_name) -* [`type`](#type) -* [`host`](#host) -* [`port`](#port) -* [`db_type`](#db_type) -* [`db_name`](#db_name) -* [`db_username`](#db_username) -* [`db_password`](#db_password) -* [`db_charset`](#db_charset) -* [`ldap_root_dn`](#ldap_root_dn) -* [`ldap_bind_dn`](#ldap_bind_dn) -* [`ldap_bind_pw`](#ldap_bind_pw) -* [`ldap_encryption`](#ldap_encryption) -* [`ldap_timeout`](#ldap_timeout) - -##### `resource_name` +* [`resource_name`](#-icingaweb2--config--resource--resource_name) +* [`type`](#-icingaweb2--config--resource--type) +* [`host`](#-icingaweb2--config--resource--host) +* [`port`](#-icingaweb2--config--resource--port) +* [`db_type`](#-icingaweb2--config--resource--db_type) +* [`db_name`](#-icingaweb2--config--resource--db_name) +* [`db_username`](#-icingaweb2--config--resource--db_username) +* [`db_password`](#-icingaweb2--config--resource--db_password) +* [`db_charset`](#-icingaweb2--config--resource--db_charset) +* [`ldap_root_dn`](#-icingaweb2--config--resource--ldap_root_dn) +* [`ldap_bind_dn`](#-icingaweb2--config--resource--ldap_bind_dn) +* [`ldap_bind_pw`](#-icingaweb2--config--resource--ldap_bind_pw) +* [`ldap_encryption`](#-icingaweb2--config--resource--ldap_encryption) +* [`ldap_timeout`](#-icingaweb2--config--resource--ldap_timeout) + +##### `resource_name` Data type: `String` @@ -4157,13 +4462,13 @@ Name of the resources. Resources are referenced by their name in other configura Default value: `$title` -##### `type` +##### `type` Data type: `Enum['db', 'ldap']` Supported resource types are `db` and `ldap`. -##### `host` +##### `host` Data type: `Optional[String]` @@ -4171,82 +4476,86 @@ Connect to the database or ldap server on the given host. For using unix domain MySQL and the path to the unix domain socket directory for PostgreSQL. When using the 'ldap' type you can also provide multiple hosts separated by a space. -Default value: ``undef`` +Default value: `undef` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port]` Port number to use. -Default value: ``undef`` +Default value: `undef` -##### `db_type` +##### `db_type` -Data type: `Optional[Enum['mysql', 'pgsql', 'mssql', - 'oci', 'oracle', 'ibm', 'sqlite']]` +Data type: + +```puppet +Optional[Enum['mysql', 'pgsql', 'mssql', + 'oci', 'oracle', 'ibm', 'sqlite']] +``` Set database type to connect. -Default value: ``undef`` +Default value: `undef` -##### `db_name` +##### `db_name` Data type: `Optional[String]` The database to use. Only valid if `type` is `db`. -Default value: ``undef`` +Default value: `undef` -##### `db_username` +##### `db_username` Data type: `Optional[String]` The username to use when connecting to the server. Only valid if `type` is `db`. -Default value: ``undef`` +Default value: `undef` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` The password to use when connecting to the server. Only valid if `type` is `db`. -Default value: ``undef`` +Default value: `undef` -##### `db_charset` +##### `db_charset` Data type: `Optional[String]` The character set to use for the database connection. Only valid if `type` is `db`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_root_dn` +##### `ldap_root_dn` Data type: `Optional[String]` Root object of the tree, e.g. 'ou=people,dc=icinga,dc=com'. Only valid if `type` is `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_bind_dn` +##### `ldap_bind_dn` Data type: `Optional[String]` The user to use when connecting to the server. Only valid if `type` is `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_bind_pw` +##### `ldap_bind_pw` Data type: `Optional[Icingaweb2::Secret]` The password to use when connecting to the server. Only valid if `type` is `ldap`. -Default value: ``undef`` +Default value: `undef` -##### `ldap_encryption` +##### `ldap_encryption` Data type: `Enum['none', 'starttls', 'ldaps']` @@ -4254,7 +4563,7 @@ Type of encryption to use: none (default), starttls, ldaps. Only valid if `type` Default value: `'none'` -##### `ldap_timeout` +##### `ldap_timeout` Data type: `Integer` @@ -4262,7 +4571,7 @@ Timeout for the ldap connection. Default value: `5` -### `icingaweb2::config::role` +### `icingaweb2::config::role` Roles define a set of permissions that may be applied to users or groups. @@ -4331,16 +4640,16 @@ icingaweb2::config::role{'linux-user': The following parameters are available in the `icingaweb2::config::role` defined type: -* [`role_name`](#role_name) -* [`users`](#users) -* [`groups`](#groups) -* [`parent`](#parent) -* [`permissions`](#permissions) -* [`refusals`](#refusals) -* [`unrestricted`](#unrestricted) -* [`filters`](#filters) +* [`role_name`](#-icingaweb2--config--role--role_name) +* [`users`](#-icingaweb2--config--role--users) +* [`groups`](#-icingaweb2--config--role--groups) +* [`parent`](#-icingaweb2--config--role--parent) +* [`permissions`](#-icingaweb2--config--role--permissions) +* [`refusals`](#-icingaweb2--config--role--refusals) +* [`unrestricted`](#-icingaweb2--config--role--unrestricted) +* [`filters`](#-icingaweb2--config--role--filters) -##### `role_name` +##### `role_name` Data type: `String` @@ -4348,31 +4657,31 @@ Name of the role. Default value: `$title` -##### `users` +##### `users` Data type: `Optional[String]` Comma separated list of users this role applies to. -Default value: ``undef`` +Default value: `undef` -##### `groups` +##### `groups` Data type: `Optional[String]` Comma separated list of groups this role applies to. -Default value: ``undef`` +Default value: `undef` -##### `parent` +##### `parent` Data type: `Optional[String]` The name of the role from which to inherit privileges. -Default value: ``undef`` +Default value: `undef` -##### `permissions` +##### `permissions` Data type: `Optional[String]` @@ -4383,25 +4692,25 @@ Comma separated lsit of permissions. Each module may add it's own permissions. E - Allow scheduling checks: 'monitoring/command/schedule-checks' - Grant admin permissions: 'admin' -Default value: ``undef`` +Default value: `undef` -##### `refusals` +##### `refusals` Data type: `Optional[String]` Refusals are used to deny access. So they’re the exact opposite of permissions. -Default value: ``undef`` +Default value: `undef` -##### `unrestricted` +##### `unrestricted` Data type: `Optional[Boolean]` If set to `true`, owners of this role are not restricted in any way. -Default value: ``undef`` +Default value: `undef` -##### `filters` +##### `filters` Data type: `Hash` @@ -4415,7 +4724,7 @@ A string value is expected for each used key. For example: Default value: `{}` -### `icingaweb2::inisection` +### `icingaweb2::inisection` Manage settings in INI configuration files. @@ -4440,19 +4749,19 @@ icingaweb2::inisection { '/path/to/config.ini': The following parameters are available in the `icingaweb2::inisection` defined type: -* [`target`](#target) -* [`section_name`](#section_name) -* [`settings`](#settings) -* [`order`](#order) -* [`replace`](#replace) +* [`target`](#-icingaweb2--inisection--target) +* [`section_name`](#-icingaweb2--inisection--section_name) +* [`settings`](#-icingaweb2--inisection--settings) +* [`order`](#-icingaweb2--inisection--order) +* [`replace`](#-icingaweb2--inisection--replace) -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Absolute path to the configuration file. -##### `section_name` +##### `section_name` Data type: `String` @@ -4460,7 +4769,7 @@ Name of the target section. Settings are set under [$section_name] Default value: `$title` -##### `settings` +##### `settings` Data type: `Hash` @@ -4468,7 +4777,7 @@ A hash of settings and their settings. Single settings may be set to absent. Default value: `{}` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -4476,15 +4785,15 @@ Ordering of the INI section within a file. Defaults to `01` Default value: `'01'` -##### `replace` +##### `replace` Data type: `Boolean` Specifies whether to overwrite the destination file if it already exists. -Default value: ``true`` +Default value: `true` -### `icingaweb2::module` +### `icingaweb2::module` Download, enable and configure Icinga Web 2 modules. @@ -4520,16 +4829,16 @@ $settings = { The following parameters are available in the `icingaweb2::module` defined type: -* [`ensure`](#ensure) -* [`module`](#module) -* [`module_dir`](#module_dir) -* [`install_method`](#install_method) -* [`git_repository`](#git_repository) -* [`git_revision`](#git_revision) -* [`package_name`](#package_name) -* [`settings`](#settings) +* [`ensure`](#-icingaweb2--module--ensure) +* [`module`](#-icingaweb2--module--module) +* [`module_dir`](#-icingaweb2--module--module_dir) +* [`install_method`](#-icingaweb2--module--install_method) +* [`git_repository`](#-icingaweb2--module--git_repository) +* [`git_revision`](#-icingaweb2--module--git_revision) +* [`package_name`](#-icingaweb2--module--package_name) +* [`settings`](#-icingaweb2--module--settings) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -4537,7 +4846,7 @@ Enable or disable module. Default value: `'present'` -##### `module` +##### `module` Data type: `String` @@ -4545,7 +4854,7 @@ Name of the module. Default value: `$title` -##### `module_dir` +##### `module_dir` Data type: `Stdlib::Absolutepath` @@ -4553,7 +4862,7 @@ Target directory of the module. Defaults to first item of `module_path`. Default value: `"${icingaweb2::globals::default_module_path}/${title}"` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -4561,15 +4870,15 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `git_repository` +##### `git_repository` Data type: `Optional[String]` The git repository. This setting is only valid in combination with the installation method `git`. -Default value: ``undef`` +Default value: `undef` -##### `git_revision` +##### `git_revision` Data type: `String` @@ -4577,15 +4886,15 @@ Tag or branch of the git repository. This setting is only valid in combination w Default value: `'master'` -##### `package_name` +##### `package_name` Data type: `Optional[String]` Package name of the module. This setting is only valid in combination with the installation method `package`. -Default value: ``undef`` +Default value: `undef` -##### `settings` +##### `settings` Data type: `Hash` @@ -4594,7 +4903,7 @@ The `module_name` should be used as target directory for the configuration files Default value: `{}` -### `icingaweb2::resource::database` +### `icingaweb2::resource::database` Create and remove Icinga Web 2 database resources. @@ -4617,23 +4926,23 @@ icingaweb2::resource::database { 'mysql': The following parameters are available in the `icingaweb2::resource::database` defined type: -* [`resource_name`](#resource_name) -* [`type`](#type) -* [`host`](#host) -* [`port`](#port) -* [`database`](#database) -* [`username`](#username) -* [`password`](#password) -* [`charset`](#charset) -* [`use_tls`](#use_tls) -* [`tls_noverify`](#tls_noverify) -* [`tls_key`](#tls_key) -* [`tls_cert`](#tls_cert) -* [`tls_cacert`](#tls_cacert) -* [`tls_capath`](#tls_capath) -* [`tls_cipher`](#tls_cipher) - -##### `resource_name` +* [`resource_name`](#-icingaweb2--resource--database--resource_name) +* [`type`](#-icingaweb2--resource--database--type) +* [`host`](#-icingaweb2--resource--database--host) +* [`port`](#-icingaweb2--resource--database--port) +* [`database`](#-icingaweb2--resource--database--database) +* [`username`](#-icingaweb2--resource--database--username) +* [`password`](#-icingaweb2--resource--database--password) +* [`charset`](#-icingaweb2--resource--database--charset) +* [`use_tls`](#-icingaweb2--resource--database--use_tls) +* [`tls_noverify`](#-icingaweb2--resource--database--tls_noverify) +* [`tls_key`](#-icingaweb2--resource--database--tls_key) +* [`tls_cert`](#-icingaweb2--resource--database--tls_cert) +* [`tls_cacert`](#-icingaweb2--resource--database--tls_cacert) +* [`tls_capath`](#-icingaweb2--resource--database--tls_capath) +* [`tls_cipher`](#-icingaweb2--resource--database--tls_cipher) + +##### `resource_name` Data type: `String` @@ -4641,115 +4950,119 @@ Name of the resources. Resources are referenced by their name in other configura Default value: `$title` -##### `type` +##### `type` -Data type: `Enum['mysql', 'pgsql', 'mssql', - 'oci', 'oracle', 'ibm', 'sqlite']` +Data type: + +```puppet +Enum['mysql', 'pgsql', 'mssql', + 'oci', 'oracle', 'ibm', 'sqlite'] +``` Set database type to connect. -##### `host` +##### `host` Data type: `Stdlib::Host` Connect to the database on the given host. For using unix domain sockets, specify 'localhost' for MySQL and the path to the unix domain socket and the directory for PostgreSQL. -##### `port` +##### `port` Data type: `Stdlib::Port` Port number to use. -##### `database` +##### `database` Data type: `String` The database to use. -##### `username` +##### `username` Data type: `Optional[String]` The username to use when connecting to the server. -Default value: ``undef`` +Default value: `undef` -##### `password` +##### `password` Data type: `Optional[Icingaweb2::Secret]` The password to use when connecting the database. -Default value: ``undef`` +Default value: `undef` -##### `charset` +##### `charset` Data type: `Optional[String]` The character set to use for the database connection. -Default value: ``undef`` +Default value: `undef` -##### `use_tls` +##### `use_tls` Data type: `Optional[Boolean]` Either enable or disable TLS encryption to the database. Other TLS parameters are only affected if this is set to 'true'. -Default value: ``undef`` +Default value: `undef` -##### `tls_noverify` +##### `tls_noverify` Data type: `Optional[Boolean]` Disable validation of the server certificate. -Default value: ``undef`` +Default value: `undef` -##### `tls_key` +##### `tls_key` Data type: `Optional[Stdlib::Absolutepath]` Location of the private key for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cert` +##### `tls_cert` Data type: `Optional[Stdlib::Absolutepath]` Location of the certificate for client authentication. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_cacert` +##### `tls_cacert` Data type: `Optional[Stdlib::Absolutepath]` Location of the ca certificate. Only valid if tls is enabled. -Default value: ``undef`` +Default value: `undef` -##### `tls_capath` +##### `tls_capath` Data type: `Optional[Stdlib::Absolutepath]` The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format. Only available for the mysql database. -Default value: ``undef`` +Default value: `undef` -##### `tls_cipher` +##### `tls_cipher` Data type: `Optional[String]` Chipher to use for the encrypted database connection. -Default value: ``undef`` +Default value: `undef` -### `icingaweb2::resource::ldap` +### `icingaweb2::resource::ldap` Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. @@ -4771,16 +5084,16 @@ icingaweb2::resource::ldap{ 'my-ldap': The following parameters are available in the `icingaweb2::resource::ldap` defined type: -* [`resource_name`](#resource_name) -* [`host`](#host) -* [`port`](#port) -* [`root_dn`](#root_dn) -* [`bind_dn`](#bind_dn) -* [`bind_pw`](#bind_pw) -* [`encryption`](#encryption) -* [`timeout`](#timeout) +* [`resource_name`](#-icingaweb2--resource--ldap--resource_name) +* [`host`](#-icingaweb2--resource--ldap--host) +* [`port`](#-icingaweb2--resource--ldap--port) +* [`root_dn`](#-icingaweb2--resource--ldap--root_dn) +* [`bind_dn`](#-icingaweb2--resource--ldap--bind_dn) +* [`bind_pw`](#-icingaweb2--resource--ldap--bind_pw) +* [`encryption`](#-icingaweb2--resource--ldap--encryption) +* [`timeout`](#-icingaweb2--resource--ldap--timeout) -##### `resource_name` +##### `resource_name` Data type: `String` @@ -4788,7 +5101,7 @@ Name of the resources. Resources are referenced by their name in other configura Default value: `$title` -##### `host` +##### `host` Data type: `String` @@ -4798,39 +5111,39 @@ provide multiple hosts separated by a space. Default value: `'localhost'` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port]` Port number to use. -Default value: ``undef`` +Default value: `undef` -##### `root_dn` +##### `root_dn` Data type: `Optional[String]` Root object of the tree, e.g. 'ou=people,dc=icinga,dc=com'. -Default value: ``undef`` +Default value: `undef` -##### `bind_dn` +##### `bind_dn` Data type: `Optional[String]` The user to use when connecting to the server. -Default value: ``undef`` +Default value: `undef` -##### `bind_pw` +##### `bind_pw` Data type: `Optional[Icingaweb2::Secret]` The password to use when connecting to the server. -Default value: ``undef`` +Default value: `undef` -##### `encryption` +##### `encryption` Data type: `Enum['none', 'starttls', 'ldaps']` @@ -4838,7 +5151,7 @@ Type of encryption to use: none (default), starttls, ldaps. Default value: `'none'` -##### `timeout` +##### `timeout` Data type: `Integer` @@ -4848,7 +5161,7 @@ Default value: `5` ## Functions -### `icingaweb2::assert_module` +### `icingaweb2::assert_module` Type: Puppet Language @@ -4860,7 +5173,7 @@ The icingaweb2::assert_module function. Returns: `Any` none -### `icingaweb2::cert::files` +### `icingaweb2::cert::files` Type: Puppet Language @@ -4920,7 +5233,7 @@ Data type: `Optional[String]` -### `icingaweb2::db::connect` +### `icingaweb2::db::connect` Type: Puppet Language @@ -4942,14 +5255,18 @@ Returns: `String` Connection string to connect database. ##### `db` -Data type: `Struct[{ +Data type: + +```puppet +Struct[{ type => Enum['pgsql','mysql','mariadb'], host => Stdlib::Host, port => Stdlib::Port, name => String, user => String, pass => Optional[Icingaweb2::Secret], - }]` + }] +``` @@ -4965,7 +5282,7 @@ Data type: `Optional[Boolean]` -### `icingaweb2::unwrap` +### `icingaweb2::unwrap` Type: Puppet Language @@ -4985,7 +5302,7 @@ Data type: `Optional[Variant[String, Sensitive[String]]]` ## Data types -### `Icingaweb2::AdminRole` +### `Icingaweb2::AdminRole` A strict type for the default admin role @@ -4999,13 +5316,9 @@ Struct[{ }] ``` -### `Icingaweb2::Secret` +### `Icingaweb2::Secret` A strict type for the secrets like passwords or keys -Alias of - -```puppet -Variant[String, Sensitive[String]] -``` +Alias of `Variant[String, Sensitive[String]]` diff --git a/manifests/module/x509.pp b/manifests/module/x509.pp index e6b37a78..b74296d9 100644 --- a/manifests/module/x509.pp +++ b/manifests/module/x509.pp @@ -76,8 +76,6 @@ # both means true. With mariadb its cli options are used for the import, # whereas with mysql its different options. # -# @param -# # @example # class { 'icingaweb2::module::x509': # ensure => present, diff --git a/metadata.json b/metadata.json index e44d4bbb..00cb8fbd 100644 --- a/metadata.json +++ b/metadata.json @@ -1,6 +1,6 @@ { "name": "icinga-icingaweb2", - "version": "3.8.0", + "version": "3.9.0", "author": "Icinga Team", "summary": "Icinga Web 2 Puppet Module", "license": "Apache-2.0", @@ -70,7 +70,6 @@ { "operatingsystem": "Ubuntu", "operatingsystemrelease": [ - "18.04", "20.04", "22.04" ]