Module: Hadupils::Util
- Defined in:
- lib/hadupils/util.rb
Class Method Summary collapse
Class Method Details
.archive_has_directory?(archive_path, directory) ⇒ Boolean
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/hadupils/util.rb', line 14 def self.archive_has_directory?(archive_path, directory) directory = directory + '/' unless directory.end_with?('/') targets = [directory[0..-2], directory] found = false read_archive(archive_path) do |arch| arch.each do |entry| found = (entry.directory? and targets.include?(entry.full_name)) break if found end end found end |
.read_archive(archive_path) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/hadupils/util.rb', line 5 def self.read_archive(archive_path) Zlib::GzipReader.open(archive_path) do |zlib| Gem::Package::TarReader.new(zlib) do |tar| tar.rewind yield tar end end end |