Public Class methods
# File lib/shipit.rb, line 233
233: def initialize(step, group_id=RUBYFORGE_PROJECT)
234: @group_id = group_id
235: @description = DESCRIPTION
236: @name = NAME
237: @vers = VERS
238: end
Public Instance methods
# File lib/shipit.rb, line 240
240: def prepare
241: require 'rubyforge'
242: @rf = RubyForge.new
243: @rf.configure {}
244: puts "Logging in"
245: @rf.login
246: @c = @rf.userconfig
247: @c["preformatted"] = true
248: unless @rf.autoconfig["group_ids"].keys.include?(@group_id)
249: raise "Unknown group: #{@group_id}"
250: end
251: unless @rf.autoconfig["package_ids"].keys.include?(@name)
252: @rf.create_package(@group_id, @name)
253: end
254: end
# File lib/shipit.rb, line 256
256: def run
257: pkg = "pkg/#{@name}-#{@vers}"
258: @files = [
259: "#{pkg}.tgz",
260: "#{pkg}.gem"
261: ].compact
262: puts "Releasing #{@name} #{@vers}"
263: @rf.add_release @group_id, @name, @vers, *@files
264: @rf.post_news @group_id, "#{@name} #{@vers} released.", "#{@description}"
265: end