# Add your own tasks in files placed in lib/tasks ending in .rake, # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. require 'erb' require(File.join(File.dirname(__FILE__), 'config', 'boot')) require 'rake' require 'rake/testtask' require 'rake/rdoctask' require 'tasks/rails' require 'hoe' require 'version_from_history' ENV['SKIP_AR_JDBC_RAKE_REDEFINES'] = '1' Hoe.new("backlog", APP::VERSION) do |p| p.rubyforge_name = "backlog" p.summary = "Application to aid collecting, processing, organizing, reviewing and doing tasks." p.description = p.paragraphs_of('README.txt', 2..3).join("\n\n") p.author = 'Uwe Kubosch' p.email = 'uwe@kubosch.no' p.remote_rdoc_dir = '' # Release to root p.changes = File.read('History.txt').scan(/^== .*?(?=^== )/m).first p.rdoc_pattern = /^(app\/(controllers|helpers|models)|lib|bin)|txt$/ p.clean_globs = ['doc', 'log/*'] p.spec_extras = { :files => Dir['**/*'].reject{|file_name| file_name =~ /^(doc|log|pkg|tmp|WEB-INF)/}, :rdoc_options => ['--inline-source'], :executables => ['backlog'], :requirements => ['ImageMagick', 'PostgreSQL'] } p.need_zip = true p.url = 'http://rubyforge.org/projects/backlog/' p.extra_deps = [['rails', '= 1.2.4'], ['gruff', '~> 0.2.9'], ['postgres', '~> 0.7.9'], ['slave', '~> 1.2.1']] # ['rmagick', '~> 1.15.12'], p.rsync_args = "-acv --delete --exclude=wiki*" end desc 'Release the application to RubyForge' task :release_all do ENV['VERSION'] = APP::VERSION Rake::Task[:publish_docs].invoke Rake::Task[:release].invoke Rake::Task[:release_war].invoke Rake::Task[:post_news].invoke end desc 'Release the application as a Java EE WAR file to RubyForge' task :release_war do `warble` war_pkg_file = "pkg/backlog-#{APP::VERSION}.war" raise "WAR file missing" unless File.exists? 'backlog.war' FileUtils.makedirs 'pkg' FileUtils.move 'backlog.war', war_pkg_file rf = RubyForge.new.configure rf.login rf.add_file 'backlog', 'backlog', APP::VERSION, war_pkg_file end