fuel-plugin-detach-haproxy/deployment_scripts/puppet/manifests/add_to_hiera.pp

49 lines
1.1 KiB
Puppet

notice('MODULAR: detach-haproxy/add_to_hiera.pp')
$plugin_name = 'detach_haproxy'
$network_metadata = hiera_hash('network_metadata', {})
$haproxy_roles = ['primary-standalone-haproxy', 'standalone-haproxy']
$haproxy_nodes = get_nodes_hash_by_roles($network_metadata, $haproxy_roles)
$mgmt_ip = $network_metadata['vips']['haproxy']['ipaddr']
$public_ip = $network_metadata['vips']['haproxy_public']['ipaddr']
if roles_include($haproxy_roles){
$haproxy = true
} else {
$haproxy = false
}
file {"/etc/hiera/plugins/${plugin_name}.yaml":
ensure => file,
content => inline_template("# Created by puppet, please do not edit manually
network_metadata:
vips:
<% unless @haproxy -%>
haproxy:
namespace: false
haproxy_public:
namespace: false
<% end -%>
management:
ipaddr: <%= @mgmt_ip %>
<% if @haproxy -%>
namespace: haproxy
<% else -%>
namespace: false
<% end -%>
public:
ipaddr: <%= @public_ip %>
<% if @haproxy -%>
namespace: haproxy
<% else -%>
namespace: false
<% end -%>
<% if @haproxy -%>
corosync_roles: <%= @haproxy_roles %>
<% end -%>
run_ping_checker: false
")
}