class Dpl::Zip
Constants
- ZIP_EXT
Public Class Methods
new(*)
click to toggle source
Calls superclass method
# File lib/dpl/helper/zip.rb, line 9 def initialize(*) require 'zip' super end
Public Instance Methods
copy()
click to toggle source
# File lib/dpl/helper/zip.rb, line 49 def copy FileUtils.cp(src, dest) end
create(files)
click to toggle source
# File lib/dpl/helper/zip.rb, line 32 def create(files) ::Zip::File.open(dest, ::Zip::File::CREATE) do |zip| files.each do |file| zip.add(file.sub("#{src}/", ''), file) end end File.new(dest) end
dir?(path = src)
click to toggle source
# File lib/dpl/helper/zip.rb, line 45 def dir?(path = src) File.directory?(path) end
dot_match?()
click to toggle source
# File lib/dpl/helper/zip.rb, line 59 def dot_match? opts[:dot_match] end
exts()
click to toggle source
# File lib/dpl/helper/zip.rb, line 63 def exts opts[:exts] ||= ZIP_EXT end
glob()
click to toggle source
# File lib/dpl/helper/zip.rb, line 53 def glob glob = ["#{src}/**/*"] glob << File::FNM_DOTMATCH if dot_match? glob end
opts()
click to toggle source
Calls superclass method
# File lib/dpl/helper/zip.rb, line 67 def opts super || {} end
zip()
click to toggle source
# File lib/dpl/helper/zip.rb, line 14 def zip if zip_file? File.new(src) elsif dir? zip_dir else zip_file end end
zip_dir()
click to toggle source
# File lib/dpl/helper/zip.rb, line 24 def zip_dir create(Dir.glob(*glob).reject { |path| dir?(path) }) end
zip_file()
click to toggle source
# File lib/dpl/helper/zip.rb, line 28 def zip_file create([src]) end
zip_file?()
click to toggle source
# File lib/dpl/helper/zip.rb, line 41 def zip_file? exts.include?(File.extname(src)) end