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_from_archive(archive, name_regex) ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/puppet_forge_server/utils/archiver.rb', line 22 def read_from_archive(archive, name_regex) tar = Gem::Package::TarReader.new(Zlib::GzipReader.open(archive)) tar.rewind files = {} tar.each do |obj| files[obj.full_name] = obj.read if obj.file? && obj.full_name =~ name_regex end return files unless files.empty? raise "Given name #{name_regex} not found in #{archive}" end |