diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0fe3cabd..f0a886e0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,7 +2,28 @@
All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).
-## [v6.2.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.2.1) (2021-08-25)
+## [v6.3.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.3.0) (2022-06-13)
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.2.1...v6.3.0)
+
+### Added
+
+- pdksync - \(GH-cat-12\) Add Support for Redhat 9 [\#519](https://github.com/puppetlabs/puppetlabs-haproxy/pull/519) ([david22swan](https://github.com/david22swan))
+- Allow specifying mapfile entries to be collected later [\#508](https://github.com/puppetlabs/puppetlabs-haproxy/pull/508) ([yakatz](https://github.com/yakatz))
+- Added possibility filling description field [\#504](https://github.com/puppetlabs/puppetlabs-haproxy/pull/504) ([michaelkoettenstorfer](https://github.com/michaelkoettenstorfer))
+- pdksync - \(IAC-1753\) - Add Support for AlmaLinux 8 [\#502](https://github.com/puppetlabs/puppetlabs-haproxy/pull/502) ([david22swan](https://github.com/david22swan))
+- pdksync - \(IAC-1751\) - Add Support for Rocky 8 [\#501](https://github.com/puppetlabs/puppetlabs-haproxy/pull/501) ([david22swan](https://github.com/david22swan))
+- Adding chroot\_dir\_manage parameter. [\#498](https://github.com/puppetlabs/puppetlabs-haproxy/pull/498) ([Tamerz](https://github.com/Tamerz))
+
+### Fixed
+
+- pdksync - \(GH-iac-334\) Remove Support for Ubuntu 14.04/16.04 [\#511](https://github.com/puppetlabs/puppetlabs-haproxy/pull/511) ([david22swan](https://github.com/david22swan))
+- pdksync - \(IAC-1787\) Remove Support for CentOS 6 [\#507](https://github.com/puppetlabs/puppetlabs-haproxy/pull/507) ([david22swan](https://github.com/david22swan))
+- \[MODULES-11274\] Allow usage of parameter manage\_config\_dir [\#506](https://github.com/puppetlabs/puppetlabs-haproxy/pull/506) ([tuxmea](https://github.com/tuxmea))
+- haproxy\_userlist: fix empty users/groups handling. [\#505](https://github.com/puppetlabs/puppetlabs-haproxy/pull/505) ([bzed](https://github.com/bzed))
+- pdksync - \(IAC-1598\) - Remove Support for Debian 8 [\#500](https://github.com/puppetlabs/puppetlabs-haproxy/pull/500) ([david22swan](https://github.com/david22swan))
+
+## [v6.2.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.2.1) (2021-08-26)
[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.2.0...v6.2.1)
diff --git a/REFERENCE.md b/REFERENCE.md
index 532db9b3..f1aedad3 100644
--- a/REFERENCE.md
+++ b/REFERENCE.md
@@ -31,6 +31,8 @@ haproxy.cfg on the load balancer.
* [`haproxy::mailers`](#haproxymailers): This type will set up a mailers entry in haproxy.cfg on the load balancer.
* [`haproxy::mapfile`](#haproxymapfile): Manage an HAProxy map file as documented in
https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map
+* [`haproxy::mapfile::entry`](#haproxymapfileentry): Manage an HAProxy map file as documented in
+https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map
* [`haproxy::peer`](#haproxypeer): This type will set up a peer entry inside the peers configuration block in haproxy.cfg on the load balancer.
* [`haproxy::peer::collect_exported`](#haproxypeercollect_exported): Private define
* [`haproxy::peers`](#haproxypeers): This type will set up a peers entry in haproxy.cfg
@@ -102,6 +104,7 @@ The following parameters are available in the `haproxy` class:
* [`service_manage`](#service_manage)
* [`service_name`](#service_name)
* [`service_options`](#service_options)
+* [`chroot_dir_manage`](#chroot_dir_manage)
* [`sysconfig_options`](#sysconfig_options)
* [`global_options`](#global_options)
* [`defaults_options`](#defaults_options)
@@ -168,6 +171,15 @@ Contents for the `/etc/defaults/haproxy` file on Debian. Defaults to "ENABLED=1\
Default value: `$haproxy::params::service_options`
+##### `chroot_dir_manage`
+
+Data type: `Boolean`
+
+Chooses whether the haproxy chroot directory should be managed by puppet
+at all. Defaults to true
+
+Default value: ``true``
+
##### `sysconfig_options`
Data type: `Any`
@@ -348,6 +360,7 @@ The following parameters are available in the `haproxy::backend` defined type:
* [`section_name`](#section_name)
* [`mode`](#mode)
+* [`description`](#description)
* [`options`](#options)
* [`collect_exported`](#collect_exported)
* [`config_file`](#config_file)
@@ -373,6 +386,16 @@ The mode of operation for the backend service. Valid values are undef,
Default value: ``undef``
+##### `description`
+
+Data type: `Any`
+
+Allows to add a sentence to describe the related object in the HAProxy HTML
+stats page. The description will be printed on the right of the object name
+it describes. Usefull in huge environments
+
+Default value: ``undef``
+
##### `options`
Data type: `Any`
@@ -756,6 +779,7 @@ The following parameters are available in the `haproxy::frontend` defined type:
* [`bind`](#bind)
* [`ipaddress`](#ipaddress)
* [`mode`](#mode)
+* [`description`](#description)
* [`bind_options`](#bind_options)
* [`options`](#options)
* [`sort_options_alphabetic`](#sort_options_alphabetic)
@@ -813,6 +837,16 @@ The mode of operation for the frontend service. Valid values are undef,
Default value: ``undef``
+##### `description`
+
+Data type: `Any`
+
+Allows to add a sentence to describe the related object in the HAProxy HTML
+stats page. The description will be printed on the right of the object name
+it describes. Usefull in huge environments
+
+Default value: ``undef``
+
##### `bind_options`
Data type: `Any`
@@ -978,6 +1012,7 @@ The following parameters are available in the `haproxy::instance` defined type:
* [`package_name`](#package_name)
* [`service_ensure`](#service_ensure)
* [`service_manage`](#service_manage)
+* [`chroot_dir_manage`](#chroot_dir_manage)
* [`service_name`](#service_name)
* [`global_options`](#global_options)
* [`defaults_options`](#defaults_options)
@@ -1026,6 +1061,15 @@ all. Defaults to true
Default value: ``true``
+##### `chroot_dir_manage`
+
+Data type: `Boolean`
+
+Chooses whether the haproxy chroot directory should be managed by puppet
+at all. Defaults to true
+
+Default value: ``true``
+
##### `service_name`
Data type: `Optional[String]`
@@ -1191,7 +1235,7 @@ Default value: ``undef``
##### `haproxy_unit_template`
-Data type: `Optional[String]`
+Data type: `String`
@@ -1238,6 +1282,7 @@ The following parameters are available in the `haproxy::listen` defined type:
* [`ipaddress`](#ipaddress)
* [`bind`](#bind)
* [`mode`](#mode)
+* [`description`](#description)
* [`options`](#options)
* [`bind_options`](#bind_options)
* [`collect_exported`](#collect_exported)
@@ -1294,6 +1339,16 @@ The mode of operation for the listening service. Valid values are undef,
Default value: ``undef``
+##### `description`
+
+Data type: `Any`
+
+Allows to add a sentence to describe the related object in the HAProxy HTML
+stats page. The description will be printed on the right of the object name
+it describes. Usefull in huge environments
+
+Default value: ``undef``
+
##### `options`
Data type: `Any`
@@ -1305,7 +1360,7 @@ Default value: `{
'option' => [
'tcplog',
],
- 'balance' => 'roundrobin'
+ 'balance' => 'roundrobin',
}`
##### `bind_options`
@@ -1464,7 +1519,8 @@ Manage an HAProxy map file as documented in
https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map
* **Note** A map file contains one key + value per line. These key-value pairs are
-specified in the `mappings` array.
+specified in the `mappings` array or by additional `haproxy::mapfile::entry`
+definitions.
#### Parameters
@@ -1486,7 +1542,7 @@ A '.map' extension will be added automatically.
##### `mappings`
-Data type: `Array`
+Data type: `Array[Variant[String, Hash]]`
An array of mappings for this map file. Array elements may be Hashes with a
single key-value pair each (preferably) or simple Strings. Default: `[]`
@@ -1534,7 +1590,53 @@ Array of managed HAproxy instance names to notify (restart/reload) when the
map file is updated. This is so that the same map file can be used with
multiple HAproxy instances. Default: `[ 'haproxy' ]`
-Default value: `[ 'haproxy' ]`
+Default value: `['haproxy']`
+
+### `haproxy::mapfile::entry`
+
+Manage an HAProxy map file as documented in
+https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map
+
+* **Note** A map file contains one key + value per line. These key-value pairs are
+specified in the `mappings` array.
+
+#### Parameters
+
+The following parameters are available in the `haproxy::mapfile::entry` defined type:
+
+* [`name`](#name)
+* [`mappings`](#mappings)
+* [`mapfile`](#mapfile)
+* [`order`](#order)
+
+##### `name`
+
+The namevar of the defined resource type is the filename of the map file
+(without any extension), relative to the `haproxy::config_dir` directory.
+A '.map' extension will be added automatically.
+
+##### `mappings`
+
+Data type: `Array[Variant[String, Hash]]`
+
+An array of mappings for this map file. Array elements may be Hashes with a
+single key-value pair each (preferably) or simple Strings. Default: `[]`
+
+Default value: `[$title]`
+
+##### `mapfile`
+
+Data type: `String`
+
+
+
+##### `order`
+
+Data type: `Variant[String, Integer]`
+
+
+
+Default value: `'10'`
### `haproxy::peer`
diff --git a/metadata.json b/metadata.json
index 868a9be0..c550f385 100644
--- a/metadata.json
+++ b/metadata.json
@@ -1,6 +1,6 @@
{
"name": "puppetlabs-haproxy",
- "version": "6.2.1",
+ "version": "6.3.0",
"author": "puppetlabs",
"summary": "Configures HAProxy servers and manages the configuration of backend member servers.",
"license": "Apache-2.0",
diff --git a/pdk.yaml b/pdk.yaml
new file mode 100644
index 00000000..4bef4bd0
--- /dev/null
+++ b/pdk.yaml
@@ -0,0 +1,2 @@
+---
+ignore: []