module Blue::Redis
Constants
- VERSION
Public Class Methods
included(klass)
click to toggle source
# File lib/blue/redis.rb, line 90 def self.included(klass) klass.add_role(:redis) klass.class_eval do recipe :redis recipe :redis_monitoring end end
Public Instance Methods
redis(options={})
click to toggle source
# File lib/blue/redis.rb, line 7 def redis(options={}) version = Blue.config.redis.version rescue '2.6.13' package 'wget', :ensure => :installed exec 'download redis', :command => "wget http://redis.googlecode.com/files/redis-#{version}.tar.gz", :require => package('wget'), :cwd => '/usr/local/src', :creates => "/usr/local/src/redis-#{version}.tar.gz" exec 'untar redis', :command => "tar xzvf redis-#{version}.tar.gz", :require => exec('download redis'), :cwd => '/usr/local/src', :creates => "/usr/local/src/redis-#{version}" exec 'compile redis', :command => 'make', :require => exec('untar redis'), :cwd => "/usr/local/src/redis-#{version}", :creates => "/usr/local/src/redis-#{version}/src/redis-server" package 'redis-server', :ensure => :absent, :provider => :dpkg, :require => exec('compile redis') exec 'install redis', :command => "sudo make install", :timeout => 0, :require => package('redis-server'), :cwd => "/usr/local/src/redis-#{version}", :unless => "test -f /usr/local/bin/redis-server && /usr/local/bin/redis-server --version | grep 'Redis.*#{version}'" group 'redis', :ensure =>:present user 'redis', :gid => 'redis', :comment => 'redis server', :home => '/var/lib/redis', :shell => '/bin/false', :require => group('redis') file '/var/lib/redis', :ensure => :directory, :owner => 'redis', :group => 'redis', :mode => '755' file '/var/log/redis', :ensure => :directory, :owner => 'redis', :group => 'redis', :mode => '755' file '/var/log/redis/redis-server.log', :ensure => :present, :owner => 'redis', :group => 'redis', :mode => '660' file '/etc/init.d/redis-server', :ensure => :present, :mode => '755', :content => template(File.join(File.dirname(__FILE__), '..', '..', 'templates', 'init.d'), binding) file '/etc/redis', :ensure => :directory file '/etc/redis/redis.conf', :ensure => :present, :mode => '644', :content => template(File.join(File.dirname(__FILE__), '..', '..', 'templates', 'redis.conf.erb'), binding) end
redis_monitoring()
click to toggle source
# File lib/blue/redis.rb, line 76 def redis_monitoring if Blue.const_defined?(:Monit) file "/etc/monit/conf.d/redis.conf", :ensure => :present, :mode => '700', :backup => false, :content => template(File.join(File.dirname(__FILE__), '..', '..', 'templates', 'monit.conf.erb'), binding), :notify => service('monit') elsif Blue.const_defined?(:God) # Define this yo'self homie. end end