X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fload_module_metadata.rb;h=79d98cdd86c7db4e5ccc86db3bfe386659ae4022;hb=30caaa85aed7015ca0d77216bff175eebd917eb7;hp=c9b84885b2cf955e7346d9e30b8fa0f0bd7a1316;hpb=6963202b4b62c2816655ac9532521b018fdf83bd;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/lib/puppet/parser/functions/load_module_metadata.rb b/3rdparty/modules/stdlib/lib/puppet/parser/functions/load_module_metadata.rb index c9b84885b..79d98cdd8 100644 --- a/3rdparty/modules/stdlib/lib/puppet/parser/functions/load_module_metadata.rb +++ b/3rdparty/modules/stdlib/lib/puppet/parser/functions/load_module_metadata.rb @@ -1,22 +1,31 @@ +# +# load_module_metadata.rb +# module Puppet::Parser::Functions - newfunction(:load_module_metadata, :type => :rvalue, :doc => <<-EOT - EOT - ) do |args| - raise(Puppet::ParseError, "load_module_metadata(): Wrong number of arguments, expects one or two") unless [1,2].include?(args.size) + newfunction(:load_module_metadata, :type => :rvalue, :doc => <<-DOC + @summary + This function loads the metadata of a given module. + + @example Example USage: + $metadata = load_module_metadata('archive') + notify { $metadata['author']: } + + @return + The modules metadata + DOC + ) do |args| + raise(Puppet::ParseError, 'load_module_metadata(): Wrong number of arguments, expects one or two') unless [1, 2].include?(args.size) mod = args[0] allow_empty_metadata = args[1] module_path = function_get_module_path([mod]) metadata_json = File.join(module_path, 'metadata.json') - metadata_exists = File.exists?(metadata_json) + metadata_exists = File.exists?(metadata_json) # rubocop:disable Lint/DeprecatedClassMethods : Changing to .exist? breaks the code if metadata_exists metadata = PSON.load(File.read(metadata_json)) else - if allow_empty_metadata - metadata = {} - else - raise(Puppet::ParseError, "load_module_metadata(): No metadata.json file for module #{mod}") - end + metadata = {} + raise(Puppet::ParseError, "load_module_metadata(): No metadata.json file for module #{mod}") unless allow_empty_metadata end return metadata