Class: PuppetLibrary::Archive::ArchiveReader

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet_library/archive/archive_reader.rb

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ ArchiveReader

Returns a new instance of ArchiveReader.



22
23
24
# File 'lib/puppet_library/archive/archive_reader.rb', line 22

def initialize(path)
    @path = path
end

Instance Method Details

#read_entry(entry_name_regex) ⇒ Object



26
27
28
29
30
31
# File 'lib/puppet_library/archive/archive_reader.rb', line 26

def read_entry(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