Sha256: ca1b42fc74b4b7e3b78b909278b96cb260e62f7a1adbdea7c045ac3f99971634

Contents?: true

Size: 668 Bytes

Versions: 6

Compression:

Stored size: 668 Bytes

Contents

require 'albacore/support/albacore_helper'
require 'zip/zip'
require 'zip/zipfilesystem'
include Zip

class Unzip
  include YAMLConfig
  include Failure
  
  attr_accessor :unzip_path, :zip_file

  def initialize
    super()
  end
    
  def unzip()
    fail_with_message 'Zip File cannot be empty' if @zip_file.nil?
    return if @zip_file.nil?
  
    Zip::ZipFile.open(@zip_file) do |zip_file|
        zip_file.each do |file|
           out_path = File.join(@unzip_path, file.name)
           FileUtils.mkdir_p(File.dirname(out_path))
           zip_file.extract(file, out_path) unless File.exist?(out_path)
        end
      end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
albacore-0.1.5 lib/albacore/unzip.rb
albacore-0.1.4 lib/albacore/unzip.rb
albacore-0.1.3 lib/albacore/unzip.rb
albacore-0.1.2 lib/albacore/unzip.rb
albacore-0.1.1 lib/albacore/unzip.rb
albacore-0.1.0 lib/albacore/unzip.rb