Module: PuppetForgeServer::Utils::Archiver

Included in:
Backends::Directory
Defined in:
lib/puppet_forge_server/utils/archiver.rb

Instance Method Summary collapse

Instance Method Details

#read_entry(path, entry_name_regex) ⇒ Object



22
23
24
25
26
27
# File 'lib/puppet_forge_server/utils/archiver.rb', line 22

def read_entry(path, entry_name_regex)
  tar = Gem::Package::TarReader.new(Zlib::GzipReader.open(path))
  tar.rewind
  entry = tar.find { |e| e.full_name =~ entry_name_regex } or raise "Couldn't find entry in archive matching #{entry_name_regex.inspect}"
  entry.read
end