X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fget_module_path.rb;fp=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fget_module_path.rb;h=3ec6ccd3c606f24ee8b4a51623e9fb4917d2e731;hb=131e09855e065be940e104d9ab0f18940cc76257;hp=1421b91f52f0244fee66a2515722da441e76795f;hpb=407d322498f4fde815abf381007fbecfe5c10b2b;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/lib/puppet/parser/functions/get_module_path.rb b/3rdparty/modules/stdlib/lib/puppet/parser/functions/get_module_path.rb index 1421b91f5..3ec6ccd3c 100644 --- a/3rdparty/modules/stdlib/lib/puppet/parser/functions/get_module_path.rb +++ b/3rdparty/modules/stdlib/lib/puppet/parser/functions/get_module_path.rb @@ -1,17 +1,21 @@ +# +# get_module_path.rb +# module Puppet::Parser::Functions - newfunction(:get_module_path, :type =>:rvalue, :doc => <<-EOT + newfunction(:get_module_path, :type => :rvalue, :doc => <<-DOC Returns the absolute path of the specified module for the current environment. Example: $module_path = get_module_path('stdlib') - EOT - ) do |args| - raise(Puppet::ParseError, "get_module_path(): Wrong number of arguments, expects one") unless args.size == 1 - if module_path = Puppet::Module.find(args[0], compiler.environment.to_s) - module_path.path - else - raise(Puppet::ParseError, "Could not find module #{args[0]} in environment #{compiler.environment}") - end + + Note that since Puppet 5.4.0 the function `module_directory()` in Puppet does the same thing and will return + the path to the first found module if given multiple values or an array. + DOC + ) do |args| + raise(Puppet::ParseError, 'get_module_path(): Wrong number of arguments, expects one') unless args.size == 1 + module_path = Puppet::Module.find(args[0], compiler.environment.to_s) + raise(Puppet::ParseError, "Could not find module #{args[0]} in environment #{compiler.environment}") unless module_path + module_path.path end end