class Inspec::Archive::TarArchiveGenerator
Public Instance Methods
archive(base_dir, files, archive)
click to toggle source
# File lib/inspec/archive/tar.rb, line 5 def archive(base_dir, files, archive) File.open(archive, "wb") do |file| Zlib::GzipWriter.wrap(file) do |gz| Gem::Package::TarWriter.new(gz) do |tar| files.each do |input_filename| path = Pathname.new(base_dir).join(input_filename) stat = File.stat(path) if path.directory? tar.mkdir(input_filename, stat.mode) else tar.add_file_simple(input_filename, stat.mode, stat.size) do |io| io.write(File.binread(path)) end end end end end end end