dotenv: enable overriding rails secret token / session key.

This commit is contained in:
evazion
2017-01-21 07:17:06 +00:00
parent f33108416e
commit 1aa2316a9e
2 changed files with 16 additions and 6 deletions

View File

@@ -1,9 +1,9 @@
require File.expand_path('../../state_checker', __FILE__)
StateChecker.new.check!
StateChecker.check!
Rails.application.config.action_dispatch.session = {
:key => '_danbooru2_session',
:secret => File.read(File.expand_path("~/.danbooru/session_secret_key"))
:secret => StateChecker.session_secret_key
}
Rails.application.config.secret_token = File.read(File.expand_path("~/.danbooru/secret_token"))
Rails.application.config.secret_token = StateChecker.secret_token

View File

@@ -1,7 +1,17 @@
class StateChecker
module StateChecker
module_function
def check!
check_secret_token
check_session_secret_key
ENV["SECRET_TOKEN"].present? || check_secret_token
ENV["SESSION_SECRET_KEY"].present? || check_session_secret_key
end
def secret_token
ENV["SECRET_TOKEN"] || File.read(secret_token_path)
end
def session_secret_key
ENV["SESSION_SECRET_KEY"] || File.read(session_secret_key_path)
end
private