Class: Mcrain::Redis

Inherits:
Base
  • Object
show all
Defined in:
lib/mcrain/redis.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#build_docker_command, #build_docker_command_options, #clear_old_container, #container_image, #container_name, #find_portno, #host, #logger, #port, #run_container, #start, #stop, #url, #wait

Instance Attribute Details

#db_dirObject

Returns the value of attribute db_dir.



35
36
37
# File 'lib/mcrain/redis.rb', line 35

def db_dir
  @db_dir
end

Instance Method Details

#build_client_optionsObject



18
19
20
# File 'lib/mcrain/redis.rb', line 18

def build_client_options
  {host: host, port: port}
end

#clientObject



13
14
15
16
# File 'lib/mcrain/redis.rb', line 13

def client
  require client_require
  @client ||= ::Redis.new(build_client_options)
end

#client_requireObject



22
23
24
# File 'lib/mcrain/redis.rb', line 22

def client_require
  'redis'
end

#client_scriptObject



26
27
28
29
# File 'lib/mcrain/redis.rb', line 26

def client_script
  client
  "Redis.new(#{build_client_options.inspect})"
end

#docker_extra_optionsObject



37
38
39
# File 'lib/mcrain/redis.rb', line 37

def docker_extra_options
  db_dir ? " -v #{File.expand_path(db_dir)}:/data" : nil
end

#wait_for_readyObject



31
32
33
# File 'lib/mcrain/redis.rb', line 31

def wait_for_ready
  client.keys
end