Reduce template abstraction and add documentation

Modify the handling of the `servers` property in `bind::view` to respond to
specific keys in the config hash for each server, and document how this
property is handled.
This commit is contained in:
Nate Riffe
2015-09-23 07:18:23 -05:00
parent 8005dfa7d9
commit 2f2e971efd
2 changed files with 32 additions and 7 deletions
+8 -7
View File
@@ -34,14 +34,15 @@ view "<%= @name %>" {
};
<%- end -%>
<%- end -%>
<%- if @server -%>
<%- @server.each_pair do |srv, srv_values| -%>
server <%= srv %> {
<%- Array(srv_values).each do |srv_value| -%>
<%= srv_value %>;
<%- end -%>
<%- if @servers and @servers.is_a?(Array) -%>
<%- @servers.each do |properties| -%>
<%- raise Puppet::Error, 'view servers must have an ip_addr key' unless properties.has_key?('ip_addr') -%>
server <%= properties['ip_addr'] %> {
<%- if properties.has_key?('keys') and properties['keys'] != '' -%>
keys { <%= properties['keys'] %>; };
<%- end -%>
};
<%- end -%>
<%- end -%>
<%- end -%>
<%- if scope.lookupvar('osfamily') == 'Debian' -%>
include "<%= @confdir %>/named.conf.default-zones";