Rakefile in riakpb-0.1.4 vs Rakefile in riakpb-0.1.5
- old
+ new
@@ -1,21 +1,54 @@
require 'rubygems'
-gem 'hoe', '>= 2.1.0'
-require 'hoe'
+require 'rake/gempackagetask'
require 'fileutils'
require './lib/riak'
-Hoe.plugin :newgem
-# Hoe.plugin :website
-# Hoe.plugin :cucumberfeatures
+gemspec = Gem::Specification.new do |gem|
+ gem.name = "riakpb"
+ gem.summary = %Q{riakpb is a protocol buffer client for Riak--the distributed database by Basho.}
+ gem.description = %Q{riakpb is a protocol buffer client for Riak--the distributed database by Basho. Connects via Protocol Buffers instead of REST.}
+ gem.version = Riak::VERSION
+ gem.email = "me@inherentlylame.com"
+ gem.homepage = "http://github.com/aitrus/riak-pbclient"
+ gem.authors = ["Scott Gonyea"]
+ gem.add_development_dependency "rspec", "~>2.0.0.beta.9"
+ gem.add_dependency "activesupport", ">= 2.3.5"
+ gem.add_dependency "ruby_protobuf", ">=0.4.4"
-# Generate all the Rake tasks
-# Run 'rake -T' to see list of generated tasks (from gem root directory)
-$hoe = Hoe.spec 'riakpb' do
- self.developer 'Scott Gonyea', 'me@sgonyea.com'
- self.rubyforge_name = self.name
- self.summary = 'riak-pbclient is a protocol buffer client for Riak--the distributed database by Basho.'
- self.url = 'http://github.com/aitrus/riak-pbclient'
+ files = FileList["**/*"]
+ files.exclude /\.DS_Store/
+ files.exclude /\#/
+ files.exclude /~/
+ files.exclude /\.swp/
+ files.exclude '**/._*'
+ files.exclude '**/*.orig'
+ files.exclude '**/*.rej'
+ files.exclude /^pkg/
+ files.exclude 'riak-client.gemspec'
+
+ gem.files = files.to_a
+
+ gem.test_files = FileList["spec/**/*.rb"].to_a
+end
+
+# Gem packaging tasks
+Rake::GemPackageTask.new(gemspec) do |pkg|
+ pkg.need_zip = false
+ pkg.need_tar = false
+end
+
+task :gem => :gemspec
+
+desc %{Build the gemspec file.}
+task :gemspec do
+ gemspec.validate
+ File.open("#{gemspec.name}.gemspec", 'w'){|f| f.write gemspec.to_ruby }
+end
+
+desc %{Release the gem to RubyGems.org}
+task :release => :gem do
+ "gem push pkg/#{gemspec.name}-#{gemspec.version}.gem"
end
require 'rspec/core'
require 'rspec/core/rake_task'