Sha256: 16e25efe0d6677f7406292d36e531335b9f678d0d51c741bec6938cfb770ab3a
Contents?: true
Size: 944 Bytes
Versions: 3
Compression:
Stored size: 944 Bytes
Contents
require "fileutils" module Mandy class Packer TMP_DIR = '/tmp/mandy' MANDY_DIR = File.expand_path(File.join(File.dirname(__FILE__), '..')) def self.pack(script, dir, gemfile=nil) tmp_path = "#{TMP_DIR}/packed-job-#{Time.now.to_i}" FileUtils.mkdir_p(tmp_path) to_be_copied = File.file?(dir) ? dir : File.join(dir, '*') FileUtils.cp(script, tmp_path) FileUtils.cp(File.join(MANDY_DIR, 'VERSION'), tmp_path) FileUtils.cp_r(Dir.glob(to_be_copied), tmp_path) if gemfile and File.exists?(gemfile) FileUtils.cp(gemfile, File.join(tmp_path, 'geminstaller.yml')) else FileUtils.cp(File.join(MANDY_DIR, 'geminstaller.yml'), tmp_path) end Dir.chdir(tmp_path) { `tar -cf bundle.tar *` } File.join(tmp_path, 'bundle.tar') end def self.cleanup!(file) return false unless File.extname(file) == '.tar' `rm #{file}` end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mandy-0.4.99 | lib/packer.rb |
mandy-0.4.98 | lib/packer.rb |
mandy-0.4.97 | lib/packer.rb |