class FPM::Fry::Source::Archive::TarCache
Public Instance Methods
copy_to(dst)
click to toggle source
# File lib/fpm/fry/source/archive.rb, line 156 def copy_to(dst) update! Exec['tar','-xf',tempfile,'-C',dst, logger: logger] end
prefix()
click to toggle source
# File lib/fpm/fry/source/archive.rb, line 161 def prefix update! @prefix ||= prefix! end
prefix!()
click to toggle source
# File lib/fpm/fry/source/archive.rb, line 166 def prefix! longest = nil Exec.popen('tar','-tf',tempfile, logger: logger).each_line.map do |line| line = line.chomp parts = line.split('/') parts.pop unless line[-1] == '/' if longest.nil? longest = parts else longest.each_with_index do | e, i | if parts[i] != e longest = longest[0...i] break end end break if longest.none? end end return Array(longest).join('/') end
tar_io()
click to toggle source
# File lib/fpm/fry/source/archive.rb, line 151 def tar_io update! ioclass.open(tempfile) end
Protected Instance Methods
ioclass()
click to toggle source
# File lib/fpm/fry/source/archive.rb, line 188 def ioclass File end