Defined Type: cd_haproxy::server::proxy

Defined in:
manifests/server/proxy.pp

Summary

Define manages the proxies for cd_haproxy.

Overview

cd_haproxy::server::proxy.pp Module name: cd_haproxy Author: Arne Teuke (arne_teuke@ConfDroid.com)

License:

This file is part of cd_haproxy.

cd_haproxy is used for providing automatic configuration of HAProxy Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see www.gnu.org/licenses/.

Parameters:

  • frontend_name (string) (defaults to: undef)

    the name for the frontend section rule.

  • frontend_order (string) (defaults to: '010')

    the order where the concet should appear in the file.

  • frontend_mode (Any) (defaults to: undef)
  • fe_use_backend (Any) (defaults to: '')
  • fe_bind_mode (Any) (defaults to: '*:80')
  • acl_rule (Any) (defaults to: '')
  • acl_order (Any) (defaults to: '020')
  • backend_name (Any) (defaults to: undef)
  • backend_order (Any) (defaults to: '030')


26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'manifests/server/proxy.pp', line 26

define cd_haproxy::server::proxy (

$frontend_name    = undef,
$frontend_mode    = undef,
$fe_use_backend   = '',
$fe_bind_mode     = '*:80',
$frontend_order   = '010',
$acl_rule         = '',
$acl_order        = '020',
$backend_name     = undef,
$backend_order    = '030',

) {

$hy_main_config   = '/etc/haproxy/haproxy.cfg'
$hy_frontendrule  = 'cd_haproxy/haproxy_frontend_rule.erb'
$hy_backendrule   = 'cd_haproxy/haproxy_backend_rule.erb'
$hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'

  # create frontend section
  concat::fragment { "frontend_${name}":
    target  =>  $hy_main_config,
    content =>  template($hy_frontendrule),
    order   =>  $frontend_order,
  }

  # create acl section
  concat::fragment { "acl_${name}":
    target  =>  $hy_main_config,
    content =>  template($hy_acl_rule),
    order   =>  $acl_order,
  }

  # create backend section
  concat::fragment { "backend_${name}":
    target  =>  $hy_main_config,
    content =>  template($hy_backendrule),
    order   =>  $backend_order,
  }
}