require 'rake' require 'spec/rake/spectask' Dir.chdir File.dirname(__FILE__) # Specs task :default => :spec Spec::Rake::SpecTask.new('spec') do |t| t.spec_files = FileList["spec/**/*_spec.rb"] t.libs = ["lib", "spec"] end # Gem require 'rake/clean' require 'rake/gempackagetask' require 'fileutils' spec = Gem::Specification.new do |s| s.name = "rails-ext" s.version = "0.3.16" s.summary = "Set of common Ruby on Rails extensions" s.description = "Set of common Ruby on Rails extensions" s.author = "Alexey Petrushin" # s.email = "" s.homepage = "http://www.bos-tec.com" s.platform = Gem::Platform::RUBY # s.has_rdoc = true # s.extra_rdoc_files = ["README.markdown"] s.files = (%w{Rakefile README.markdown .gitignore} + Dir.glob("{.git,lib,spec,public}/**/*")) # s.executables = ['restclient'] # s.add_dependency("BlueCloth", ">= 0.0.4") s.add_dependency "ruby-ext" s.require_path = "lib" end PACKAGE_DIR = "#{File.expand_path File.dirname(__FILE__)}/build" Rake::GemPackageTask.new(spec) do |p| package_dir = PACKAGE_DIR # FileUtils.mkdir package_dir unless File.exist? package_dir p.need_tar = true if RUBY_PLATFORM !~ /mswin/ p.need_zip = true p.package_dir = package_dir end # CLEAN.include [ 'pkg', '*.gem'] task :push do dir = Dir.chdir PACKAGE_DIR do gem_file = Dir.glob("rails-ext*.gem").first system "gem push #{gem_file}" end end task :clean do system "rm -r #{PACKAGE_DIR}" end task :release => [:gem, :push, :clean]