diff --git a/REFERENCE.md b/REFERENCE.md index 863c8ff..c5ae5da 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -24,6 +24,10 @@ Configures IcingaDB * `icingadb::redis::service`: Manage IcingaDB Redis server service * `icingadb::service`: Manage IcingaDB service +### Data types + +* [`IcingaDB::RetentionOptions`](#IcingaDB--RetentionOptions) + ## Classes ### `icingadb` @@ -405,14 +409,7 @@ Default value: `undef` ##### `retention_options` -Data type: - -```puppet -Hash[Enum[ - 'acknowledgement','comment','downtime', - 'flapping','notification','state' - ], Integer[1]] -``` +Data type: `IcingaDB::RetentionOptions` Map of history category to number of days to retain its data in order to enable retention only for specific categories or to override the number @@ -759,3 +756,18 @@ Data type: `Stdlib::Absolutepath` +## Data types + +### `IcingaDB::RetentionOptions` + +The IcingaDB::RetentionOptions data type. + +Alias of + +```puppet +Hash[Enum[ + 'acknowledgement','comment','downtime', + 'flapping','notification','state' + ], Integer[1]] +``` + diff --git a/manifests/init.pp b/manifests/init.pp index 9752057..d29faae 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -178,10 +178,7 @@ Pattern[/^\d+\.?\d*[d|h|m|s]?$/] $logging_interval = '20s', Optional[Integer[1]] $retention_history_data = undef, Optional[Integer[1]] $retention_sla_data = undef, - Hash[Enum[ - 'acknowledgement','comment','downtime', - 'flapping','notification','state' - ], Integer[1]] $retention_options = {}, + IcingaDB::RetentionOptions $retention_options = {}, ) { require icingadb::globals diff --git a/types/retetionoptions.pp b/types/retetionoptions.pp new file mode 100644 index 0000000..eade6c9 --- /dev/null +++ b/types/retetionoptions.pp @@ -0,0 +1,7 @@ +type IcingaDB::RetentionOptions = Hash[ + Enum[ + 'acknowledgement','comment','downtime', + 'flapping','notification','state' + ], + Integer[1] +]