class Puppet::ModuleTool::InstalledModules::ModuleRelease

Attributes

metadata[R]
mod[R]

Public Class Methods

new(source, mod) click to toggle source
Calls superclass method
   # File lib/puppet/module_tool/installed_modules.rb
57 def initialize(source, mod)
58   @mod = mod
59   @metadata = mod.metadata
60   name = mod.forge_name.tr('/', '-')
61   begin
62     version = SemanticPuppet::Version.parse(mod.version)
63   rescue SemanticPuppet::Version::ValidationFailure
64     Puppet.warning _("%{module_name} (%{path}) has an invalid version number (%{version}). The version has been set to 0.0.0. If you are the maintainer for this module, please update the metadata.json with a valid Semantic Version (http://semver.org).") % { module_name: mod.name, path: mod.path, version: mod.version }
65     version = SemanticPuppet::Version.parse("0.0.0")
66   end
67   release = "#{name}@#{version}"
68 
69   super(source, name, version, {})
70 
71   if mod.dependencies
72     mod.dependencies.each do |dependency|
73       results = Puppet::ModuleTool.parse_module_dependency(release, dependency)
74       dep_name, parsed_range, range = results
75 
76       add_constraint('initialize', dep_name, range.to_s) do |node|
77         parsed_range === node.version
78       end
79     end
80   end
81 end

Public Instance Methods

install(dir) click to toggle source
   # File lib/puppet/module_tool/installed_modules.rb
87 def install(dir)
88   # If we're already installed, there's no need for us to faff about.
89 end
install_dir() click to toggle source
   # File lib/puppet/module_tool/installed_modules.rb
83 def install_dir
84   Pathname.new(@mod.path).dirname
85 end
prepare() click to toggle source
   # File lib/puppet/module_tool/installed_modules.rb
91 def prepare
92   # We're already installed; what preparation remains?
93 end