Merge "Disable all hiera override yamls for globals"

This commit is contained in:
Jenkins 2016-07-19 13:35:14 +00:00 committed by Gerrit Code Review
commit 83b43202d1
3 changed files with 13 additions and 2 deletions

View File

@ -24,6 +24,12 @@ Puppet::Type.type(:hiera_config).provide(:ruby) do
resource[:override_dir].to_s
end
# Add to the end of each override file
# Commonly used to stop plugins contamitaing globals
def override_suffix
resource[:override_suffix].to_s
end
# the path to the Hiera config file
# @return [String]
def config_file
@ -47,7 +53,7 @@ Puppet::Type.type(:hiera_config).provide(:ruby) do
@override_metadata_elements = []
data['plugins'].each do |plugin|
next unless plugin['name']
@override_metadata_elements << File.join(override_dir_name, plugin['name'].to_s)
@override_metadata_elements << File.join(override_dir_name, plugin['name'].to_s) + override_suffix
end
@override_metadata_elements.sort!
debug "Found plugins hierarchy elements in '#{resource[:metadata_yaml_file]}': #{@override_metadata_elements.inspect}"
@ -63,7 +69,7 @@ Puppet::Type.type(:hiera_config).provide(:ruby) do
dir_entries(override_dir_path).each do |file|
next unless file.end_with? '.yaml'
file = file.gsub /\.yaml$/, ''
@override_directory_elements << File.join(override_dir_name, file)
@override_directory_elements << File.join(override_dir_name, file) + override_suffix
end
@override_directory_elements.sort!
debug "Found override hierarchy elements: #{@override_directory_elements.inspect}"

View File

@ -15,6 +15,10 @@ Puppet::Type.newtype(:hiera_config) do
defaultto 'plugins'
end
newparam(:override_suffix) do
desc 'Add suffix to all override files'
end
newparam(:metadata_yaml_file) do
desc 'Look inside this YAML file for the list of enabled plugins.
If this value is not defined or no file is present the list

View File

@ -42,6 +42,7 @@ class osnailyfacter::hiera::hiera {
data_dir => $data_dir,
hierarchy => $data,
override_dir => $override_dir,
override_suffix => '%{disable_globals_yaml}',
metadata_yaml_file => $metadata_file,
merge_behavior => 'deeper',
}