Redis persistence for ruote (a ruby workflow engine)
Ruby
Switch branches/tags
Latest commit ee6e49b Jul 5, 2013 @jmettraux relax dependency, 2.3 instead of 2.3.1
closes gh-7

Thanks to Leon Du (@leondu)
Permalink
Failed to load latest commit information.
lib try harder to reconnect (redis or redis.client) Jan 17, 2013
test show 'pop_count' in test/connection.rb Aug 2, 2012
CHANGELOG.txt
CREDITS.txt relax dependency, 2.3 instead of 2.3.1 Jul 5, 2013
LICENSE.txt switch to 2013 Dec 23, 2012
README.rdoc
Rakefile fix info about running ruote tests with Redis Nov 16, 2012
TODO.txt
ruote-redis.gemspec

README.rdoc

ruote-redis

Redis persistence for ruote (a Ruby workflow engine)

usage

The storage is instantiate by passing a redis-rb instance to the storage.

require 'redis' # gem install redis
require 'ruote' # gem install ruote
require 'ruote-redis' # gem install ruote-redis

engine = Ruote::Engine.new(
  Ruote::Worker.new(
    Ruote::Redis::Storage.new(
      ::Redis.new(:db => 14, :thread_safe => true), {})))

# ...

Passing an em-redis instance might work, but I haven't tried.

Tested with Redis 2.0.1 (redis-rb 3.0.1) on Debian GNU/Linux. Tested with Redis 2.4.16 (redis-rb 3.0.1) on OSX snoleo.

running tests

assuming you have

ruote/
ruote-redis/

start a redis server instance (port 6379) and then

  • unit tests :

get into ruote/ and do

RUOTE_STORAGE=redis ruby test/functional/storage.rb
  • functional tests :

get into ruote/ and do

RUOTE_STORAGE=redis ruby test/functional/test.rb

license

MIT

links

feedback

mailing list : groups.google.com/group/openwferu-users irc : irc.freenode.net #ruote

many thanks to

  • the Redis authors and the redis-rb authors