Class: PuppetLibrary::Archive::Archiver::TarEntry

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

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(file) ⇒ TarEntry

Returns a new instance of TarEntry.



76
77
78
# File 'lib/puppet_library/archive/archiver.rb', line 76

def initialize(file)
    @file = file
end

Class Method Details

.from(file) ⇒ Object



72
73
74
# File 'lib/puppet_library/archive/archiver.rb', line 72

def self.from(file)
    TarEntry.new(file)
end

Instance Method Details

#add_to!(tar, entry_name) ⇒ Object



80
81
82
83
84
85
86
87
88
89
# File 'lib/puppet_library/archive/archiver.rb', line 80

def add_to!(tar, entry_name)
    mode = File.stat(@file).mode
    if File.directory?(@file)
        tar.mkdir(entry_name, mode)
    else
        tar.add_file(entry_name, mode) do |entry|
            File.open(@file, "rb") { |file| entry.write file.read }
        end
    end
end