Class: Puppet::ModuleTool::Tar::Mini

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet/module_tool/tar/mini.rb

Instance Method Summary collapse

Constructor Details

#initialize(module_name) ⇒ Mini

Returns a new instance of Mini.



2
3
4
# File 'lib/puppet/module_tool/tar/mini.rb', line 2

def initialize(module_name)
  @module_name = module_name
end

Instance Method Details

#pack(sourcedir, destfile) ⇒ Object



20
21
22
23
24
# File 'lib/puppet/module_tool/tar/mini.rb', line 20

def pack(sourcedir, destfile)
  Zlib::GzipWriter.open(destfile) do |writer|
    Archive::Tar::Minitar.pack(sourcedir, writer)
  end
end

#unpack(sourcefile, destdir, _) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/puppet/module_tool/tar/mini.rb', line 6

def unpack(sourcefile, destdir, _)
  Zlib::GzipReader.open(sourcefile) do |reader|
    Archive::Tar::Minitar.unpack(reader, destdir) do |action, name, stats|
      case action
      when :file_done
        File.chmod(0444, "#{destdir}/#{name}")
      when :dir, :file_start
        validate_entry(destdir, name)
        Puppet.debug("extracting #{destdir}/#{name}")
      end
    end
  end
end