|
|
@ -1,30 +1,14 @@ |
|
|
|
# frozen_string_literal: true |
|
|
|
|
|
|
|
if ENV['REDIS_URL'].blank? |
|
|
|
password = ENV.fetch('REDIS_PASSWORD') { '' } |
|
|
|
host = ENV.fetch('REDIS_HOST') { 'localhost' } |
|
|
|
port = ENV.fetch('REDIS_PORT') { 6379 } |
|
|
|
db = ENV.fetch('REDIS_DB') { 0 } |
|
|
|
|
|
|
|
ENV['REDIS_URL'] = "redis://#{password.blank? ? '' : ":#{password}@"}#{host}:#{port}/#{db}" |
|
|
|
end |
|
|
|
|
|
|
|
redis_connection = Redis.new( |
|
|
|
url: ENV['REDIS_URL'], |
|
|
|
driver: :hiredis |
|
|
|
) |
|
|
|
|
|
|
|
cache_params = { expires_in: 10.minutes } |
|
|
|
|
|
|
|
namespace = ENV.fetch('REDIS_NAMESPACE') { nil } |
|
|
|
|
|
|
|
if namespace |
|
|
|
Redis.current = Redis::Namespace.new(namespace, redis: redis_connection) |
|
|
|
cache_params[:namespace] = namespace + '_cache' |
|
|
|
else |
|
|
|
Redis.current = redis_connection |
|
|
|
end |
|
|
|
|
|
|
|
Rails.application.configure do |
|
|
|
config.cache_store = :redis_store, ENV['REDIS_URL'], cache_params |
|
|
|
end |