Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 72 lines (61 sloc) 1.857 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
$:.unshift 'lib'
require 'rubygems'
require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
require 'spec/rake/spectask'

task :default => "spec:suite"

begin
  require "jeweler"
  Jeweler::Tasks.new do |gemspec|
    gemspec.name = "#{ENV["GEM_PREFIX"]}redis-store"
    gemspec.summary = "Rack::Session, Rack::Cache and cache Redis stores for Ruby web frameworks."
    gemspec.description = "Rack::Session, Rack::Cache and cache Redis stores for Ruby web frameworks."
    gemspec.email = "guidi.luca@gmail.com"
    gemspec.homepage = "http://github.com/jodosha/redis-store"
    gemspec.authors = [ "Luca Guidi" ]
    gemspec.executables = [ ]
  end

  Jeweler::GemcutterTasks.new
rescue LoadError
  puts "Jeweler not available. Install it with: sudo gem install jeweler"
end

namespace :spec do
  desc "Run all the examples by starting a detached Redis instance"
  task :suite do
    invoke_with_redis_cluster "spec:run"
  end

  Spec::Rake::SpecTask.new(:run) do |t|
    t.spec_files = FileList['spec/**/*_spec.rb']
    t.spec_opts = %w(-fs --color)
  end
end

desc "Run all examples with RCov"
task :rcov do
  invoke_with_redis_cluster "rcov_run"
end

Spec::Rake::SpecTask.new(:rcov_run) do |t|
  t.spec_files = FileList['spec/**/*_spec.rb']
  t.rcov = true
end

namespace :redis_cluster do
  desc "Starts the redis_cluster"
  task :start do
    result = RedisClusterRunner.start_detached
    raise("Could not start redis-server, aborting.") unless result
  end

  desc "Stops the redis_cluster"
  task :stop do
    RedisClusterRunner.stop
  end
end

# courtesy of http://github.com/ezmobius/redis-rb team
load "tasks/redis.tasks.rb"
def invoke_with_redis_cluster(task_name)
  begin
    Rake::Task["redis_cluster:start"].invoke
    Rake::Task[task_name].invoke
  ensure
    Rake::Task["redis_cluster:stop"].invoke
  end
end
Something went wrong with that request. Please try again.