# frozen_string_literal: true # load up git version into memory # this way if it changes underneath we still have # the original version Discourse.git_version if GlobalSetting.skip_redis? # Requiring this file explicitly prevents it from being autoloaded and so the # provider attribute is not cleared require File.expand_path('../../../app/models/site_setting', __FILE__) require 'site_settings/local_process_provider' Rails.cache = Discourse.cache SiteSetting.provider = SiteSettings::LocalProcessProvider.new return end Rails.application.reloader.to_prepare do reload_settings = lambda { RailsMultisite::ConnectionManagement.safe_each_connection do begin SiteSetting.refresh! unless String === SiteSetting.push_api_secret_key && SiteSetting.push_api_secret_key.length == 32 SiteSetting.push_api_secret_key = SecureRandom.hex end rescue ActiveRecord::StatementInvalid # This will happen when migrating a new database end end } reload_settings.call if !Rails.configuration.cache_classes ActiveSupport::Reloader.to_prepare do reload_settings.call end end end