class Puppet::ModuleTool::Errors::NoVersionsSatisfyError

Public Class Methods

new(options) click to toggle source
Calls superclass method Puppet::Error::new
   # File lib/puppet/module_tool/errors/shared.rb
 4 def initialize(options)
 5   @requested_name    = options[:requested_name]
 6   @requested_version = options[:requested_version]
 7   @installed_version = options[:installed_version]
 8   @conditions        = options[:conditions]
 9   @action            = options[:action]
10   @unsatisfied       = options[:unsatisfied]
11 
12   super _("Could not %{action} '%{module_name}' (%{version}); no version satisfies all dependencies") % { action: @action, module_name: @requested_name, version: vstring }
13 end

Public Instance Methods

multiline() click to toggle source
   # File lib/puppet/module_tool/errors/shared.rb
15 def multiline
16   message = []
17   message << _("Could not %{action} module '%{module_name}' (%{version})") % { action: @action, module_name: @requested_name, version: vstring }
18 
19   if @unsatisfied
20     message << _("  The requested version cannot satisfy one or more of the following installed modules:")
21     if @unsatisfied[:current_version]
22       message << _("    %{name}, installed: %{current_version}, expected: %{constraints}") % { name: @unsatisfied[:name], current_version: @unsatisfied[:current_version], constraints: @unsatisfied[:constraints][@unsatisfied[:name]] }
23     else
24       @unsatisfied[:constraints].each do |mod, range|
25         message << _("    %{mod}, expects '%{name}': %{range}") % { mod: mod, name: @requested_name, range: range }
26       end
27     end
28     message << _("")
29   else
30     message << _("  The requested version cannot satisfy all dependencies")
31   end
32 
33   #TRANSLATORS `puppet module %{action} --ignore-dependencies` is a command line and should not be translated
34   message << _("  Use `puppet module %{action} '%{module_name}' --ignore-dependencies` to %{action} only this module") % { action: @action, module_name: @requested_name }
35   message.join("\n")
36 end