diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e85249c..7665bd93 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## [v3.4.1](https://github.com/icinga/puppet-icingaweb2/tree/v3.4.1) (2022-07-26) +[Full Changelog](https://github.com/icinga/puppet-icingaweb2/compare/v3.4.0...v3.4.1) + +**Fixed bugs:** + +- Fix missing comma in join of admin role users [\#324](https://github.com/Icinga/puppet-icingaweb2/issues/324) +- Fix limitations in the documentation [\#320](https://github.com/Icinga/puppet-icingaweb2/issues/320) + ## [v3.4.0](https://github.com/icinga/puppet-icingaweb2/tree/v3.4.0) (2022-05-10) [Full Changelog](https://github.com/icinga/puppet-icingaweb2/compare/v3.3.0...v3.4.0) diff --git a/REFERENCE.md b/REFERENCE.md index cf34a9d5..226d30ab 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -59,7 +59,7 @@ that store groups. ### Functions -* [`icingaweb2::unwrap`](#icingaweb2unwrap) +* [`icingaweb2::unwrap`](#icingaweb2unwrap): This function returns an unwrap string if necessary. ### Data types @@ -68,7 +68,7 @@ that store groups. ## Classes -### `icingaweb2` +### `icingaweb2` Installs and configures Icinga Web 2. @@ -122,9 +122,38 @@ class {'icingaweb2': #### Parameters -The following parameters are available in the `icingaweb2` class. - -##### `logging` +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) +* [`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) + +##### `logging` Data type: `Enum['file', 'syslog', 'php', 'none']` @@ -132,13 +161,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']` @@ -146,7 +175,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]/]` @@ -154,7 +183,7 @@ Logging facility when using syslog. Possible values are 'user' or 'local0' up to Default value: `'user'` -##### `logging_application` +##### `logging_application` Data type: `String` @@ -162,7 +191,7 @@ Logging application name when using syslog. Default value: `'icingaweb2'` -##### `show_stacktraces` +##### `show_stacktraces` Data type: `Boolean` @@ -170,7 +199,7 @@ Whether to display stacktraces in the web interface or not. Default value: ``false`` -##### `module_path` +##### `module_path` Data type: `Optional[Variant[ Stdlib::Absolutepath, @@ -180,7 +209,7 @@ Additional path to module sources. Multiple paths must be separated by colon. Default value: ``undef`` -##### `theme` +##### `theme` Data type: `String` @@ -188,7 +217,7 @@ The default theme setting. Users may override this settings. Default value: `'Icinga'` -##### `theme_disabled` +##### `theme_disabled` Data type: `Boolean` @@ -196,7 +225,7 @@ Whether users can change themes or not. Default value: ``false`` -##### `manage_repo` +##### `manage_repo` Data type: `Boolean` @@ -204,7 +233,7 @@ Deprecated, use manage_repos. Default value: ``false`` -##### `manage_repos` +##### `manage_repos` Data type: `Boolean` @@ -214,7 +243,7 @@ For more information, see http://github.com/icinga/puppet-icinga. Default value: ``false`` -##### `manage_package` +##### `manage_package` Data type: `Boolean` @@ -222,7 +251,7 @@ If set to `false` packages aren't managed. Default value: ``true`` -##### `extra_packages` +##### `extra_packages` Data type: `Optional[Array[String]]` @@ -230,7 +259,7 @@ An array of packages to install additionally. Default value: ``undef`` -##### `import_schema` +##### `import_schema` Data type: `Boolean` @@ -238,7 +267,7 @@ Import database scheme. Make sure you have an existing database if you use this Default value: ``false`` -##### `db_type` +##### `db_type` Data type: `Enum['mysql', 'pgsql']` @@ -247,7 +276,7 @@ Database type, can be either `mysql` or `pgsql`. This parameter is only used if Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Stdlib::Host` @@ -256,7 +285,7 @@ Database hostname. This parameter is only used if `import_schema` is `true` or Default value: `'localhost'` -##### `db_port` +##### `db_port` Data type: `Stdlib::Port` @@ -265,7 +294,7 @@ Port of database host. This parameter is only used if `import_schema` is `true` Default value: `3306` -##### `db_name` +##### `db_name` Data type: `String` @@ -274,7 +303,7 @@ Database name. This parameter is only used if `import_schema` is `true` or Default value: `'icingaweb2'` -##### `db_username` +##### `db_username` Data type: `Optional[String]` @@ -283,7 +312,7 @@ Username for database access. This parameter is only used if `import_schema` is Default value: ``undef`` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -292,7 +321,7 @@ Password for database access. This parameter is only used if `import_schema` is Default value: ``undef`` -##### `config_backend` +##### `config_backend` Data type: `Enum['ini', 'db']` @@ -301,20 +330,20 @@ 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]` @@ -322,7 +351,7 @@ When using domain-aware authentication, you can set a default domain here. Default value: ``undef`` -##### `cookie_path` +##### `cookie_path` Data type: `Optional[Stdlib::Absolutepath]` @@ -330,27 +359,27 @@ Path to where cookies are stored. 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. -### `icingaweb2::globals` +### `icingaweb2::globals` This class loads the default parameters by doing a hiera lookup. @@ -358,57 +387,66 @@ This class loads the default parameters by doing a hiera lookup. #### Parameters -The following parameters are available in the `icingaweb2::globals` class. +The following parameters are available in the `icingaweb2::globals` class: + +* [`package_name`](#package_name) +* [`conf_dir`](#conf_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) +* [`gettext_package_name`](#gettext_package_name) +* [`icingacli_bin`](#icingacli_bin) -##### `package_name` +##### `package_name` Data type: `String` -##### `conf_dir` +##### `conf_dir` Data type: `Stdlib::Absolutepath` -##### `default_module_path` +##### `default_module_path` Data type: `Stdlib::Absolutepath` -##### `mysql_db_schema` +##### `mysql_db_schema` Data type: `Stdlib::Absolutepath` -##### `pgsql_db_schema` +##### `pgsql_db_schema` Data type: `Stdlib::Absolutepath` -##### `mysql_vspheredb_schema` +##### `mysql_vspheredb_schema` Data type: `Stdlib::Absolutepath` -##### `gettext_package_name` +##### `gettext_package_name` Data type: `String` -##### `icingacli_bin` +##### `icingacli_bin` Data type: `Stdlib::Absolutepath` -### `icingaweb2::module::businessprocess` +### `icingaweb2::module::businessprocess` Installs and enables the businessprocess module. @@ -426,9 +464,16 @@ class { 'icingaweb2::module::businessprocess': #### Parameters -The following parameters are available in the `icingaweb2::module::businessprocess` class. +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` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -436,7 +481,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -444,7 +489,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -452,7 +497,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-businessprocess.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -460,7 +505,7 @@ Set either a branch or a tag name, eg. `master` or `v2.1.0`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -468,7 +513,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -476,7 +521,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. @@ -494,9 +539,16 @@ class { 'icingaweb2::module::cube': #### Parameters -The following parameters are available in the `icingaweb2::module::cube` class. +The following parameters are available in the `icingaweb2::module::cube` class: -##### `ensure` +* [`ensure`](#ensure) +* [`module_dir`](#module_dir) +* [`git_repository`](#git_repository) +* [`git_revision`](#git_revision) +* [`install_method`](#install_method) +* [`package_name`](#package_name) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -504,7 +556,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -512,7 +564,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -520,7 +572,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-cube.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -528,7 +580,7 @@ Set either a branch or a tag name, eg. `master` or `v1.0.0`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -536,7 +588,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -544,7 +596,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. @@ -572,9 +624,30 @@ class { 'icingaweb2::module::director': #### Parameters -The following parameters are available in the `icingaweb2::module::director` class. - -##### `ensure` +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) +* [`import_schema`](#import_schema) +* [`kickstart`](#kickstart) +* [`endpoint`](#endpoint) +* [`api_host`](#api_host) +* [`api_port`](#api_port) +* [`api_username`](#api_username) +* [`api_password`](#api_password) +* [`db_charset`](#db_charset) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -582,7 +655,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -590,7 +663,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -598,7 +671,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-director.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -606,7 +679,7 @@ Set either a branch or a tag name, eg. `master` or `v1.3.2`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'package', 'none']` @@ -614,7 +687,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -622,7 +695,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']` @@ -630,7 +703,7 @@ Type of your database. Either `mysql` or `pgsql`. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Optional[Stdlib::Host]` @@ -638,7 +711,7 @@ Hostname of the database. Default value: ``undef`` -##### `db_port` +##### `db_port` Data type: `Optional[Stdlib::Port]` @@ -646,7 +719,7 @@ Port of the database. Default value: ``undef`` -##### `db_name` +##### `db_name` Data type: `Optional[String]` @@ -654,7 +727,7 @@ Name of the database. Default value: ``undef`` -##### `db_username` +##### `db_username` Data type: `Optional[String]` @@ -662,7 +735,7 @@ Username for DB connection. Default value: ``undef`` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -670,7 +743,7 @@ Password for DB connection. Default value: ``undef`` -##### `import_schema` +##### `import_schema` Data type: `Boolean` @@ -678,7 +751,7 @@ Import database schema. Default value: ``false`` -##### `kickstart` +##### `kickstart` Data type: `Boolean` @@ -686,7 +759,7 @@ Run kickstart command after database migration. This requires `import_schema` to Default value: ``false`` -##### `endpoint` +##### `endpoint` Data type: `Optional[String]` @@ -694,7 +767,7 @@ Endpoint object name of Icinga 2 API. This setting is only valid if `kickstart` Default value: ``undef`` -##### `api_host` +##### `api_host` Data type: `Stdlib::Host` @@ -702,7 +775,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` @@ -710,7 +783,7 @@ Icinga 2 API port. This setting is only valid if `kickstart` is `true`. Default value: `5665` -##### `api_username` +##### `api_username` Data type: `Optional[String]` @@ -718,7 +791,7 @@ Icinga 2 API username. This setting is only valid if `kickstart` is `true`. Default value: ``undef`` -##### `api_password` +##### `api_password` Data type: `Optional[Icingaweb2::Secret]` @@ -726,7 +799,7 @@ Icinga 2 API password. This setting is only valid if `kickstart` is `true`. Default value: ``undef`` -##### `db_charset` +##### `db_charset` Data type: `Optional[String]` @@ -734,7 +807,7 @@ Data type: `Optional[String]` Default value: `'utf8'` -### `icingaweb2::module::director::service` +### `icingaweb2::module::director::service` Installs and configures the director service. @@ -742,9 +815,15 @@ Installs and configures the director service. #### Parameters -The following parameters are available in the `icingaweb2::module::director::service` class. +The following parameters are available in the `icingaweb2::module::director::service` class: -##### `ensure` +* [`ensure`](#ensure) +* [`enable`](#enable) +* [`user`](#user) +* [`group`](#group) +* [`manage_user`](#manage_user) + +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -752,7 +831,7 @@ Whether the director service should be running. Default value: `'running'` -##### `enable` +##### `enable` Data type: `Boolean` @@ -760,7 +839,7 @@ Enable or disable the service. Default value: ``true`` -##### `user` +##### `user` Data type: `String` @@ -769,7 +848,7 @@ install_method package is not used. Default value: `'icingadirector'` -##### `group` +##### `group` Data type: `String` @@ -778,7 +857,7 @@ Specifies primary group for user to run director service daemon. Default value: `'icingaweb2'` -##### `manage_user` +##### `manage_user` Data type: `Boolean` @@ -787,15 +866,17 @@ install_method package is not used. Default value: ``true`` -### `icingaweb2::module::doc` +### `icingaweb2::module::doc` The doc module provides an interface to the Icinga 2 and Icinga Web 2 documentation. #### Parameters -The following parameters are available in the `icingaweb2::module::doc` class. +The following parameters are available in the `icingaweb2::module::doc` class: + +* [`ensure`](#ensure) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -803,7 +884,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. @@ -836,9 +917,18 @@ class { 'icingaweb2::module::elasticsearch': #### Parameters -The following parameters are available in the `icingaweb2::module::elasticsearch` class. +The following parameters are available in the `icingaweb2::module::elasticsearch` class: -##### `ensure` +* [`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` Data type: `Enum['absent', 'present']` @@ -846,7 +936,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -854,7 +944,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -862,7 +952,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']` @@ -870,7 +960,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -878,7 +968,7 @@ 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]` @@ -886,7 +976,7 @@ Set either a branch or a tag name, eg. `master` or `v1.3.2`. Default value: ``undef`` -##### `instances` +##### `instances` Data type: `Optional[Hash]` @@ -895,7 +985,7 @@ A hash that configures one or more Elasticsearch instances that this module conn Default value: ``undef`` -##### `eventtypes` +##### `eventtypes` Data type: `Optional[Hash]` @@ -904,7 +994,7 @@ A hash oft ypes of events that should be displayed. Event types are always conne Default value: ``undef`` -### `icingaweb2::module::fileshipper` +### `icingaweb2::module::fileshipper` @example: class { 'icingaweb2::module::fileshipper': @@ -924,9 +1014,18 @@ Default value: ``undef`` #### Parameters -The following parameters are available in the `icingaweb2::module::fileshipper` class. +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` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -934,7 +1033,7 @@ Enables or disables module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -942,7 +1041,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -950,7 +1049,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']` @@ -958,7 +1057,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -966,7 +1065,7 @@ 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]` @@ -974,7 +1073,7 @@ Set either a branch or a tag name, eg. `master` or `v1.3.2`. Default value: ``undef`` -##### `base_directories` +##### `base_directories` Data type: `Hash` @@ -982,7 +1081,7 @@ Hash of base directories. These directories can later be selected in the import Default value: `{}` -##### `directories` +##### `directories` Data type: `Hash` @@ -990,7 +1089,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. @@ -1014,9 +1113,17 @@ class { 'icingaweb2::module::generictts': #### Parameters -The following parameters are available in the `icingaweb2::module::generictts` class. +The following parameters are available in the `icingaweb2::module::generictts` class: -##### `ensure` +* [`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` Data type: `Enum['absent', 'present']` @@ -1024,7 +1131,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1032,7 +1139,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1040,7 +1147,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-generictts.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -1048,7 +1155,7 @@ Set either a branch or a tag name, eg. `master` or `v2.0.0`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1056,7 +1163,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1064,7 +1171,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` @@ -1074,7 +1181,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. @@ -1093,9 +1200,21 @@ class { 'icingaweb2::module::graphite': #### Parameters -The following parameters are available in the `icingaweb2::module::graphite` class. +The following parameters are available in the `icingaweb2::module::graphite` class: + +* [`ensure`](#ensure) +* [`module_dir`](#module_dir) +* [`git_repository`](#git_repository) +* [`install_method`](#install_method) +* [`package_name`](#package_name) +* [`url`](#url) +* [`user`](#user) +* [`password`](#password) +* [`graphite_writer_host_name_template`](#graphite_writer_host_name_template) +* [`graphite_writer_service_name_template`](#graphite_writer_service_name_template) +* [`git_revision`](#git_revision) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1103,7 +1222,7 @@ Enables or disables module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1111,7 +1230,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1119,7 +1238,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-graphite.git'` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1127,7 +1246,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1135,7 +1254,7 @@ 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]` @@ -1143,7 +1262,7 @@ URL to your Graphite Web/API. Default value: ``undef`` -##### `user` +##### `user` Data type: `Optional[String]` @@ -1151,7 +1270,7 @@ A user with access to your Graphite Web via HTTP basic authentication. Default value: ``undef`` -##### `password` +##### `password` Data type: `Optional[Icingaweb2::Secret]` @@ -1159,7 +1278,7 @@ The users password. Default value: ``undef`` -##### `graphite_writer_host_name_template` +##### `graphite_writer_host_name_template` Data type: `Optional[String]` @@ -1167,7 +1286,7 @@ The value of your Icinga 2 GraphiteWriter's attribute `host_name_template` (if s Default value: ``undef`` -##### `graphite_writer_service_name_template` +##### `graphite_writer_service_name_template` Data type: `Optional[String]` @@ -1175,7 +1294,7 @@ The value of your icinga 2 GraphiteWriter's attribute `service_name_template` (i Default value: ``undef`` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -1183,7 +1302,7 @@ Data type: `Optional[String]` Default value: ``undef`` -### `icingaweb2::module::incubator` +### `icingaweb2::module::incubator` Installs and enables the incubator module. @@ -1191,9 +1310,14 @@ Installs and enables the incubator module. #### Parameters -The following parameters are available in the `icingaweb2::module::incubator` class. +The following parameters are available in the `icingaweb2::module::incubator` class: -##### `ensure` +* [`ensure`](#ensure) +* [`module_dir`](#module_dir) +* [`git_repository`](#git_repository) +* [`git_revision`](#git_revision) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1201,7 +1325,7 @@ Enable or disable module. Defaults to `present` Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1209,19 +1333,19 @@ Target directory of the module. 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. @@ -1229,9 +1353,14 @@ Installs and enables the ipl module. #### Parameters -The following parameters are available in the `icingaweb2::module::ipl` class. +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` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1239,7 +1368,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1247,19 +1376,19 @@ Target directory of the module. 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) @@ -1292,9 +1421,20 @@ Requirements: #### Parameters -The following parameters are available in the `icingaweb2::module::monitoring` class. +The following parameters are available in the `icingaweb2::module::monitoring` class: -##### `ensure` +* [`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) +* [`commandtransports`](#commandtransports) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1302,7 +1442,7 @@ Enable or disable module. Default value: `'present'` -##### `protected_customvars` +##### `protected_customvars` Data type: `Variant[String, Array[String]]` @@ -1311,7 +1451,7 @@ that should be hidden in the web interface. Default value: `['*pw*', '*pass*', 'community']` -##### `ido_type` +##### `ido_type` Data type: `Enum['mysql', 'pgsql']` @@ -1319,7 +1459,7 @@ Type of your IDO database. Either `mysql` or `pgsql`. Default value: `'mysql'` -##### `ido_host` +##### `ido_host` Data type: `Optional[Stdlib::Host]` @@ -1327,7 +1467,7 @@ Hostname of the IDO database. Default value: ``undef`` -##### `ido_port` +##### `ido_port` Data type: `Stdlib::Port` @@ -1335,7 +1475,7 @@ Port of the IDO database. Default value: `3306` -##### `ido_db_name` +##### `ido_db_name` Data type: `Optional[String]` @@ -1343,7 +1483,7 @@ Name of the IDO database. Default value: ``undef`` -##### `ido_db_username` +##### `ido_db_username` Data type: `Optional[String]` @@ -1351,7 +1491,7 @@ Username for IDO DB connection. Default value: ``undef`` -##### `ido_db_password` +##### `ido_db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -1359,7 +1499,7 @@ Password for IDO DB connection. Default value: ``undef`` -##### `ido_db_charset` +##### `ido_db_charset` Data type: `Optional[String]` @@ -1367,7 +1507,7 @@ The character set to use for the database connection. Default value: ``undef`` -##### `commandtransports` +##### `commandtransports` Data type: `Hash` @@ -1375,7 +1515,7 @@ A hash of command transports. Default value: `{}` -### `icingaweb2::module::pdfexport` +### `icingaweb2::module::pdfexport` Installs, configures and enables the pdfexport module. @@ -1394,9 +1534,17 @@ class { 'icingaweb2::module::pdfexport': #### Parameters -The following parameters are available in the `icingaweb2::module::pdfexport` class. +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) -##### `ensure` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1404,7 +1552,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1412,7 +1560,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1420,7 +1568,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-pdfexport.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -1428,7 +1576,7 @@ Set either a branch or a tag name, eg. `master` or `v2.1.0`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1436,7 +1584,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1444,7 +1592,7 @@ 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]` @@ -1452,7 +1600,7 @@ Path of the chrome or chromium binary. Default value: ``undef`` -### `icingaweb2::module::puppetdb` +### `icingaweb2::module::puppetdb` Installs and configures the puppetdb module. @@ -1493,9 +1641,19 @@ class {'::icingaweb2::module::puppetdb': #### Parameters -The following parameters are available in the `icingaweb2::module::puppetdb` class. +The following parameters are available in the `icingaweb2::module::puppetdb` class: -##### `ensure` +* [`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` Data type: `Enum['absent', 'present']` @@ -1503,7 +1661,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1511,7 +1669,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1519,7 +1677,7 @@ Set a git repository URL. Default value: `'https://github.com/Icinga/icingaweb2-module-puppetdb.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -1527,7 +1685,7 @@ Set either a branch or a tag name, eg. `master` or `v1.3.2`. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1535,7 +1693,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1543,7 +1701,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']` @@ -1551,7 +1709,7 @@ How to set up ssl certificates. To copy certificates from the local puppet insta Default value: `'none'` -##### `host` +##### `host` Data type: `Optional[Stdlib::Host]` @@ -1559,7 +1717,7 @@ Hostname of the server where PuppetDB is running. The `ssl` parameter needs to b Default value: ``undef`` -##### `certificates` +##### `certificates` Data type: `Hash` @@ -1567,7 +1725,7 @@ Hash with icingaweb2::module::puppetdb::certificate resources. Default value: `{}` -### `icingaweb2::module::reactbundle` +### `icingaweb2::module::reactbundle` Installs and enables the reactbundle module. @@ -1575,9 +1733,14 @@ Installs and enables the reactbundle module. #### Parameters -The following parameters are available in the `icingaweb2::module::reactbundle` class. +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` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1585,7 +1748,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1593,27 +1756,29 @@ Target directory of the module. 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::translation` +### `icingaweb2::module::translation` Installs and configures the translation module. #### Parameters -The following parameters are available in the `icingaweb2::module::translation` class. +The following parameters are available in the `icingaweb2::module::translation` class: -##### `ensure` +* [`ensure`](#ensure) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1621,7 +1786,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. @@ -1629,9 +1794,16 @@ The vSphere module extends the Director. It provides import sources for virtual #### Parameters -The following parameters are available in the `icingaweb2::module::vsphere` class. +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` +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1639,7 +1811,7 @@ Enable or disable module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1647,7 +1819,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1655,7 +1827,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']` @@ -1663,7 +1835,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1671,7 +1843,7 @@ 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]` @@ -1679,7 +1851,7 @@ Set either a branch or a tag name, eg. `stable/0.7.0` or `v0.7.0`. Default value: ``undef`` -### `icingaweb2::module::vspheredb` +### `icingaweb2::module::vspheredb` Installs the vsphereDB plugin @@ -1700,9 +1872,24 @@ class { 'icingaweb2::module::vspheredb': #### Parameters -The following parameters are available in the `icingaweb2::module::vspheredb` class. - -##### `ensure` +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) +* [`import_schema`](#import_schema) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -1710,7 +1897,7 @@ Ensur es the state of the vspheredb module. Default value: `'present'` -##### `module_dir` +##### `module_dir` Data type: `Optional[Stdlib::Absolutepath]` @@ -1718,7 +1905,7 @@ Target directory of the module. Default value: ``undef`` -##### `git_repository` +##### `git_repository` Data type: `String` @@ -1726,7 +1913,7 @@ The upstream module repository. Default value: `'https://github.com/Icinga/icingaweb2-module-vspheredb.git'` -##### `git_revision` +##### `git_revision` Data type: `Optional[String]` @@ -1734,7 +1921,7 @@ The version of the module that needs to be used. Default value: ``undef`` -##### `install_method` +##### `install_method` Data type: `Enum['git', 'none', 'package']` @@ -1742,7 +1929,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `package_name` +##### `package_name` Data type: `String` @@ -1750,7 +1937,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']` @@ -1758,7 +1945,7 @@ The database type. Either mysql or postgres. Default value: `'mysql'` -##### `db_host` +##### `db_host` Data type: `Optional[Stdlib::Host]` @@ -1766,7 +1953,7 @@ The host where the vspheredb-database will be running Default value: ``undef`` -##### `db_port` +##### `db_port` Data type: `Stdlib::Port` @@ -1774,7 +1961,7 @@ The port on which the database is accessible. Default value: `3306` -##### `db_name` +##### `db_name` Data type: `Optional[String]` @@ -1782,7 +1969,7 @@ The name of the database this module should use. Default value: ``undef`` -##### `db_username` +##### `db_username` Data type: `Optional[String]` @@ -1790,7 +1977,7 @@ The username needed to access the database. Default value: ``undef`` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -1798,7 +1985,7 @@ The password needed to access the database. Default value: ``undef`` -##### `db_charset` +##### `db_charset` Data type: `String` @@ -1806,7 +1993,7 @@ The charset the database is set to. Default value: `'utf8mb4'` -##### `import_schema` +##### `import_schema` Data type: `Boolean` @@ -1814,7 +2001,7 @@ Whether to import the database schema or not. Default value: ``false`` -### `icingaweb2::module::vspheredb::service` +### `icingaweb2::module::vspheredb::service` Installs and configures the vspheredb service. @@ -1830,9 +2017,15 @@ include icingaweb2::module::vspheredb::service #### Parameters -The following parameters are available in the `icingaweb2::module::vspheredb::service` class. +The following parameters are available in the `icingaweb2::module::vspheredb::service` class: -##### `ensure` +* [`ensure`](#ensure) +* [`enable`](#enable) +* [`user`](#user) +* [`group`](#group) +* [`manage_user`](#manage_user) + +##### `ensure` Data type: `Stdlib::Ensure::Service` @@ -1840,7 +2033,7 @@ Whether the vspheredb service should be running. Default value: `'running'` -##### `enable` +##### `enable` Data type: `Boolean` @@ -1848,7 +2041,7 @@ Enable or disable the service. Default value: ``true`` -##### `user` +##### `user` Data type: `String` @@ -1857,7 +2050,7 @@ Only available if install_method package is not used. Default value: `'icingavspheredb'` -##### `group` +##### `group` Data type: `String` @@ -1866,7 +2059,7 @@ Only available if install_method package is not used. Default value: `'icingaweb2'` -##### `manage_user` +##### `manage_user` Data type: `Boolean` @@ -1877,7 +2070,7 @@ 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. @@ -1908,9 +2101,18 @@ icingaweb2::config::authmethod { 'ldap-auth': #### Parameters -The following parameters are available in the `icingaweb2::config::authmethod` defined type. +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` +##### `backend` Data type: `Enum['external', 'ldap', 'msldap', 'db']` @@ -1918,7 +2120,7 @@ Select between 'external', 'ldap', 'msldap' or 'db'. Each backend may require ot Default value: ``undef`` -##### `resource` +##### `resource` Data type: `Optional[String]` @@ -1926,7 +2128,7 @@ The name of the resource defined in resources.ini. Default value: ``undef`` -##### `ldap_user_class` +##### `ldap_user_class` Data type: `Optional[String]` @@ -1934,7 +2136,7 @@ LDAP user class. Only valid if `backend` is `ldap` or `msldap`. Default value: ``undef`` -##### `ldap_user_name_attribute` +##### `ldap_user_name_attribute` Data type: `Optional[String]` @@ -1942,7 +2144,7 @@ LDAP attribute which contains the username. Only valid if `backend` is `ldap` or Default value: ``undef`` -##### `ldap_filter` +##### `ldap_filter` Data type: `Optional[String]` @@ -1950,7 +2152,7 @@ LDAP search filter. Only valid if `backend` is `ldap` or `msladap`. Default value: ``undef`` -##### `ldap_base_dn` +##### `ldap_base_dn` Data type: `Optional[String]` @@ -1958,7 +2160,7 @@ LDAP base DN. Only valid if `backend` is `ldap` or `msldap`. Default value: ``undef`` -##### `domain` +##### `domain` Data type: `Optional[String]` @@ -1966,7 +2168,7 @@ Domain for domain-aware authentication Default value: ``undef`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -1975,7 +2177,7 @@ configuration determines the order of the authentication methods. Default value: `'01'` -### `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. @@ -2007,9 +2209,22 @@ icingaweb2::config::groupbackend { 'mysql-backend': #### Parameters -The following parameters are available in the `icingaweb2::config::groupbackend` defined type. +The following parameters are available in the `icingaweb2::config::groupbackend` defined type: -##### `group_name` +* [`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` Data type: `String` @@ -2017,7 +2232,7 @@ Name of the resources. Resources are referenced by their name in other configura Default value: `$title` -##### `backend` +##### `backend` Data type: `Enum['db', 'ldap', 'msldap']` @@ -2026,7 +2241,7 @@ see the parameters for detailed information. Default value: ``undef`` -##### `resource` +##### `resource` Data type: `String` @@ -2034,7 +2249,7 @@ The resource used to connect to the backend. The resource contains connection in Default value: ``undef`` -##### `ldap_user_backend` +##### `ldap_user_backend` Data type: `Optional[String]` @@ -2043,7 +2258,7 @@ Only valid with backend `ldap` or `msldap`. Default value: ``undef`` -##### `ldap_group_class` +##### `ldap_group_class` Data type: `Optional[String]` @@ -2051,7 +2266,7 @@ Class used to identify group objects. Only valid with backend `ldap`. Default value: ``undef`` -##### `ldap_group_filter` +##### `ldap_group_filter` Data type: `Optional[String]` @@ -2059,7 +2274,7 @@ Use a LDAP filter to receive only certain groups. Only valid with backend `ldap` Default value: ``undef`` -##### `ldap_group_name_attribute` +##### `ldap_group_name_attribute` Data type: `Optional[String]` @@ -2067,7 +2282,7 @@ The group name attribute. Only valid with backend `ldap`. Default value: ``undef`` -##### `ldap_group_member_attribute` +##### `ldap_group_member_attribute` Data type: `Optional[String]` @@ -2075,7 +2290,7 @@ The group member attribute. Only valid with backend `ldap`. Default value: ``undef`` -##### `ldap_base_dn` +##### `ldap_base_dn` Data type: `Optional[String]` @@ -2083,7 +2298,7 @@ Base DN that is searched for groups. Only valid with backend `ldap` with `msldap Default value: ``undef`` -##### `ldap_nested_group_search` +##### `ldap_nested_group_search` Data type: `Optional[Boolean]` @@ -2091,7 +2306,7 @@ Search for groups in groups. Only valid with backend `msldap`. Default value: ``undef`` -##### `domain` +##### `domain` Data type: `Optional[String]` @@ -2099,7 +2314,7 @@ Domain for domain-aware authentication. Default value: ``undef`` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2108,7 +2323,7 @@ configuration determines the order of the authentication methods. Default value: `'01'` -### `icingaweb2::config::resource` +### `icingaweb2::config::resource` Create and remove Icinga Web 2 resources. Resources may be referenced in other configuration sections. @@ -2143,9 +2358,24 @@ icingaweb2::config::resource{ 'my-ldap': #### Parameters -The following parameters are available in the `icingaweb2::config::resource` defined type. - -##### `resource_name` +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` Data type: `String` @@ -2153,13 +2383,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]` @@ -2169,7 +2399,7 @@ provide multiple hosts separated by a space. Default value: ``undef`` -##### `port` +##### `port` Data type: `Optional[Stdlib::Port]` @@ -2177,7 +2407,7 @@ Port number to use. Default value: ``undef`` -##### `db_type` +##### `db_type` Data type: `Optional[Enum['mysql', 'pgsql', 'mssql', 'oci', 'oracle', 'ibm', 'sqlite']]` @@ -2186,7 +2416,7 @@ Set database type to connect. Default value: ``undef`` -##### `db_name` +##### `db_name` Data type: `Optional[String]` @@ -2194,7 +2424,7 @@ The database to use. Only valid if `type` is `db`. Default value: ``undef`` -##### `db_username` +##### `db_username` Data type: `Optional[String]` @@ -2202,7 +2432,7 @@ The username to use when connecting to the server. Only valid if `type` is `db`. Default value: ``undef`` -##### `db_password` +##### `db_password` Data type: `Optional[Icingaweb2::Secret]` @@ -2210,7 +2440,7 @@ The password to use when connecting to the server. Only valid if `type` is `db`. Default value: ``undef`` -##### `db_charset` +##### `db_charset` Data type: `Optional[String]` @@ -2218,7 +2448,7 @@ The character set to use for the database connection. Only valid if `type` is `d Default value: ``undef`` -##### `ldap_root_dn` +##### `ldap_root_dn` Data type: `Optional[String]` @@ -2226,7 +2456,7 @@ Root object of the tree, e.g. 'ou=people,dc=icinga,dc=com'. Only valid if `type` Default value: ``undef`` -##### `ldap_bind_dn` +##### `ldap_bind_dn` Data type: `Optional[String]` @@ -2234,7 +2464,7 @@ The user to use when connecting to the server. Only valid if `type` is `ldap`. Default value: ``undef`` -##### `ldap_bind_pw` +##### `ldap_bind_pw` Data type: `Optional[Icingaweb2::Secret]` @@ -2242,7 +2472,7 @@ The password to use when connecting to the server. Only valid if `type` is `ldap Default value: ``undef`` -##### `ldap_encryption` +##### `ldap_encryption` Data type: `Optional[Enum['none', 'starttls', 'ldaps']]` @@ -2250,7 +2480,7 @@ Type of encryption to use: none (default), starttls, ldaps. Only valid if `type` Default value: `'none'` -##### `ldap_timeout` +##### `ldap_timeout` Data type: `Integer` @@ -2258,7 +2488,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. @@ -2324,9 +2554,15 @@ icingaweb2::config::role{'linux-user': #### Parameters -The following parameters are available in the `icingaweb2::config::role` defined type. +The following parameters are available in the `icingaweb2::config::role` defined type: -##### `role_name` +* [`role_name`](#role_name) +* [`users`](#users) +* [`groups`](#groups) +* [`permissions`](#permissions) +* [`filters`](#filters) + +##### `role_name` Data type: `String` @@ -2334,7 +2570,7 @@ Name of the role. Default value: `$title` -##### `users` +##### `users` Data type: `Optional[String]` @@ -2342,7 +2578,7 @@ Comma separated list of users this role applies to. Default value: ``undef`` -##### `groups` +##### `groups` Data type: `Optional[String]` @@ -2350,7 +2586,7 @@ Comma separated list of groups this role applies to. Default value: ``undef`` -##### `permissions` +##### `permissions` Data type: `Optional[String]` @@ -2363,7 +2599,7 @@ Comma separated lsit of permissions. Each module may add it's own permissions. E Default value: ``undef`` -##### `filters` +##### `filters` Data type: `Hash` @@ -2377,7 +2613,7 @@ A string value is expected for each used key. For example: Default value: `{}` -### `icingaweb2::inisection` +### `icingaweb2::inisection` Manage settings in INI configuration files. @@ -2400,15 +2636,20 @@ icingaweb2::inisection { '/path/to/config.ini': #### Parameters -The following parameters are available in the `icingaweb2::inisection` defined type. +The following parameters are available in the `icingaweb2::inisection` defined type: + +* [`target`](#target) +* [`section_name`](#section_name) +* [`settings`](#settings) +* [`order`](#order) -##### `target` +##### `target` Data type: `Stdlib::Absolutepath` Absolute path to the configuration file. -##### `section_name` +##### `section_name` Data type: `String` @@ -2416,7 +2657,7 @@ Name of the target section. Settings are set under [$section_name] Default value: `$title` -##### `settings` +##### `settings` Data type: `Hash` @@ -2424,7 +2665,7 @@ A hash of settings and their settings. Single settings may be set to absent. Default value: `{}` -##### `order` +##### `order` Data type: `Variant[String, Integer]` @@ -2432,7 +2673,7 @@ Ordering of the INI section within a file. Defaults to `01` Default value: `'01'` -### `icingaweb2::module` +### `icingaweb2::module` Download, enable and configure Icinga Web 2 modules. @@ -2466,9 +2707,18 @@ $settings = { #### Parameters -The following parameters are available in the `icingaweb2::module` defined type. +The following parameters are available in the `icingaweb2::module` defined type: -##### `ensure` +* [`ensure`](#ensure) +* [`module`](#module) +* [`module_dir`](#module_dir) +* [`install_method`](#install_method) +* [`git_revision`](#git_revision) +* [`package_name`](#package_name) +* [`settings`](#settings) +* [`git_repository`](#git_repository) + +##### `ensure` Data type: `Enum['absent', 'present']` @@ -2476,7 +2726,7 @@ Enable or disable module. Default value: `'present'` -##### `module` +##### `module` Data type: `String` @@ -2484,7 +2734,7 @@ Name of the module. Default value: `$title` -##### `module_dir` +##### `module_dir` Data type: `Stdlib::Absolutepath` @@ -2492,7 +2742,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']` @@ -2500,7 +2750,7 @@ Install methods are `git`, `package` and `none` is supported as installation met Default value: `'git'` -##### `git_revision` +##### `git_revision` Data type: `String` @@ -2508,7 +2758,7 @@ 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]` @@ -2516,7 +2766,7 @@ Package name of the module. This setting is only valid in combination with the i Default value: ``undef`` -##### `settings` +##### `settings` Data type: `Hash` @@ -2525,7 +2775,7 @@ The `module_name` should be used as target directory for the configuration files Default value: `{}` -##### `git_repository` +##### `git_repository` Data type: `Optional[String]` @@ -2535,17 +2785,17 @@ Default value: ``undef`` ## Functions -### `icingaweb2::unwrap` +### `icingaweb2::unwrap` Type: Puppet Language -The icingaweb2::unwrap function. +This function returns an unwrap string if necessary. #### `icingaweb2::unwrap(Optional[Variant[String, Sensitive[String]]] $arg = undef)` The icingaweb2::unwrap function. -Returns: `Any` +Returns: `Any` The unwraped string. ##### `arg` @@ -2555,19 +2805,27 @@ Data type: `Optional[Variant[String, Sensitive[String]]]` ## Data types -### `Icingaweb2::AdminRole` +### `Icingaweb2::AdminRole` A strict type for the default admin role -Alias of `Struct[{ +Alias of + +```puppet +Struct[{ name => String, users => Optional[Array[String]], groups => Optional[Array[String]], -}]` +}] +``` -### `Icingaweb2::Secret` +### `Icingaweb2::Secret` A strict type for the secrets like passwords or keys -Alias of `Variant[String, Sensitive[String]]` +Alias of + +```puppet +Variant[String, Sensitive[String]] +``` diff --git a/functions/unwrap.pp b/functions/unwrap.pp index 586a8463..19ce7b64 100644 --- a/functions/unwrap.pp +++ b/functions/unwrap.pp @@ -1,4 +1,13 @@ +# @summary +# This function returns an unwrap string if necessary. +# +# @return +# The unwraped string. +# function icingaweb2::unwrap(Optional[Variant[String, Sensitive[String]]] $arg = undef) { + # @param arg + # A sensitive or string. + # if $arg =~ Sensitive { $arg.unwrap } else { diff --git a/metadata.json b/metadata.json index 0a8360f2..ee8c33ea 100644 --- a/metadata.json +++ b/metadata.json @@ -1,6 +1,6 @@ { "name": "icinga-icingaweb2", - "version": "3.4.0", + "version": "3.4.1", "author": "Icinga Team", "summary": "Icinga Web 2 Puppet Module", "license": "Apache-2.0",