Puppet 4 evaluates the bind_options empty string value as `true` where this would be `false` in Puppet 3. This change prevents warnings in Puppet 4.
Merge pull request #191 from mlehner616/bind_options
prevent warning on puppet 4
Update examples to use seconds (default is ms)
😒 - the value specified for 'timeout client' is in ms if unit suffix is not provided: https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#4-timeout%20client (:joy: this took me forever to figure out why ssl connections failed...)
Merge pull request #194 from DavidS/allow-defaults-file-override
Allow the contents of /etc/default/haproxy to be overridden
Merge pull request #193 from icg-puppet/hotfix-timeout-client-is-in-ms
(MODULES-2431) Update examples to use seconds (default is ms)
Merge pull request #199 from puppetlabs/1.3.x
Merge 1.3.x back to master
(MODULES-2704) Consistent use of ::haproxy::config_file
Previously
```puppet
haproxy{'whatever':
config_file => /tmp/haproxy.cfg
}
haproxy::peers{'mypeers':}
haproxy::peer{'peerA':
peers_name => 'mypeers',
port => 5000,
ipaddresses => ['1.2.3.4','5.6.7.8],
server_names => ['a.example.org','b.example.org']
}
```
would fail since haproxy:peer and peers were
hardcoded to use */etc/haproxy/haproxy.cfg*
haproxy::config_file is now respected consistently
throughout the module.
https://tickets.puppetlabs.com/browse/MODULES-2704Merge pull request #201 from traylenator/config_file
(MODULES-2704) Consistent use of ::haproxy::config_file
Merge global and default options with user-supplied options
This way one can override or add arbitrary keys and values to the `global_options` and `defaults_options` hashes without having to reproduce the whole hash. This is done by merging the default hashes for `global_options` and `defaults_options` specified in `haproxy::params` with their pendants specified as the class parameters. Values supplied by the user will "win" over any default values from `haproxy::params`. Uses the `merge()` function from puppetlabs-stdlib. The merging behaviour is currently optional and can be toggled by setting `haproxy::merge_options => true`. This will be the default in the next major release. Also allows "unsetting" default values from `haproxy::params` by setting the parameter's value to Puppet's `undef`. Parameters set thus will not appear in the resulting configuration file. Contains updated spec tests and documentation. Discussed in PR #121.
Merge pull request #202 from antaflos/merge-defaults-and-global-optio…
…ns-with-defaults Merge global and default options with user-supplied options
Match only on strings because ruby1.8--
Ruby 1.8 doesn't have `.match` for symbols; 1.8 EOL but is still the packaged version that ships with EL6 so some users are still hitting this bug.
Merge pull request #205 from hunner/fix_match
Match only on strings because ruby1.8--
Add haproxy::instance for the creation of multiple instances of hapro…
…xy on a host. See [MODULES-1783] * New Define Resource Type: haproxy::instance * New Define Resource Type: haproxy::instance_service * Class[haproxy] is now a wrapper that calls haproxy::instance * Add "instance" parameter to all public defines. * All private classes become private defined resource types. * "inherts params" no longer used for classes that are now defines * Documentation updated, examples added * Spec tests updated and new tests added * Upgrade to stdlib 3.2.0 * Upgrade to concat 1.2.3
Add haproxy::instance for the creation of multiple instances of hapro…
…xy on a host. See [MODULES-1783] * New Define Resource Type: haproxy::instance * New Define Resource Type: haproxy::instance_service * Class[haproxy] is now a wrapper that calls haproxy::instance * Add "instance" parameter to all public defines. * All private classes become private defined resource types. * "inherts params" no longer used for classes that are now defines * Documentation updated, examples added * Spec tests updated and new tests added * Upgrade to stdlib 3.2.0 * Upgrade to concat 1.2.3
Merge pull request #166 from StackExchange/multiple_instances
Add haproxy::instance for the creation of multiple instances of haproxy
Validate global_options and defaults_options.
* validate_hash() global_options and defaults_options * Add spec tests to verify that non-hash values produce errors * Add spec test to verify functionality of non-merge behavior
Fix port parameter name on haproxy::peer defined type
This is bug, documentation says "ports", but source code says "port" :)
Merge pull request #207 from tlimoncelli/validate_hash_options
Validate global_options and defaults_options.
Merge pull request #208 from arteal/patch-1
Fix port parameter name on haproxy::peer defined type
Add support for managing map files
Add a defined type haproxy::mapfile to manage map files as documented in https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#7.3.1-map A map file contains one key + value pair per line. These mappings are modelled in a `mappings` array, whose elements may either be Hashes with a single key-value pair each or simple Strings. Contains updated documentation and spec tests for the new defined type.
Fix determining $haproxy::config_dir in haproxy::instance
The haproxy::mapfile define requires that File[$haproxy::config_dir] is managed (because that's where the map files live) but the way a single-instance HAProxy deployment is created ignores the class parameter $haproxy::config_dir (which is set according to platform by default). This can result in a failing Puppet run because the config dir doesn't (yet) exist when the map files are written. This also means for osfamily == Gentoo we no longer need to explicitly create /etc/haproxy (= $haproxy::config_dir).
Remove ssl-hello-chk from default options
The operating system versions supported by this module which have haproxy in their distribution are still shipping Haproxy 1.5.x or 1.4.x. Those versions of Haproxy perform an SSL HELLO check with SSLv3, which is disabled on most services due to BEAST and POODLE vulnerabilities. This causes connection failures that new users will find hard to debug. For example, setting up a simple set of load-balanced compile masters in Puppet Enterprise 2015.2.x will fail since PE does not allow SSLv3.
Merge pull request #200 from jpadams/master
Remove ssl-hello-chk from default options
Merge pull request #203 from antaflos/support-maps
Add support for managing map files
Merge pull request #214 from HelenCampbell/1.4.x
Version 1.4.0 of haproxy