diff options
Diffstat (limited to 'lib/pleroma/web/media_proxy/invalidations')
-rw-r--r-- | lib/pleroma/web/media_proxy/invalidations/http.ex | 40 | ||||
-rw-r--r-- | lib/pleroma/web/media_proxy/invalidations/script.ex | 43 |
2 files changed, 0 insertions, 83 deletions
diff --git a/lib/pleroma/web/media_proxy/invalidations/http.ex b/lib/pleroma/web/media_proxy/invalidations/http.ex deleted file mode 100644 index bb81d8888..000000000 --- a/lib/pleroma/web/media_proxy/invalidations/http.ex +++ /dev/null @@ -1,40 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.MediaProxy.Invalidation.Http do - @moduledoc false - @behaviour Pleroma.Web.MediaProxy.Invalidation - - require Logger - - @impl Pleroma.Web.MediaProxy.Invalidation - def purge(urls, opts \\ []) do - method = Keyword.get(opts, :method, :purge) - headers = Keyword.get(opts, :headers, []) - options = Keyword.get(opts, :options, []) - - Logger.debug("Running cache purge: #{inspect(urls)}") - - Enum.each(urls, fn url -> - with {:error, error} <- do_purge(method, url, headers, options) do - Logger.error("Error while cache purge: url - #{url}, error: #{inspect(error)}") - end - end) - - {:ok, urls} - end - - defp do_purge(method, url, headers, options) do - case Pleroma.HTTP.request(method, url, "", headers, options) do - {:ok, %{status: status} = env} when 400 <= status and status < 500 -> - {:error, env} - - {:error, error} = error -> - error - - _ -> - {:ok, "success"} - end - end -end diff --git a/lib/pleroma/web/media_proxy/invalidations/script.ex b/lib/pleroma/web/media_proxy/invalidations/script.ex deleted file mode 100644 index d32ffc50b..000000000 --- a/lib/pleroma/web/media_proxy/invalidations/script.ex +++ /dev/null @@ -1,43 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.MediaProxy.Invalidation.Script do - @moduledoc false - - @behaviour Pleroma.Web.MediaProxy.Invalidation - - require Logger - - @impl Pleroma.Web.MediaProxy.Invalidation - def purge(urls, opts \\ []) do - args = - urls - |> List.wrap() - |> Enum.uniq() - |> Enum.join(" ") - - opts - |> Keyword.get(:script_path) - |> do_purge([args]) - |> handle_result(urls) - end - - defp do_purge(script_path, args) when is_binary(script_path) do - path = Path.expand(script_path) - Logger.debug("Running cache purge: #{inspect(args)}, #{inspect(path)}") - System.cmd(path, args) - rescue - error -> error - end - - defp do_purge(_, _), do: {:error, "not found script path"} - - defp handle_result({_result, 0}, urls), do: {:ok, urls} - defp handle_result({:error, error}, urls), do: handle_result(error, urls) - - defp handle_result(error, _) do - Logger.error("Error while cache purge: #{inspect(error)}") - {:error, inspect(error)} - end -end |