Clean up redis configuration. Allow using REDIS_URL to set advanced (#2732)
connection options instead of setting REDIS_HOST etc individually Close #1986
This commit is contained in:
parent
005f1fd360
commit
c997091166
8 changed files with 53 additions and 61 deletions
|
@ -45,27 +45,6 @@ Rails.application.configure do
|
|||
# Use a different logger for distributed setups.
|
||||
# config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new)
|
||||
|
||||
# Parse and split the REDIS_URL if passed (used with hosting platforms such as Heroku).
|
||||
# Set ENV variables because they are used elsewhere.
|
||||
if ENV['REDIS_URL']
|
||||
redis_url = URI.parse(ENV['REDIS_URL'])
|
||||
ENV['REDIS_HOST'] = redis_url.host
|
||||
ENV['REDIS_PORT'] = redis_url.port.to_s
|
||||
ENV['REDIS_PASSWORD'] = redis_url.password
|
||||
db_num = redis_url.path[1..-1]
|
||||
ENV['REDIS_DB'] = db_num if db_num.present?
|
||||
end
|
||||
|
||||
# Use a different cache store in production.
|
||||
config.cache_store = :redis_store, {
|
||||
host: ENV.fetch('REDIS_HOST') { 'localhost' },
|
||||
port: ENV.fetch('REDIS_PORT') { 6379 },
|
||||
password: ENV.fetch('REDIS_PASSWORD') { false },
|
||||
db: ENV.fetch('REDIS_DB') { 0 },
|
||||
namespace: 'cache',
|
||||
expires_in: 10.minutes,
|
||||
}
|
||||
|
||||
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
|
||||
# config.action_controller.asset_host = 'http://assets.example.com'
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue