class Jeweler::RubyforgeTasks
See also wiki.github.com/technicalpickles/jeweler/rubyforge<br><br>* remote_doc_path: the place to upload docs to on Rubyforge under /var/www/gforge-projects/#{project}/
* project: the rubyforge project to operate on. This defaults to whatever you specified in your gemspec. Defaults to your gem name.
There are a few options you can tweak:
Easy enough, right?
Jeweler::RubyforgeTasks.new
Basic usage:
Jeweler::Tasks.new needs to be used before this.
Rake tasks for putting a Jeweler gem on Rubyforge.
def define
def define namespace :rubyforge do namespace :release do desc "Release the current gem version to RubyForge." task :gem do $stderr.puts "DEPRECATION: Releasing gems to RubyForge is deprecated. You should see about releasing to Gemcutter instead: http://wiki.github.com/technicalpickles/jeweler/gemcutter" end if publish_documentation? desc "Publish docs to RubyForge." task :docs => doc_task do config = YAML.load( File.read(File.expand_path('~/.rubyforge/user-config.yml')) ) host = "#{config['username']}@rubyforge.org" remote_dir = "/var/www/gforge-projects/#{project}/#{remote_doc_path}" local_dir = case self.doc_task.to_sym when :rdoc then 'rdoc' when :yardoc then 'doc' when 'doc:app'.to_sym then 'doc/app' else raise "Unsure what to run to generate documentation. Please set doc_task and re-run." end sh %{rsync --archive --verbose --delete #{local_dir}/ #{host}:#{remote_dir}} end end end if publish_documentation? desc "Release RDoc documentation to RubyForge" task :release => "rubyforge:release:docs" end end task :release => 'rubyforge:release' end
def initialize
def initialize yield self if block_given? $stderr.puts "Releasing gems to Rubyforge is deprecated. See details at http://wiki.github.com/technicalpickles/jeweler/migrating-from-releasing-gems-to-rubyforge" define end
def jeweler
def jeweler @jeweler ||= Rake.application.jeweler end
def project
def project @project ||= jeweler.gemspec.rubyforge_project end
def publish_documentation?
def publish_documentation? ! (doc_task == false || doc_task == :none) end
def remote_doc_path
def remote_doc_path @remote_doc_path ||= jeweler.gemspec.name end