forked from e621ng/e621ng
[Cleanup] Remove danbooru cloudflare purge cache functionality
This commit is contained in:
parent
ca370d29be
commit
6f8b4001e0
3
.env
3
.env
@ -79,8 +79,5 @@
|
||||
# export DANBOORU_AWS_SECRET_ACCESS_KEY=
|
||||
# export DANBOORU_AWS_SQS_REGION=
|
||||
# export DANBOORU_IQDBS_SERVER=
|
||||
# export DANBOORU_CLOUDFLARE_KEY=
|
||||
# export DANBOORU_CLOUDFLARE_EMAIL=
|
||||
# export DANBOORU_CLOUDFLARE_ZONE=
|
||||
# export DANBOORU_RECOMMENDER_KEY=
|
||||
# export DANBOORU_RECOMMENDER_SERVER=
|
||||
|
@ -1,27 +1,6 @@
|
||||
# donmai.us specific
|
||||
|
||||
class CloudflareService
|
||||
def key
|
||||
Danbooru.config.cloudflare_key
|
||||
end
|
||||
|
||||
def email
|
||||
Danbooru.config.cloudflare_email
|
||||
end
|
||||
|
||||
def zone
|
||||
Danbooru.config.cloudflare_zone
|
||||
end
|
||||
|
||||
def options
|
||||
Danbooru.config.httparty_options.deep_merge(headers: {
|
||||
"X-Auth-Email" => email,
|
||||
"X-Auth-Key" => key,
|
||||
"Content-Type" => "application/json",
|
||||
"User-Agent" => "#{Danbooru.config.app_name}/#{Danbooru.config.version}"
|
||||
})
|
||||
end
|
||||
|
||||
def ips(expiry: 24.hours)
|
||||
text, code = HttpartyCache.get("https://api.cloudflare.com/client/v4/ips", expiry: expiry)
|
||||
return [] if code != 200
|
||||
@ -30,18 +9,4 @@ class CloudflareService
|
||||
ips = json[:result][:ipv4_cidrs] + json[:result][:ipv6_cidrs]
|
||||
ips.map { |ip| IPAddr.new(ip) }
|
||||
end
|
||||
|
||||
def delete(md5, ext)
|
||||
url = "https://api.cloudflare.com/client/v4/zones/#{zone}/purge_cache"
|
||||
files = ["#{md5}.#{ext}", "preview/#{md5}.jpg", "sample/sample-#{md5}.jpg"].map do |name|
|
||||
["danbooru", "safebooru", "raikou1", "raikou2", "raikou3", "raikou4"].map do |subdomain|
|
||||
"http://#{subdomain}.donmai.us/data/#{name}"
|
||||
end
|
||||
end.flatten
|
||||
body = {
|
||||
"files" => files
|
||||
}.to_json
|
||||
|
||||
HTTParty.delete(url, options.merge(body: body)) #, body: body)
|
||||
end
|
||||
end
|
||||
|
@ -989,16 +989,6 @@ fart'
|
||||
"https://#{hostname}"
|
||||
end
|
||||
|
||||
# Cloudflare data
|
||||
def cloudflare_email
|
||||
end
|
||||
|
||||
def cloudflare_zone
|
||||
end
|
||||
|
||||
def cloudflare_key
|
||||
end
|
||||
|
||||
def recommender_server
|
||||
end
|
||||
|
||||
|
@ -2,29 +2,8 @@ require 'test_helper'
|
||||
require 'webmock/minitest'
|
||||
|
||||
class CloudflareServiceTest < ActiveSupport::TestCase
|
||||
def setup
|
||||
super
|
||||
|
||||
Danbooru.config.stubs(:cloudflare_key).returns("xyz")
|
||||
Danbooru.config.stubs(:cloudflare_email).returns("abc")
|
||||
Danbooru.config.stubs(:cloudflare_zone).returns("123")
|
||||
end
|
||||
|
||||
subject { CloudflareService.new }
|
||||
|
||||
context "#delete" do
|
||||
setup do
|
||||
stub_request(:any, "api.cloudflare.com")
|
||||
end
|
||||
|
||||
should "make calls to cloudflare's api" do
|
||||
subject.delete("md5", "png")
|
||||
assert_requested(:delete, "https://api.cloudflare.com/client/v4/zones/123/purge_cache", times: 1) do |req|
|
||||
req.body =~ /danbooru\.donmai\.us/ && req.body =~ /safebooru\.donmai\.us/ && req.body =~ /sample/ && req.body =~ /preview/
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "#ips" do
|
||||
should "work" do
|
||||
refute_empty(subject.ips)
|
||||
|
Loading…
Reference in New Issue
Block a user