eliminate unnecessary freeze and dup
[clogger.git] / Rakefile
blob84195de2989ad6d73cc37c31f06a2c82abf41430
1 begin
2   require 'rake/extensiontask'
3   Rake::ExtensionTask.new('clogger_ext')
4 rescue LoadError
5   warn "rake-compiler not available, cross compiling disabled"
6 end
8 desc "read news article from STDIN and post to rubyforge"
9 task :publish_news do
10   require 'rubyforge'
11   IO.select([STDIN], nil, nil, 1) or abort "E: news must be read from stdin"
12   msg = STDIN.readlines
13   subject = msg.shift
14   blank = msg.shift
15   blank == "\n" or abort "no newline after subject!"
16   subject.strip!
17   body = msg.join("").strip!
19   rf = RubyForge.new.configure
20   rf.login
21   rf.post_news('clogger', subject, body)
22 end
24 cgit_url = "http://git.bogomips.org/cgit/clogger.git"
25 git_url = 'git://git.bogomips.org/clogger.git'
27 desc "post to RAA"
28 task :raa_update do
29   require 'rubygems'
30   require 'net/http'
31   require 'net/netrc'
32   rc = Net::Netrc.locate('clogger-raa') or abort "~/.netrc not found"
33   password = rc.password
35   s = Gem::Specification.load('clogger.gemspec')
36   desc = [ s.description.strip ]
37   desc << ""
38   desc << "* #{s.email}"
39   desc << "* #{git_url}"
40   desc << "* #{cgit_url}"
41   desc = desc.join("\n")
42   uri = URI.parse('http://raa.ruby-lang.org/regist.rhtml')
43   form = {
44     :name => s.name,
45     :short_description => s.summary,
46     :version => s.version.to_s,
47     :status => 'experimental',
48     :owner => s.authors.first,
49     :email => s.email,
50     :category_major => 'Library',
51     :category_minor => 'Rack',
52     :url => s.homepage,
53     :download => 'http://rubyforge.org/frs/?group_id=8896',
54     :license => 'LGPL',
55     :description_style => 'Plain',
56     :description => desc,
57     :pass => password,
58     :submit => 'Update',
59   }
60   res = Net::HTTP.post_form(uri, form)
61   p res
62   puts res.body
63 end