diff --git a/CHANGELOG.md b/CHANGELOG.md
index 68ad2d77..05d5ba29 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,26 @@ 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).
+## [v9.1.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v9.1.0) - 2026-07-28
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v9.0.0...v9.1.0)
+
+> **Note:** This release raises the minimum required `puppetlabs/concat` version to `7.4.0` (from `1.2.3`) to support removing a workaround for Sensitive data handling. Environments pinned to an older `concat` version may fail dependency resolution after upgrading; update your `concat` pin before adopting this release. This dependency change is backwards-incompatible, but is shipped as a minor release rather than a major bump because it follows so soon after `v9.0.0`; the team agreed to treat the first release after a major as an exception rather than bump major again immediately.
+
+### Changed
+
+- Eliminate Workaround for Sensitive Data; raises minimum `puppetlabs/concat` requirement to `7.4.0` [#607](https://github.com/puppetlabs/puppetlabs-haproxy/pull/607) ([cocker-cc](https://github.com/cocker-cc))
+
+### Added
+
+- Add support for running programs [#604](https://github.com/puppetlabs/puppetlabs-haproxy/pull/604) ([deric](https://github.com/deric))
+- Pass install_options to package installer [#603](https://github.com/puppetlabs/puppetlabs-haproxy/pull/603) ([deric](https://github.com/deric))
+
+### Fixed
+
+- examples: disable default stats listener [#640](https://github.com/puppetlabs/puppetlabs-haproxy/pull/640) ([bastelfreak](https://github.com/bastelfreak))
+- make picking haproxy::globals::sort_options_alphabetic work [#573](https://github.com/puppetlabs/puppetlabs-haproxy/pull/573) ([trefzer](https://github.com/trefzer))
+
## [v9.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v9.0.0) - 2026-07-20
[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v8.2.0...v9.0.0)
diff --git a/HISTORY.md b/HISTORY.md
index 73f253aa..3b5bc9d8 100644
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -1,3 +1,346 @@
+## 9.1.0
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v9.0.0...v9.1.0)
+
+> **Note:** This release raises the minimum required `puppetlabs/concat` version to `7.4.0` (from `1.2.3`) to support removing a workaround for Sensitive data handling. Environments pinned to an older `concat` version may fail dependency resolution after upgrading; update your `concat` pin before adopting this release. This dependency change is backwards-incompatible, but is shipped as a minor release rather than a major bump because it follows so soon after `v9.0.0`; the team agreed to treat the first release after a major as an exception rather than bump major again immediately.
+
+### Changed
+
+- Eliminate Workaround for Sensitive Data; raises minimum `puppetlabs/concat` requirement to `7.4.0` [#607](https://github.com/puppetlabs/puppetlabs-haproxy/pull/607) ([cocker-cc](https://github.com/cocker-cc))
+
+### Added
+
+- Add support for running programs [#604](https://github.com/puppetlabs/puppetlabs-haproxy/pull/604) ([deric](https://github.com/deric))
+- Pass install_options to package installer [#603](https://github.com/puppetlabs/puppetlabs-haproxy/pull/603) ([deric](https://github.com/deric))
+
+### Fixed
+
+- examples: disable default stats listener [#640](https://github.com/puppetlabs/puppetlabs-haproxy/pull/640) ([bastelfreak](https://github.com/bastelfreak))
+- make picking haproxy::globals::sort_options_alphabetic work [#573](https://github.com/puppetlabs/puppetlabs-haproxy/pull/573) ([trefzer](https://github.com/trefzer))
+
+## 9.0.0
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v8.2.0...v9.0.0)
+
+> **Note:** This release supersedes and corrects the withdrawn `8.2.1`, which was mistakenly published as a patch despite dropping Puppet 7 support. `8.2.1` has been removed from the Puppet Forge; use `9.0.0` instead.
+
+### Changed
+
+- **Remove Puppet 7 support; the module now requires `puppet >= 8.0.0 < 9.0.0`** [#631](https://github.com/puppetlabs/puppetlabs-haproxy/pull/631) ([gavindidrichsen](https://github.com/gavindidrichsen))
+
+### Added
+
+- Add support for `cache` resource, extra backend options, and docs [#626](https://github.com/puppetlabs/puppetlabs-haproxy/pull/626)
+- (MODULES-11840) Allow puppetlabs/stdlib 10.x [#642](https://github.com/puppetlabs/puppetlabs-haproxy/pull/642) ([imaqsood](https://github.com/imaqsood))
+- Allow puppetlabs/concat 10.x [#641](https://github.com/puppetlabs/puppetlabs-haproxy/pull/641)
+
+### Fixed
+
+- dependency: create mapfile before configfile [#572](https://github.com/puppetlabs/puppetlabs-haproxy/pull/572)
+
+## [v8.2.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v8.2.0) - 2025-01-31
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v8.1.0...v8.2.0)
+
+### Added
+
+- remove stats as default [#616](https://github.com/puppetlabs/puppetlabs-haproxy/pull/616) ([elfranne](https://github.com/elfranne))
+
+## [v8.1.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v8.1.0) - 2024-12-18
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v8.0.0...v8.1.0)
+
+### Added
+
+- (CAT-2101) Add support for Debian-12 [#619](https://github.com/puppetlabs/puppetlabs-haproxy/pull/619) ([skyamgarp](https://github.com/skyamgarp))
+- Allow ports parameters as Stdlib::Ports [#610](https://github.com/puppetlabs/puppetlabs-haproxy/pull/610) ([traylenator](https://github.com/traylenator))
+
+### Fixed
+
+- (CAT-2158) Upgrade rexml to address CVE-2024-49761 [#621](https://github.com/puppetlabs/puppetlabs-haproxy/pull/621) ([amitkarsale](https://github.com/amitkarsale))
+
+## [v8.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v8.0.0) - 2023-11-22
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v7.2.1...v8.0.0)
+
+### Changed
+
+- merge_options: Switch default false->true [#592](https://github.com/puppetlabs/puppetlabs-haproxy/pull/592) ([bastelfreak](https://github.com/bastelfreak))
+
+### Added
+
+- Add `merge_options` for `haproxy::defaults` [#588](https://github.com/puppetlabs/puppetlabs-haproxy/pull/588) ([yakatz](https://github.com/yakatz))
+
+### Other
+
+- Add bastelfreak to codeowners [#594](https://github.com/puppetlabs/puppetlabs-haproxy/pull/594) ([bastelfreak](https://github.com/bastelfreak))
+
+## [v7.2.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v7.2.1) - 2023-09-26
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v7.2.0...v7.2.1)
+
+### Fixed
+
+- Replace merge() with native puppet code [#579](https://github.com/puppetlabs/puppetlabs-haproxy/pull/579) ([hawkeye-7](https://github.com/hawkeye-7))
+- haproxy::backend: Always set $_sort_options_alphabetic [#576](https://github.com/puppetlabs/puppetlabs-haproxy/pull/576) ([bastelfreak](https://github.com/bastelfreak))
+
+## [v7.2.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v7.2.0) - 2023-08-11
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v7.1.0...v7.2.0)
+
+### Added
+
+- (CONT-1144) - Conversion of ERB to EPP templates [#564](https://github.com/puppetlabs/puppetlabs-haproxy/pull/564) ([praj1001](https://github.com/praj1001))
+
+### Fixed
+
+- (CAT-1314) Fix for template bug with maxconn since PR#564 [#569](https://github.com/puppetlabs/puppetlabs-haproxy/pull/569) ([praj1001](https://github.com/praj1001))
+- Correct warnings about deprecated parameter [#557](https://github.com/puppetlabs/puppetlabs-haproxy/pull/557) ([hawkeye-7](https://github.com/hawkeye-7))
+
+## [v7.1.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v7.1.0) - 2023-07-24
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v7.0.0...v7.1.0)
+
+### Added
+
+- pdksync - (MAINT) - Allow Stdlib 9.x [#556](https://github.com/puppetlabs/puppetlabs-haproxy/pull/556) ([LukasAud](https://github.com/LukasAud))
+- (CONT-880) Update concat dependency [#549](https://github.com/puppetlabs/puppetlabs-haproxy/pull/549) ([LukasAud](https://github.com/LukasAud))
+
+### Fixed
+
+- (CONT-966) Replace replace `.is_hash` with `.is_a(Hash)` [#551](https://github.com/puppetlabs/puppetlabs-haproxy/pull/551) ([david22swan](https://github.com/david22swan))
+
+## [v7.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v7.0.0) - 2023-04-03
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.5.0...v7.0.0)
+
+### Changed
+
+- (Cont 779) Add Support for Puppet 8 / Drop Support for Puppet 6 [#544](https://github.com/puppetlabs/puppetlabs-haproxy/pull/544) ([david22swan](https://github.com/david22swan))
+
+## [v6.5.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.5.0) - 2023-03-31
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.4.0...v6.5.0)
+
+### Added
+
+- (CONT-353) Syntax update [#536](https://github.com/puppetlabs/puppetlabs-haproxy/pull/536) ([LukasAud](https://github.com/LukasAud))
+
+### Fixed
+
+- (CONT-651) Adjusting datatypes [#540](https://github.com/puppetlabs/puppetlabs-haproxy/pull/540) ([LukasAud](https://github.com/LukasAud))
+- (CONT-560) Fix facter typos after syntax update [#539](https://github.com/puppetlabs/puppetlabs-haproxy/pull/539) ([LukasAud](https://github.com/LukasAud))
+- (CONT-173) - Updating deprecated facter instances [#534](https://github.com/puppetlabs/puppetlabs-haproxy/pull/534) ([jordanbreen28](https://github.com/jordanbreen28))
+- pdksync - (CONT-189) Remove support for RedHat6 / Scientific6 [#533](https://github.com/puppetlabs/puppetlabs-haproxy/pull/533) ([david22swan](https://github.com/david22swan))
+- pdksync - (CONT-130) - Dropping Support for Debian 9 [#530](https://github.com/puppetlabs/puppetlabs-haproxy/pull/530) ([jordanbreen28](https://github.com/jordanbreen28))
+- update resolver parameters [#526](https://github.com/puppetlabs/puppetlabs-haproxy/pull/526) ([bugfood](https://github.com/bugfood))
+
+## [v6.4.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.4.0) - 2022-10-03
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.3.0...v6.4.0)
+
+### Added
+
+- (MAINT) Add support for Ubuntu 22.04 [#528](https://github.com/puppetlabs/puppetlabs-haproxy/pull/528) ([jordanbreen28](https://github.com/jordanbreen28))
+
+## [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)
+
+### Fixed
+
+- (IAC-1741) Allow stdlib v8.0.0 [#495](https://github.com/puppetlabs/puppetlabs-haproxy/pull/495) ([david22swan](https://github.com/david22swan))
+
+## [v6.2.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.2.0) - 2021-08-23
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.1.0...v6.2.0)
+
+### Added
+
+- pdksync - (IAC-1709) - Add Support for Debian 11 [#493](https://github.com/puppetlabs/puppetlabs-haproxy/pull/493) ([david22swan](https://github.com/david22swan))
+
+## [v6.1.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.1.0) - 2021-07-06
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.0.2...v6.1.0)
+
+### Added
+
+- allow type 'default-server' for balancermember [#489](https://github.com/puppetlabs/puppetlabs-haproxy/pull/489) ([trefzer](https://github.com/trefzer))
+- Use Puppet-Datatype Sensitive [#487](https://github.com/puppetlabs/puppetlabs-haproxy/pull/487) ([cocker-cc](https://github.com/cocker-cc))
+
+## [v6.0.2](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.0.2) - 2021-06-21
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.0.1...v6.0.2)
+
+### Fixed
+
+- Fix haproxy_version fact for versions >= 2.4.0 [#486](https://github.com/puppetlabs/puppetlabs-haproxy/pull/486) ([bp85](https://github.com/bp85))
+
+## [v6.0.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.0.1) - 2021-05-24
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v6.0.0...v6.0.1)
+
+### Fixed
+
+- Fix 'option' entry name in option_order hash [#477](https://github.com/puppetlabs/puppetlabs-haproxy/pull/477) ([antaflos](https://github.com/antaflos))
+
+## [v6.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v6.0.0) - 2021-03-29
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v5.0.0...v6.0.0)
+
+## [v5.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v5.0.0) - 2021-03-01
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.5.0...v5.0.0)
+
+### Changed
+
+- pdksync - Remove Puppet 5 from testing and bump minimal version to 6.0.0 [#465](https://github.com/puppetlabs/puppetlabs-haproxy/pull/465) ([carabasdaniel](https://github.com/carabasdaniel))
+
+## [v4.5.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.5.0) - 2020-12-14
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.4.0...v4.5.0)
+
+### Added
+
+- pdksync - (feat) Add support for Puppet 7 [#456](https://github.com/puppetlabs/puppetlabs-haproxy/pull/456) ([daianamezdrea](https://github.com/daianamezdrea))
+
+## [v4.4.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.4.0) - 2020-11-23
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.3.0...v4.4.0)
+
+### Added
+
+- Fix incorrect options order in HAproxy 2.2.x [#442](https://github.com/puppetlabs/puppetlabs-haproxy/pull/442) ([pkaroluk](https://github.com/pkaroluk))
+
+### Fixed
+
+- (bugfix) backend: dont log warnings if not necessary [#449](https://github.com/puppetlabs/puppetlabs-haproxy/pull/449) ([bastelfreak](https://github.com/bastelfreak))
+- frontend options: order default_backend after specific backends & test [#447](https://github.com/puppetlabs/puppetlabs-haproxy/pull/447) ([MajorFlamingo](https://github.com/MajorFlamingo))
+
+## [v4.3.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.3.0) - 2020-09-18
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.2.1...v4.3.0)
+
+### Added
+
+- pdksync - (IAC-973) - Update travis/appveyor to run on new default branch main [#437](https://github.com/puppetlabs/puppetlabs-haproxy/pull/437) ([david22swan](https://github.com/david22swan))
+- (IAC-746) - Add ubuntu 20.04 support [#430](https://github.com/puppetlabs/puppetlabs-haproxy/pull/430) ([david22swan](https://github.com/david22swan))
+
+### Fixed
+
+- (IAC-988) - Removal of inappropriate terminology [#443](https://github.com/puppetlabs/puppetlabs-haproxy/pull/443) ([david22swan](https://github.com/david22swan))
+
+## [v4.2.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.2.1) - 2020-05-19
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.2.0...v4.2.1)
+
+### Fixed
+
+- Ensure multiple instances may be created with the default package. [#348](https://github.com/puppetlabs/puppetlabs-haproxy/pull/348) ([surprisingb](https://github.com/surprisingb))
+
+## [v4.2.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.2.0) - 2019-12-09
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.1.0...v4.2.0)
+
+### Added
+
+- (FM-8674) - Support added for CentOS 8 [#397](https://github.com/puppetlabs/puppetlabs-haproxy/pull/397) ([david22swan](https://github.com/david22swan))
+
+## [v4.1.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.1.0) - 2019-09-27
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/v4.0.0...v4.1.0)
+
+### Added
+
+- pdksync - Add support on Debian10 [#380](https://github.com/puppetlabs/puppetlabs-haproxy/pull/380) ([lionce](https://github.com/lionce))
+- FM-8140 Add redhat8 support [#374](https://github.com/puppetlabs/puppetlabs-haproxy/pull/374) ([sheenaajay](https://github.com/sheenaajay))
+- (FM-8220) convert to use litmus [#373](https://github.com/puppetlabs/puppetlabs-haproxy/pull/373) ([tphoney](https://github.com/tphoney))
+
+### Fixed
+
+- MODULES-9783 - Removed option tcplog [#376](https://github.com/puppetlabs/puppetlabs-haproxy/pull/376) ([uberjew666](https://github.com/uberjew666))
+- Add check of OS for the systemd unitfile [#347](https://github.com/puppetlabs/puppetlabs-haproxy/pull/347) ([surprisingb](https://github.com/surprisingb))
+
+## [v4.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/v4.0.0) - 2019-05-17
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/3.0.1...v4.0.0)
+
+### Changed
+
+- pdksync - (MODULES-8444) - Raise lower Puppet bound [#362](https://github.com/puppetlabs/puppetlabs-haproxy/pull/362) ([david22swan](https://github.com/david22swan))
+
+### Added
+
+- [FM-7934] - Puppet Strings [#365](https://github.com/puppetlabs/puppetlabs-haproxy/pull/365) ([carabasdaniel](https://github.com/carabasdaniel))
+
+### Fixed
+
+- (MODULES-8930) Fix stahnma/epel dependency failures [#364](https://github.com/puppetlabs/puppetlabs-haproxy/pull/364) ([eimlav](https://github.com/eimlav))
+- Remove execute bit on systemd unit file [#354](https://github.com/puppetlabs/puppetlabs-haproxy/pull/354) ([shanemadden](https://github.com/shanemadden))
+
+## [3.0.1](https://github.com/puppetlabs/puppetlabs-haproxy/tree/3.0.1) - 2019-02-20
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/3.0.0...3.0.1)
+
+## [3.0.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/3.0.0) - 2019-02-12
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/2.2.0...3.0.0)
+
+### Changed
+
+- (FM-7675) - Support has been removed for RHEL 6 [#345](https://github.com/puppetlabs/puppetlabs-haproxy/pull/345) ([david22swan](https://github.com/david22swan))
+
+### Added
+
+- (MODULES-8539) Added 'accepted_payload_size' to resolver [#346](https://github.com/puppetlabs/puppetlabs-haproxy/pull/346) ([genebean](https://github.com/genebean))
+- Sergey leskov/servertemplatekwimp [#337](https://github.com/puppetlabs/puppetlabs-haproxy/pull/337) ([LeskovSergey](https://github.com/LeskovSergey))
+
+### Fixed
+
+- (MODULES-8566) Only create entries for defined settings [#350](https://github.com/puppetlabs/puppetlabs-haproxy/pull/350) ([genebean](https://github.com/genebean))
+- (MODULES-8407) Add option to set the service's name [#342](https://github.com/puppetlabs/puppetlabs-haproxy/pull/342) ([genebean](https://github.com/genebean))
+- pdksync - (FM-7655) Fix rubygems-update for ruby < 2.3 [#341](https://github.com/puppetlabs/puppetlabs-haproxy/pull/341) ([tphoney](https://github.com/tphoney))
+
+## [2.2.0](https://github.com/puppetlabs/puppetlabs-haproxy/tree/2.2.0) - 2018-09-27
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-haproxy/compare/2.1.0...2.2.0)
+
+### Added
+
+- pdksync - (MODULES-6805) metadata.json shows support for puppet 6 [#333](https://github.com/puppetlabs/puppetlabs-haproxy/pull/333) ([tphoney](https://github.com/tphoney))
+- pdksync - (MODULES-7658) use beaker4 in puppet-module-gems [#330](https://github.com/puppetlabs/puppetlabs-haproxy/pull/330) ([tphoney](https://github.com/tphoney))
+- (MODULES-7562) - Addition of support for Ubuntu 18.04 to haproxy [#324](https://github.com/puppetlabs/puppetlabs-haproxy/pull/324) ([david22swan](https://github.com/david22swan))
+- (MODULES-5992) Add debian 9 compatibility [#321](https://github.com/puppetlabs/puppetlabs-haproxy/pull/321) ([hunner](https://github.com/hunner))
+
+### Fixed
+
+- pdksync - (MODULES-7658) use beaker3 in puppet-module-gems [#327](https://github.com/puppetlabs/puppetlabs-haproxy/pull/327) ([tphoney](https://github.com/tphoney))
+- (MODULES-7630) - Update README Limitations section [#325](https://github.com/puppetlabs/puppetlabs-haproxy/pull/325) ([eimlav](https://github.com/eimlav))
+- [FM-6964] Removal of unsupported OS from haproxy [#323](https://github.com/puppetlabs/puppetlabs-haproxy/pull/323) ([david22swan](https://github.com/david22swan))
+- (maint) Add netstat for debian9 testing [#322](https://github.com/puppetlabs/puppetlabs-haproxy/pull/322) ([hunner](https://github.com/hunner))
+- Change bind_options default value [#313](https://github.com/puppetlabs/puppetlabs-haproxy/pull/313) ([bdandoy](https://github.com/bdandoy))
+
## 2.1.0
### Summary
This release uses the PDK convert functionality which in return makes the module PDK compliant. It also includes a roll up of maintenance changes.
diff --git a/REFERENCE.md b/REFERENCE.md
index 46e39010..f321d5b4 100644
--- a/REFERENCE.md
+++ b/REFERENCE.md
@@ -38,6 +38,7 @@ https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map
* [`haproxy::peer`](#haproxy--peer): This type will set up a peer entry inside the peers configuration block in haproxy.cfg on the load balancer.
* [`haproxy::peer::collect_exported`](#haproxy--peer--collect_exported): Private define
* [`haproxy::peers`](#haproxy--peers): This type will set up a peers entry in haproxy.cfg
+* [`haproxy::program`](#haproxy--program): Program definition
* [`haproxy::resolver`](#haproxy--resolver): This type will setup resolvers configuration block inside
the haproxy.cfg file on an haproxy load balancer.
* [`haproxy::userlist`](#haproxy--userlist): This type will set up a userlist configuration block inside the haproxy.cfg
@@ -60,6 +61,7 @@ file on an haproxy load balancer.
### Data types
* [`Haproxy::Ports`](#Haproxy--Ports): Port or list of ports for haproxy. Supports `,` seperated list of ports also.
+* [`Haproxy::Programs`](#Haproxy--Programs)
## Classes
@@ -121,7 +123,9 @@ The following parameters are available in the `haproxy` class:
* [`global_options`](#-haproxy--global_options)
* [`defaults_options`](#-haproxy--defaults_options)
* [`merge_options`](#-haproxy--merge_options)
+* [`install_options`](#-haproxy--install_options)
* [`restart_command`](#-haproxy--restart_command)
+* [`programs`](#-haproxy--programs)
* [`custom_fragment`](#-haproxy--custom_fragment)
* [`config_dir`](#-haproxy--config_dir)
* [`config_file`](#-haproxy--config_file)
@@ -234,6 +238,14 @@ false, but will default to true in future releases.
Default value: `$haproxy::params::merge_options`
+##### `install_options`
+
+Data type: `Array[String[1]]`
+
+Array of arguments passed to the installer
+
+Default value: `[]`
+
##### `restart_command`
Data type: `Optional[String]`
@@ -244,6 +256,16 @@ Command to use when restarting the on config changes.
Default value: `undef`
+##### `programs`
+
+Data type: `Haproxy::Programs`
+
+A program section contains a set of directives that define the program to be run,
+its command-line options and flags, as well as user, group, and restart options.
+Note, `master-worker` configuration (in `global_options`) is needed.
+
+Default value: `{}`
+
##### `custom_fragment`
Data type: `Optional[String]`
@@ -447,12 +469,12 @@ Default value: `undef`
##### `sort_options_alphabetic`
-Data type: `Boolean`
+Data type: `Optional[Boolean]`
Sort options either alphabetic or custom like haproxy internal sorts them.
-Defaults to true.
+Defaults to undef (picking true from $haproxy::globals::sort_options_alphabetic).
-Default value: `true`
+Default value: `undef`
##### `defaults`
@@ -812,12 +834,12 @@ Default value: `{}`
##### `sort_options_alphabetic`
-Data type: `Boolean`
+Data type: `Optional[Boolean]`
Sort options either alphabetic or custom like haproxy internal sorts them.
-Defaults to true.
+Defaults to undef (picking true from $haproxy::globals::sort_options_alphabetic).
-Default value: `true`
+Default value: `undef`
##### `merge_options`
@@ -975,12 +997,12 @@ Default value:
##### `sort_options_alphabetic`
-Data type: `Boolean`
+Data type: `Optional[Boolean]`
Sort options either alphabetic or custom like haproxy internal sorts them.
-Defaults to true.
+Defaults to undef (picking true from $haproxy::globals::sort_options_alphabetic).
-Default value: `true`
+Default value: `undef`
##### `defaults`
@@ -1114,6 +1136,7 @@ The following parameters are available in the `haproxy::instance` defined type:
* [`package_ensure`](#-haproxy--instance--package_ensure)
* [`package_name`](#-haproxy--instance--package_name)
+* [`install_options`](#-haproxy--instance--install_options)
* [`service_ensure`](#-haproxy--instance--service_ensure)
* [`service_manage`](#-haproxy--instance--service_manage)
* [`chroot_dir_manage`](#-haproxy--instance--chroot_dir_manage)
@@ -1128,6 +1151,7 @@ The following parameters are available in the `haproxy::instance` defined type:
* [`merge_options`](#-haproxy--instance--merge_options)
* [`service_options`](#-haproxy--instance--service_options)
* [`sysconfig_options`](#-haproxy--instance--sysconfig_options)
+* [`programs`](#-haproxy--instance--programs)
##### `package_ensure`
@@ -1147,6 +1171,14 @@ NOTE: Class['haproxy'] has a different default.
Default value: `undef`
+##### `install_options`
+
+Data type: `Array[String[1]]`
+
+Array of arguments passed to the installer
+
+Default value: `[]`
+
##### `service_ensure`
Data type: `Variant[Enum['running', 'stopped'], Boolean]`
@@ -1285,6 +1317,15 @@ Data type: `String`
Default value: `$haproxy::params::sysconfig_options`
+##### `programs`
+
+Data type: `Haproxy::Programs`
+
+A program section contains a set of directives that define the program to be run,
+its command-line options and flags, as well as user, group, and restart options.
+
+Default value: `{}`
+
### `haproxy::instance_service`
Set up the environment for an haproxy service.
@@ -1494,12 +1535,12 @@ Default value: `true`
##### `sort_options_alphabetic`
-Data type: `Boolean`
+Data type: `Optional[Boolean]`
Sort options either alphabetic or custom like haproxy internal sorts them.
-Defaults to true.
+Defaults to undef (picking true from $haproxy::globals::sort_options_alphabetic).
-Default value: `true`
+Default value: `undef`
##### `defaults`
@@ -1868,6 +1909,81 @@ Boolean. Defaults to true
Default value: `true`
+### `haproxy::program`
+
+Program definition
+
+* **See also**
+ * https://www.haproxy.com/documentation/haproxy-configuration-tutorials/programs/
+
+#### Examples
+
+#####
+
+```puppet
+haproxy::program { 'hello':
+ command => 'hello world',
+}
+```
+
+#### Parameters
+
+The following parameters are available in the `haproxy::program` defined type:
+
+* [`command`](#-haproxy--program--command)
+* [`user`](#-haproxy--program--user)
+* [`group`](#-haproxy--program--group)
+* [`options`](#-haproxy--program--options)
+* [`instance`](#-haproxy--program--instance)
+* [`config_file`](#-haproxy--program--config_file)
+
+##### `command`
+
+Data type: `String`
+
+A command to be executed by haproxy master process
+
+##### `user`
+
+Data type: `Optional[String]`
+
+User account used for executing command
+
+Default value: `undef`
+
+##### `group`
+
+Data type: `Optional[String]`
+
+Assigned group
+
+Default value: `undef`
+
+##### `options`
+
+Data type: `Optional[String]`
+
+By default, the process manager stops and recreates child programs at haproxy reload.
+In order to disable this, set this parameter to `no option start-on-reload`
+
+Default value: `undef`
+
+##### `instance`
+
+Data type: `String`
+
+haproxy instance
+
+Default value: `'haproxy'`
+
+##### `config_file`
+
+Data type: `Optional[Stdlib::Absolutepath]`
+
+Path to haproxy config
+
+Default value: `undef`
+
### `haproxy::resolver`
=== Authors
@@ -2019,12 +2135,12 @@ Default value: `undef`
##### `sort_options_alphabetic`
-Data type: `Boolean`
+Data type: `Optional[Boolean]`
Sort options either alphabetic or custom like haproxy internal sorts them.
-Defaults to true.
+Defaults to undef (picking true from $haproxy::globals::sort_options_alphabetic).
-Default value: `true`
+Default value: `undef`
##### `defaults`
@@ -2172,3 +2288,20 @@ Port or list of ports for haproxy. Supports `,` seperated list of ports also.
Alias of `Variant[Array[Variant[Pattern[/^[0-9]+$/],Stdlib::Port],0], Pattern[/^[0-9,]+$/], Stdlib::Port]`
+### `Haproxy::Programs`
+
+The Haproxy::Programs data type.
+
+Alias of
+
+```puppet
+Hash[String, Struct[{
+ command => String[1],
+ Optional[user] => String[1],
+ Optional[group] => String[1],
+ Optional[options] => String[1],
+ Optional[instance] => String[1],
+ Optional[config_file] => Stdlib::Absolutepath,
+}]]
+```
+
diff --git a/metadata.json b/metadata.json
index a58ddfd0..16ee9899 100644
--- a/metadata.json
+++ b/metadata.json
@@ -1,6 +1,6 @@
{
"name": "puppetlabs-haproxy",
- "version": "9.0.0",
+ "version": "9.1.0",
"author": "puppetlabs",
"summary": "Configures HAProxy servers and manages the configuration of backend member servers.",
"license": "Apache-2.0",