Sha256: 8e88b18f9c1b7d828e3e56e64eebf6233b62b0b635c19c8d1beceef84639ccdf
Contents?: true
Size: 1.73 KB
Versions: 1
Compression:
Stored size: 1.73 KB
Contents
require 'rake/clean' require "rake/testtask" require 'rake/gempackagetask' task :default => :test def gem_spec_file 'ohm.gemspec' end def gem_spec $gem_spec ||= eval(File.read(gem_spec_file)) rescue nil end desc 'Run all tests' Rake::TestTask.new(:test) do |t| t.pattern = 'test/**/*_test.rb' t.verbose = false end Rake::GemPackageTask.new(gem_spec) do |pkg| pkg.need_zip = false pkg.need_tar = false rm_f FileList['pkg/**/*.*'] end if gem_spec desc "Generate the gemspec file." task :gemspec do require 'erb' File.open(gem_spec_file, 'w') do |f| f.write ERB.new(File.read("#{gem_spec_file}.erb")).result(binding) end end desc "Builds and installs the gem." task :install => :repackage do `sudo gem install pkg/#{gem_spec.name}-#{gem_spec.version}.gem` end def package(ext='') "pkg/ohm-#{gem_spec.version}" + ext end desc 'Build packages' task :package => %w[.gem .tar.gz].map {|e| package(e)} desc 'Build and install as local gem' task :install => package('.gem') do sh "gem install #{package('.gem')}" end directory 'pkg/' CLOBBER.include('pkg') file package('.gem') => %w[pkg/ ohm.gemspec] + gem_spec.files do |f| sh "gem build ohm.gemspec" mv File.basename(f.name), f.name end file package('.tar.gz') => %w[pkg/] + gem_spec.files do |f| sh <<-SH git archive \ --prefix=ohm-#{gem_spec.version}/ \ --format=tar \ HEAD | gzip > #{f.name} SH end # Rubyforge Release / Publish Tasks ================================== desc 'Publish gem and tarball to rubyforge' task 'release' => [package('.gem'), package('.tar.gz')] do |t| sh <<-end rubyforge add_release ohm ohm #{gem_spec.version} #{package('.gem')} && rubyforge add_file ohm ohm #{gem_spec.version} #{package('.tar.gz')} end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ohm-0.0.1 | Rakefile |