Use config_for
for cache buster values (#34851)
This commit is contained in:
parent
9860046b04
commit
c025824f98
9 changed files with 13 additions and 19 deletions
|
@ -1,6 +1,6 @@
|
||||||
# This configuration was generated by
|
# This configuration was generated by
|
||||||
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-offense-counts --no-auto-gen-timestamp`
|
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-offense-counts --no-auto-gen-timestamp`
|
||||||
# using RuboCop version 1.75.7.
|
# using RuboCop version 1.75.8.
|
||||||
# The point is for the user to remove these configuration records
|
# The point is for the user to remove these configuration records
|
||||||
# one by one as the offenses are removed from the code base.
|
# one by one as the offenses are removed from the code base.
|
||||||
# Note that changes in the inspected code, or installation of new
|
# Note that changes in the inspected code, or installation of new
|
||||||
|
@ -37,7 +37,6 @@ Style/FetchEnvVar:
|
||||||
Exclude:
|
Exclude:
|
||||||
- 'config/initializers/2_limited_federation_mode.rb'
|
- 'config/initializers/2_limited_federation_mode.rb'
|
||||||
- 'config/initializers/3_omniauth.rb'
|
- 'config/initializers/3_omniauth.rb'
|
||||||
- 'config/initializers/cache_buster.rb'
|
|
||||||
- 'config/initializers/paperclip.rb'
|
- 'config/initializers/paperclip.rb'
|
||||||
- 'lib/tasks/repo.rake'
|
- 'lib/tasks/repo.rake'
|
||||||
|
|
||||||
|
|
|
@ -417,7 +417,7 @@ class MediaAttachment < ApplicationRecord
|
||||||
|
|
||||||
# Record the cache keys to burst before the file get actually deleted
|
# Record the cache keys to burst before the file get actually deleted
|
||||||
def prepare_cache_bust!
|
def prepare_cache_bust!
|
||||||
return unless Rails.configuration.x.cache_buster_enabled
|
return unless Rails.configuration.x.cache_buster.enabled
|
||||||
|
|
||||||
@paths_to_cache_bust = MediaAttachment.attachment_definitions.keys.flat_map do |attachment_name|
|
@paths_to_cache_bust = MediaAttachment.attachment_definitions.keys.flat_map do |attachment_name|
|
||||||
attachment = public_send(attachment_name)
|
attachment = public_send(attachment_name)
|
||||||
|
@ -434,7 +434,7 @@ class MediaAttachment < ApplicationRecord
|
||||||
# Once Paperclip has deleted the files, we can't recover the cache keys,
|
# Once Paperclip has deleted the files, we can't recover the cache keys,
|
||||||
# so use the previously-saved ones
|
# so use the previously-saved ones
|
||||||
def bust_cache!
|
def bust_cache!
|
||||||
return unless Rails.configuration.x.cache_buster_enabled
|
return unless Rails.configuration.x.cache_buster.enabled
|
||||||
|
|
||||||
CacheBusterWorker.push_bulk(@paths_to_cache_bust) { |path| [path] }
|
CacheBusterWorker.push_bulk(@paths_to_cache_bust) { |path| [path] }
|
||||||
rescue => e
|
rescue => e
|
||||||
|
|
|
@ -95,7 +95,7 @@ class SuspendAccountService < BaseService
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
CacheBusterWorker.perform_async(attachment.url(style)) if Rails.configuration.x.cache_buster_enabled
|
CacheBusterWorker.perform_async(attachment.url(style)) if Rails.configuration.x.cache_buster.enabled
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -91,7 +91,7 @@ class UnsuspendAccountService < BaseService
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
CacheBusterWorker.perform_async(attachment.url(style)) if Rails.configuration.x.cache_buster_enabled
|
CacheBusterWorker.perform_async(attachment.url(style)) if Rails.configuration.x.cache_buster.enabled
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -103,6 +103,7 @@ module Mastodon
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
config.x.cache_buster = config_for(:cache_buster)
|
||||||
config.x.captcha = config_for(:captcha)
|
config.x.captcha = config_for(:captcha)
|
||||||
config.x.mastodon = config_for(:mastodon)
|
config.x.mastodon = config_for(:mastodon)
|
||||||
config.x.translation = config_for(:translation)
|
config.x.translation = config_for(:translation)
|
||||||
|
|
5
config/cache_buster.yml
Normal file
5
config/cache_buster.yml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
shared:
|
||||||
|
enabled: <%= ENV.fetch('CACHE_BUSTER_ENABLED', 'false') == 'true' %>
|
||||||
|
secret_header: <%= ENV.fetch('CACHE_BUSTER_SECRET_HEADER', nil) %>
|
||||||
|
secret: <%= ENV.fetch('CACHE_BUSTER_SECRET', nil) %>
|
||||||
|
http_method: <%= ENV.fetch('CACHE_BUSTER_HTTP_METHOD', 'GET') %>
|
|
@ -1,11 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
Rails.application.configure do
|
|
||||||
config.x.cache_buster_enabled = ENV['CACHE_BUSTER_ENABLED'] == 'true'
|
|
||||||
|
|
||||||
config.x.cache_buster = {
|
|
||||||
secret_header: ENV['CACHE_BUSTER_SECRET_HEADER'],
|
|
||||||
secret: ENV['CACHE_BUSTER_SECRET'],
|
|
||||||
http_method: ENV['CACHE_BUSTER_HTTP_METHOD'] || 'GET',
|
|
||||||
}
|
|
||||||
end
|
|
|
@ -291,7 +291,7 @@ RSpec.describe MediaAttachment, :attachment_processing do
|
||||||
let(:media) { Fabricate(:media_attachment) }
|
let(:media) { Fabricate(:media_attachment) }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
allow(Rails.configuration.x).to receive(:cache_buster_enabled).and_return(true)
|
allow(Rails.configuration.x.cache_buster).to receive(:enabled).and_return(true)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'queues CacheBusterWorker jobs' do
|
it 'queues CacheBusterWorker jobs' do
|
||||||
|
|
|
@ -11,7 +11,7 @@ RSpec.describe SuspendAccountService do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
allow(FeedManager.instance).to receive_messages(unmerge_from_home: nil, unmerge_from_list: nil)
|
allow(FeedManager.instance).to receive_messages(unmerge_from_home: nil, unmerge_from_list: nil)
|
||||||
allow(Rails.configuration.x).to receive(:cache_buster_enabled).and_return(true)
|
allow(Rails.configuration.x.cache_buster).to receive(:enabled).and_return(true)
|
||||||
|
|
||||||
local_follower.follow!(account)
|
local_follower.follow!(account)
|
||||||
list.accounts << account
|
list.accounts << account
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue