Class: PuppetLibrary::Forge::Directory
- Inherits:
-
Abstract
- Object
- Abstract
- PuppetLibrary::Forge::Directory
show all
- Defined in:
- lib/puppet_library/forge/directory.rb
Instance Method Summary
collapse
Methods inherited from Abstract
#collect_dependencies_versions, #get_module_buffer, #get_module_metadata, #get_module_metadata_with_dependencies, #retrieve_all_metadata, #retrieve_metadata, #search_modules
Constructor Details
#initialize(module_dir) ⇒ Directory
Returns a new instance of Directory.
23
24
25
26
27
28
|
# File 'lib/puppet_library/forge/directory.rb', line 23
def initialize(module_dir)
super(self)
raise "Module directory '#{module_dir}' doesn't exist" unless File.directory? module_dir
raise "Module directory '#{module_dir}' isn't readable" unless File.executable? module_dir
@module_dir = module_dir
end
|
Instance Method Details
48
49
50
|
# File 'lib/puppet_library/forge/directory.rb', line 48
def get_all_metadata
get_metadata
end
|
40
41
42
43
44
45
46
|
# File 'lib/puppet_library/forge/directory.rb', line 40
def get_metadata(author = "*", module_name = "")
Dir["#{@module_dir}/#{author}-#{module_name}*"].map do |module_path|
archive = PuppetLibrary::Archive::ArchiveReader.new(module_path)
metadata_file = archive.read_entry %r[[^/]+/metadata\.json$]
JSON.parse(metadata_file)
end
end
|
#get_module(author, name, version) ⇒ Object
30
31
32
33
34
35
36
37
38
|
# File 'lib/puppet_library/forge/directory.rb', line 30
def get_module(author, name, version)
file_name = "#{author}-#{name}-#{version}.tar.gz"
path = File.join(File.expand_path(@module_dir), file_name)
if File.exist? path
File.open(path, 'r')
else
nil
end
end
|