Rakefile in parlement-0.2 vs Rakefile in parlement-0.3

- old
+ new

@@ -33,11 +33,11 @@ PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}" PKG_FILES = FileList[ '[A-Z]*', 'app/**/*', 'components/**/*', 'config/**/*', 'db/**/*', 'lib/**/*', 'public/**/*', 'script/**/*', 'test/**/*', 'vendor/**/*' -].exclude(/\bCVS\b|~$/) +].exclude(/\bsvn\b|~$/) spec = Gem::Specification.new do |s| ## Basic information. s.name = PKG_NAME s.version = PKG_VERSION @@ -52,11 +52,11 @@ - PGP signatures - electoral lists EOF s.files = PKG_FILES s.require_path = 'lib' - s.autorequire = 'rails, meta_project' + s.autorequire = 'rails' s.has_rdoc = false s.requirements << 'none' s.test_files = Dir.glob('test/unit/*') # Author and project details. @@ -71,15 +71,14 @@ #s.cert_chain = [File.join(ENV['CERT_DIR'], 'gem-public_cert.pem')] #end s.add_dependency('rails') end +desc "Build Gem" Rake::GemPackageTask.new(spec) do |pkg| - #pkg.gem_spec = spec pkg.need_zip = true pkg.need_tar = true - #pkg.package_files.include("*") end # Support Tasks ------------------------------------------------------ @@ -88,12 +87,12 @@ Pathname.new(File.dirname(__FILE__)).egrep(/#.*(FIXME|TODO|TBD|DEPRECATED)/) do |match| puts match end end -#task :release => [:verify_env_vars, :release_files, :publish_doc, :publish_news, :tag] -task :release => [:verify_env_vars, :release_files, :publish_news] +#task :release => [:verify_env_vars, :release_files, :publish_doc, :publish_news] +task :release => [:release_files, :publish_news] task :verify_env_vars do if not ENV["RUBYFORGE_USER"] print "rubyforge.org's user: " ENV["RUBYFORGE_USER"] = STDIN.gets.chomp @@ -120,64 +119,65 @@ password = ENV["FRESHMEAT_PASSWORD"] else print "freshmeat's password: " ENV["FRESHMEAT_PASSWORD"] = STDIN.gets.chomp end - end task :publish_doc do publisher = Rake::RubyForgePublisher.new(PKG_NAME, ENV['RUBYFORGE_USER']) publisher.upload end desc "Release files on RubyForge" -task :release_files => [:gem] do +task :release_files => [:verify_env_vars, :package] do release_files = FileList[ "pkg/#{PKG_FILE_NAME}.gem", "pkg/#{PKG_FILE_NAME}.tgz", "pkg/#{PKG_FILE_NAME}.zip" ] Rake::XForge::Release.new(MetaProject::Project::XForge::RubyForge.new(PKG_NAME)) do |release| # Never hardcode user name and password in the Rakefile! release.user_name = ENV['RUBYFORGE_USER'] release.password = ENV['RUBYFORGE_PASSWORD'] + #puts "login: ", ENV['RUBYFORGE_USER'] + #puts "password: ", ENV['RUBYFORGE_PASSWORD'] release.files = release_files.to_a release.release_name = "#{PKG_NAME} #{PKG_VERSION}" # The rest of the options are defaults (among others, release_notes and release_changes, parsed from CHANGES) end end desc "Publish news" -task :publish_news => [:gem] do - Rake::XForge::NewsPublisher.new(MetaProject::Project::XForge::RubyForge.new(PKG_NAME)) do |news| +task :publish_news => [:verify_env_vars] do + #release_files = FileList[ "pkg/#{PKG_FILE_NAME}.gem", + # "pkg/#{PKG_FILE_NAME}.tgz", + # "pkg/#{PKG_FILE_NAME}.zip" ] + + Rake::XForge::NewsPublisher.new(MetaProject::Project::XForge::RubyForge.new(PKG_NAME)) do |news| # Never hardcode user name and password in the Rakefile! news.user_name = ENV['RUBYFORGE_USER'] news.password = ENV['RUBYFORGE_PASSWORD'] end + """ fm = DevTools::Freshmeat::FreshmeatService.new(ENV['FRESHMEAT_USER'], ENV['FRESHMEAT_PASSWORD']) fm.get_project_list.each do |p| - puts p branches = fm.get_branch_list( p.shortName ) - puts branches.inspect release = fm.get_release( p.shortName, branches[0], p.version ) - puts release + if PKG_NAME == p.shortName + puts p + release.version = PKG_VERSION + release.changes = PKG_VERSION + end end puts fm.logout - """ + Rake::XForge::NewsPublisher.new(MetaProject::Project::XForge::Fresh.new(PKG_NAME)) do |news| # Never hardcode user name and password in the Rakefile! news.user_name = ENV['RUBYFORGE_USER'] news.password = ENV['RUBYFORGE_PASSWORD'] end """ -end - -desc "Tag all the CVS files with the latest release number (REL=x.y.z)" -task :tag do - reltag = "REL_#{PKG_VERSION.gsub(/\./, '_')}" - puts "Tagging CVS with [#{reltag}]" - sh %{cvs tag #{reltag}} end