projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'remotes/origin/develop' into media-preview-proxy
[akkoma]
/
lib
/
pleroma
/
web
/
activity_pub
/
mrf
/
media_proxy_warming_policy.ex
diff --git
a/lib/pleroma/web/activity_pub/mrf/media_proxy_warming_policy.ex
b/lib/pleroma/web/activity_pub/mrf/media_proxy_warming_policy.ex
index df774b0f7a471c9cc00c957d5ff8050dc3181f2a..0fb05d3c4be9dafa2cee8427b0922b55e6dcc48d 100644
(file)
--- a/
lib/pleroma/web/activity_pub/mrf/media_proxy_warming_policy.ex
+++ b/
lib/pleroma/web/activity_pub/mrf/media_proxy_warming_policy.ex
@@
-1,5
+1,5
@@
# Pleroma: A lightweight social networking server
# Pleroma: A lightweight social networking server
-# Copyright © 201
9
Pleroma Authors <https://pleroma.social/>
+# Copyright © 201
7-2020
Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy do
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy do
@@
-12,17
+12,21
@@
defmodule Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy do
require Logger
require Logger
- @
hackney
_options [
+ @
adapter
_options [
pool: :media,
recv_timeout: 10_000
]
def perform(:prefetch, url) do
pool: :media,
recv_timeout: 10_000
]
def perform(:prefetch, url) do
- Logger.debug("Prefetching #{inspect(url)}")
+ # Fetching only proxiable resources
+ if MediaProxy.enabled?() and MediaProxy.url_proxiable?(url) do
+ # If preview proxy is enabled, it'll also hit media proxy (so we're caching both requests)
+ prefetch_url = MediaProxy.preview_url(url)
- url
- |> MediaProxy.url()
- |> HTTP.get([], adapter: @hackney_options)
+ Logger.debug("Prefetching #{inspect(url)} as #{inspect(prefetch_url)}")
+
+ HTTP.get(prefetch_url, [], @adapter_options)
+ end
end
def perform(:preload, %{"object" => %{"attachment" => attachments}} = _message) do
end
def perform(:preload, %{"object" => %{"attachment" => attachments}} = _message) do