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
 5 def initialize(options)
 6   @requested_name    = options[:requested_name]
 7   @requested_version = options[:requested_version]
 8   @installed_version = options[:installed_version]
 9   @conditions        = options[:conditions]
10   @action            = options[:action]
11   @unsatisfied       = options[:unsatisfied]
12 
13   super _("Could not %{action} '%{module_name}' (%{version}); no version satisfies all dependencies") % { action: @action, module_name: @requested_name, version: vstring }
14 end

Public Instance Methods

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