From 88b9ae42b7c0bc81f5a9defaaad57d8d27801eaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nelson=20Estev=C3=A3o?= Date: Tue, 8 Feb 2022 19:22:42 +0000 Subject: [PATCH 1/2] Add staging environment with email view --- config/stg.exs | 72 ++++++++++++++++++++++++++++++++++++++++ lib/safira_web/router.ex | 2 +- 2 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 config/stg.exs diff --git a/config/stg.exs b/config/stg.exs new file mode 100644 index 00000000..c2af923c --- /dev/null +++ b/config/stg.exs @@ -0,0 +1,72 @@ +use Mix.Config + +# For production, don't forget to configure the url host +# to something meaningful, Phoenix uses this information +# when generating URLs. +# +# Note we also include the path to a cache manifest +# containing the digested version of static files. This +# manifest is generated by the `mix phx.digest` task, +# which you should run after static files are built and +# before starting your production server. +config :safira, SafiraWeb.Endpoint, + load_from_system_env: true, + url: [scheme: "https", host: System.get_env("URL"), port: 443], + force_ssl: [rewrite_on: [:x_forwarded_proto]], + cache_static_manifest: "priv/static/cache_manifest.json", + secret_key_base: Map.fetch!(System.get_env(), "SECRET_KEY_BASE") + +# Configure your database +config :safira, Safira.Repo, + adapter: Ecto.Adapters.Postgres, + url: System.get_env("DATABASE_URL"), + pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"), + ssl: true + +# Do not print debug messages in production +config :logger, level: :info + +# ## SSL Support +# +# To get SSL working, you will need to add the `https` key +# to the previous section and set your `:url` port to 443: +# +# config :safira, SafiraWeb.Endpoint, +# ... +# url: [host: "example.com", port: 443], +# https: [:inet6, +# port: 443, +# keyfile: System.get_env("SOME_APP_SSL_KEY_PATH"), +# certfile: System.get_env("SOME_APP_SSL_CERT_PATH")] +# +# Where those two env variables return an absolute path to +# the key and cert in disk or a relative path inside priv, +# for example "priv/ssl/server.key". +# +# We also recommend setting `force_ssl`, ensuring no data is +# ever sent via http, always redirecting to https: +# +# config :safira, SafiraWeb.Endpoint, +# force_ssl: [hsts: true] +# +# Check `Plug.SSL` for all available options in `force_ssl`. + +# ## Using releases +# +# If you are doing OTP releases, you need to instruct Phoenix +# to start the server for all endpoints: +# +# config :phoenix, :serve_endpoints, true +# +# Alternatively, you can configure exactly which server to +# start per endpoint: +# +# config :safira, SafiraWeb.Endpoint, server: true +# + +config :safira, Safira.Mailer, + adapter: Bamboo.LocalAdapter + +# Finally import the config/prod.secret.exs +# which should be versioned separately. +# import_config "prod.secret.exs" diff --git a/lib/safira_web/router.ex b/lib/safira_web/router.ex index d8442970..32e0f185 100644 --- a/lib/safira_web/router.ex +++ b/lib/safira_web/router.ex @@ -4,7 +4,7 @@ defmodule SafiraWeb.Router do alias Safira.Guardian - if Mix.env() == :dev do + if Mix.env() in [:dev, :stg} do forward "/sent_emails", Bamboo.SentEmailViewerPlug end From 326274d1925b627a6729abcfb4c319a5194fdd6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nelson=20Estev=C3=A3o?= Date: Sun, 13 Feb 2022 15:24:13 +0000 Subject: [PATCH 2/2] Update lib/safira_web/router.ex --- lib/safira_web/router.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/safira_web/router.ex b/lib/safira_web/router.ex index 32e0f185..c2fc7585 100644 --- a/lib/safira_web/router.ex +++ b/lib/safira_web/router.ex @@ -4,7 +4,7 @@ defmodule SafiraWeb.Router do alias Safira.Guardian - if Mix.env() in [:dev, :stg} do + if Mix.env() in [:dev, :stg] do forward "/sent_emails", Bamboo.SentEmailViewerPlug end