Browse Source

Various runtime configuration fixes

tags/v0.9.9
href 5 years ago
parent
commit
bcecdc3ab1
No known key found for this signature in database GPG Key ID: EE8296C1A152C325
9 changed files with 26 additions and 22 deletions
  1. +1
    -0
      config/config.exs
  2. +1
    -0
      config/prod.exs
  3. +2
    -1
      lib/pleroma/application.ex
  4. +5
    -3
      lib/pleroma/object.ex
  5. +3
    -4
      lib/pleroma/web/channels/user_socket.ex
  6. +2
    -4
      lib/pleroma/web/endpoint.ex
  7. +8
    -4
      lib/pleroma/web/federator/federator.ex
  8. +1
    -1
      lib/pleroma/web/ostatus/ostatus_controller.ex
  9. +3
    -5
      lib/pleroma/web/router.ex

+ 1
- 0
config/config.exs View File

@@ -52,6 +52,7 @@ config :pleroma, Pleroma.Web.Endpoint,
url: [host: "localhost"],
protocol: "https",
secret_key_base: "aK4Abxf29xU9TTDKre9coZPUgevcVCFQJe/5xP/7Lt4BEif6idBIbjupVbOrbKxl",
signing_salt: "CqaoopA2",
render_errors: [view: Pleroma.Web.ErrorView, accepts: ~w(json)],
pubsub: [name: Pleroma.PubSub, adapter: Phoenix.PubSub.PG2],
secure_cookie_flag: true


+ 1
- 0
config/prod.exs View File

@@ -14,6 +14,7 @@ use Mix.Config
# manifest is generated by the mix phoenix.digest task
# which you typically run after static files are built.
config :pleroma, Pleroma.Web.Endpoint,
server: true,
http: [port: 4000],
protocol: "http"



+ 2
- 1
lib/pleroma/application.ex View File

@@ -3,6 +3,7 @@ defmodule Pleroma.Application do

# See http://elixir-lang.org/docs/stable/elixir/Application.html
# for more information on OTP Applications
@env Mix.env()
def start(_type, _args) do
import Supervisor.Spec
import Cachex.Spec
@@ -60,7 +61,7 @@ defmodule Pleroma.Application do
worker(Pleroma.Stats, []),
worker(Pleroma.Gopher.Server, [])
] ++
if Mix.env() == :test,
if @env == :test,
do: [],
else:
[worker(Pleroma.Web.Streamer, [])] ++


+ 5
- 3
lib/pleroma/object.ex View File

@@ -31,10 +31,12 @@ defmodule Pleroma.Object do
def normalize(ap_id) when is_binary(ap_id), do: Object.get_by_ap_id(ap_id)
def normalize(_), do: nil

def get_cached_by_ap_id(ap_id) do
if Mix.env() == :test do
if Mix.env() == :test do
def get_cached_by_ap_id(ap_id) do
get_by_ap_id(ap_id)
else
end
else
def get_cached_by_ap_id(ap_id) do
key = "object:#{ap_id}"

Cachex.fetch!(:object_cache, key, fn _ ->


+ 3
- 4
lib/pleroma/web/channels/user_socket.ex View File

@@ -4,9 +4,7 @@ defmodule Pleroma.Web.UserSocket do

## Channels
# channel "room:*", Pleroma.Web.RoomChannel
if Application.get_env(:pleroma, :chat) |> Keyword.get(:enabled) do
channel("chat:*", Pleroma.Web.ChatChannel)
end
channel("chat:*", Pleroma.Web.ChatChannel)

## Transports
transport(:websocket, Phoenix.Transports.WebSocket)
@@ -24,7 +22,8 @@ defmodule Pleroma.Web.UserSocket do
# See `Phoenix.Token` documentation for examples in
# performing token verification on connect.
def connect(%{"token" => token}, socket) do
with {:ok, user_id} <- Phoenix.Token.verify(socket, "user socket", token, max_age: 84600),
with true <- Pleroma.Config.get([:chat, :enabled]),
{:ok, user_id} <- Phoenix.Token.verify(socket, "user socket", token, max_age: 84600),
%User{} = user <- Pleroma.Repo.get(User, user_id) do
{:ok, assign(socket, :user_name, user.nickname)}
else


+ 2
- 4
lib/pleroma/web/endpoint.ex View File

@@ -1,9 +1,7 @@
defmodule Pleroma.Web.Endpoint do
use Phoenix.Endpoint, otp_app: :pleroma

if Application.get_env(:pleroma, :chat) |> Keyword.get(:enabled) do
socket("/socket", Pleroma.Web.UserSocket)
end
socket("/socket", Pleroma.Web.UserSocket)

socket("/api/v1", Pleroma.Web.MastodonAPI.MastodonSocket)

@@ -58,7 +56,7 @@ defmodule Pleroma.Web.Endpoint do
Plug.Session,
store: :cookie,
key: cookie_name,
signing_salt: "CqaoopA2",
signing_salt: {Pleroma.Config, :get, [[__MODULE__, :signing_salt], "CqaoopA2"]},
http_only: true,
secure:
Application.get_env(:pleroma, Pleroma.Web.Endpoint) |> Keyword.get(:secure_cookie_flag),


+ 8
- 4
lib/pleroma/web/federator/federator.ex View File

@@ -153,11 +153,15 @@ defmodule Pleroma.Web.Federator do
{:error, "Don't know what to do with this"}
end

def enqueue(type, payload, priority \\ 1) do
if Pleroma.Config.get([:instance, :federating]) do
if Mix.env() == :test do
if Mix.env() == :test do
def enqueue(type, payload, priority \\ 1) do
if Pleroma.Config.get([:instance, :federating]) do
handle(type, payload)
else
end
end
else
def enqueue(type, payload, priority \\ 1) do
if Pleroma.Config.get([:instance, :federating]) do
GenServer.cast(__MODULE__, {:enqueue, type, payload, priority})
end
end


+ 1
- 1
lib/pleroma/web/ostatus/ostatus_controller.ex View File

@@ -136,7 +136,7 @@ defmodule Pleroma.Web.OStatus.OStatusController do
"html" ->
conn
|> put_resp_content_type("text/html")
|> send_file(200, "priv/static/index.html")
|> send_file(200, Application.app_dir(:pleroma, "priv/static/index.html"))

_ ->
represent_activity(conn, format, activity, user)


+ 3
- 5
lib/pleroma/web/router.ex View File

@@ -404,11 +404,9 @@ defmodule Fallback.RedirectController do
use Pleroma.Web, :controller

def redirector(conn, _params) do
if Mix.env() != :test do
conn
|> put_resp_content_type("text/html")
|> send_file(200, "priv/static/index.html")
end
conn
|> put_resp_content_type("text/html")
|> send_file(200, Application.app_dir(:pleroma, "priv/static/index.html"))
end

def registration_page(conn, params) do


Loading…
Cancel
Save