You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by do...@apache.org on 2012/11/07 18:51:36 UTC
svn commit: r1406737 - in /buildr/trunk/rakelib: release.rake stage.rake
Author: donaldp
Date: Wed Nov 7 17:51:36 2012
New Revision: 1406737
URL: http://svn.apache.org/viewvc?rev=1406737&view=rev
Log:
Re-add rubyforge into the release process
Modified:
buildr/trunk/rakelib/release.rake
buildr/trunk/rakelib/stage.rake
Modified: buildr/trunk/rakelib/release.rake
URL: http://svn.apache.org/viewvc/buildr/trunk/rakelib/release.rake?rev=1406737&r1=1406736&r2=1406737&view=diff
==============================================================================
--- buildr/trunk/rakelib/release.rake (original)
+++ buildr/trunk/rakelib/release.rake Wed Nov 7 17:51:36 2012
@@ -42,6 +42,24 @@ task 'release' do
puts "[X] Uploaded new site to #{spec.name}.apache.org"
end.call
+ # Upload binary and source packages to RubyForge.
+ lambda do
+ # update rubyforge projects, processors, etc. in local config
+ sh 'rubyforge', 'config'
+ files = FileList["_release/#{spec.version}/dist/*.{gem,tgz,zip}"]
+ puts "Uploading #{spec.version} to RubyForge ... "
+ rubyforge = RubyForge.new.configure
+ rubyforge.login
+ rubyforge.userconfig.merge!('release_changes'=>"_release/#{spec.version}/CHANGES", 'preformatted' => true)
+ rubyforge.add_release spec.rubyforge_project.downcase, spec.name.downcase, spec.version.to_s, *files
+
+ puts "Posting news to RubyForge ... "
+ changes = File.read("_release/#{spec.version}/CHANGES")[/.*?\n(.*)/m, 1]
+ rubyforge.post_news spec.rubyforge_project.downcase, "Buildr #{spec.version} released",
+ "#{spec.description}\n\nNew in Buildr #{spec.version}:\n#{changes.gsub(/^/, ' ')}\n"
+ puts "[X] Uploaded gems and source files to #{spec.name}.rubyforge.org"
+ end.call
+
# Push gems to Rubyforge.org / Gemcutter
lambda do
files = FileList["_release/#{spec.version}/dist/*.{gem}"]
Modified: buildr/trunk/rakelib/stage.rake
URL: http://svn.apache.org/viewvc/buildr/trunk/rakelib/stage.rake?rev=1406737&r1=1406736&r2=1406737&view=diff
==============================================================================
--- buildr/trunk/rakelib/stage.rake (original)
+++ buildr/trunk/rakelib/stage.rake Wed Nov 7 17:51:36 2012
@@ -76,6 +76,14 @@ task 'prepare' do |task, args|
puts '[X] We have prince available'
end.call
+ # Need RubyForge to upload new release files.
+ lambda do
+ puts "[!] Make sure you have admin privileges to make a release on RubyForge"
+ rubyforge = RubyForge.new.configure
+ rubyforge.login
+ rubyforge.scrape_project(spec.name)
+ end.call
+
raise "Can not run stage process under jruby" if RUBY_PLATFORM[/java/]
raise "Can not run staging process under older rubies" unless RUBY_VERSION >= '1.9'
end