class Puppet::ModuleTool::Errors::ModuleIsRequiredError

Public Class Methods

new(options) click to toggle source
Calls superclass method Puppet::Error::new
   # File lib/puppet/module_tool/errors/uninstaller.rb
26 def initialize(options)
27   @module_name       = options[:module_name]
28   @required_by       = options[:required_by]
29   @requested_version = options[:requested_version]
30   @installed_version = options[:installed_version]
31 
32   super _("Could not uninstall '%{module_name}'; installed modules still depend upon it") % { module_name: @module_name }
33 end

Public Instance Methods

multiline() click to toggle source
   # File lib/puppet/module_tool/errors/uninstaller.rb
35 def multiline
36   message = []
37   if @requested_version
38     message << _("Could not uninstall module '%{module_name}' (v%{requested_version})") % { module_name: @module_name, requested_version: @requested_version }
39   else
40     message << _("Could not uninstall module '%{module_name}'") % { module_name: @module_name }
41   end
42   message << _("  Other installed modules have dependencies on '%{module_name}' (%{version})") % { module_name: @module_name, version: v(@installed_version) }
43   message += @required_by.map do |mod|
44     _("    '%{module_name}' (%{version}) requires '%{module_dep}' (%{dep_version})") % { module_name: mod['name'], version: v(mod['version']), module_dep: @module_name, dep_version: v(mod['version_requirement']) }
45   end
46   #TRANSLATORS `puppet module uninstall --force` is a command line option that should not be translated
47   message << _("    Use `puppet module uninstall --force` to uninstall this module anyway")
48   message.join("\n")
49 end