aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/haproxy.pp
diff options
context:
space:
mode:
authorMichele Baldessari <michele@acksyn.org>2017-04-19 12:56:46 +0200
committerMichele Baldessari <michele@acksyn.org>2017-04-19 12:58:35 +0200
commit84d3a82476ffe2853a734be1d9403f2ab41dbf35 (patch)
treeb449c9ffbfa0db318a9d340a0fc9356cae63eb4c /manifests/haproxy.pp
parent97aac6a58c30d044cc04f67829d74c98f56d28ba (diff)
Allow to configure haproxy daemon's status
Currently we hard-code the fact that haproxy starts as a daemon. When running haproxy in a container we need this to be configurable because the haproxy process will be pid number 1. We are not changing the current semantics which have the 'daemon' option always set, but we are allowing its disabling. Change-Id: I51c482b70731f15fee4025bbce14e46a49a49938
Diffstat (limited to 'manifests/haproxy.pp')
-rw-r--r--manifests/haproxy.pp41
1 files changed, 27 insertions, 14 deletions
diff --git a/manifests/haproxy.pp b/manifests/haproxy.pp
index a6bd1eb..9ac0aa3 100644
--- a/manifests/haproxy.pp
+++ b/manifests/haproxy.pp
@@ -49,6 +49,10 @@
# The IPv4, IPv6 or filesystem socket path of the syslog server.
# Defaults to '/dev/log'
#
+# [*haproxy_daemon*]
+# Should haproxy run in daemon mode or not
+# Defaults to true
+#
# [*controller_hosts*]
# IPs of host or group of hosts to load-balance the services
# Can be a string or an array.
@@ -539,6 +543,7 @@ class tripleo::haproxy (
$haproxy_listen_bind_param = [ 'transparent' ],
$haproxy_member_options = [ 'check', 'inter 2000', 'rise 2', 'fall 5' ],
$haproxy_log_address = '/dev/log',
+ $haproxy_daemon = true,
$haproxy_stats_user = 'admin',
$haproxy_stats_password = undef,
$controller_hosts = hiera('controller_node_ips'),
@@ -797,22 +802,30 @@ class tripleo::haproxy (
"${redis_vip}:6379" => $haproxy_listen_bind_param,
}
+ $haproxy_global_options = {
+ 'log' => "${haproxy_log_address} local0",
+ 'pidfile' => '/var/run/haproxy.pid',
+ 'user' => 'haproxy',
+ 'group' => 'haproxy',
+ 'maxconn' => $haproxy_global_maxconn,
+ 'ssl-default-bind-ciphers' => $ssl_cipher_suite,
+ 'ssl-default-bind-options' => $ssl_options,
+ 'stats' => [
+ 'socket /var/lib/haproxy/stats mode 600 level user',
+ 'timeout 2m'
+ ],
+ }
+ if $haproxy_daemon == true {
+ $haproxy_daemonize = {
+ 'daemon' => '',
+ }
+ } else {
+ $haproxy_daemonize = {}
+ }
+
class { '::haproxy':
service_manage => $haproxy_service_manage,
- global_options => {
- 'log' => "${haproxy_log_address} local0",
- 'pidfile' => '/var/run/haproxy.pid',
- 'user' => 'haproxy',
- 'group' => 'haproxy',
- 'daemon' => '',
- 'maxconn' => $haproxy_global_maxconn,
- 'ssl-default-bind-ciphers' => $ssl_cipher_suite,
- 'ssl-default-bind-options' => $ssl_options,
- 'stats' => [
- 'socket /var/lib/haproxy/stats mode 600 level user',
- 'timeout 2m'
- ],
- },
+ global_options => merge($haproxy_global_options, $haproxy_daemonize),
defaults_options => {
'mode' => 'tcp',
'log' => 'global',