Sha256: 1ef6520339423494a44d33ec10d86f4cf528a25e2c7a15eb7ca909f53b0afc4b
Contents?: true
Size: 984 Bytes
Versions: 10
Compression:
Stored size: 984 Bytes
Contents
namespace :gem do desc "freeze a gem using gem=<gem name> [version=<gem version>]" task :freeze do raise "No gem specified" unless gem_name = ENV['gem'] require 'rubygems' Gem.manage_gems gem = (version = ENV['version']) ? Gem.cache.search(gem_name, "= #{version}").first : Gem.cache.search(gem_name).sort_by { |g| g.version }.last version ||= gem.version.version rescue nil target_dir = File.join(Waves::Configurations::Default.root, 'gems') mkdir_p target_dir sh "gem install #{gem_name} --version #{version} -i #{target_dir} --no-rdoc --no-ri" puts "Unpacked #{gem_name} #{version} to '#{target_dir}'" end desc "unfreeze a gem using gem=<gem>" task :unfreeze do raise "No gem specified" unless gem_name = ENV['gem'] target_dir = File.join(Waves::Configurations::Default.root, 'gems') ENV['GEM_HOME'] = target_dir # no install_dir option for gem uninstall sh "gem uninstall #{gem_name}" end end
Version data entries
10 entries across 10 versions & 4 rubygems