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 :plausible, PlausibleWeb.Endpoint, http: [:inet6, port: System.get_env("PORT") || 4000], url: [host: System.get_env("HOST"), scheme: "https", port: 443], cache_static_manifest: "priv/static/cache_manifest.json" # 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 :plausible, PlausibleWeb.Endpoint, # ... # url: [host: "example.com", port: 443], # https: [ # :inet6, # port: 443, # cipher_suite: :strong, # keyfile: System.get_env("SOME_APP_SSL_KEY_PATH"), # certfile: System.get_env("SOME_APP_SSL_CERT_PATH") # ] # # The `cipher_suite` is set to `:strong` to support only the # latest and more secure SSL ciphers. This means old browsers # and clients may not be supported. You can set it to # `:compatible` for wider support. # # `:keyfile` and `:certfile` expect an absolute path to the key # and cert in disk or a relative path inside priv, for example # "priv/ssl/server.key". For all supported SSL configuration # options, see https://hexdocs.pm/plug/Plug.SSL.html#configure/1 # # We also recommend setting `force_ssl` in your endpoint, ensuring # no data is ever sent via http, always redirecting to https: # # config :plausible, PlausibleWeb.Endpoint, # force_ssl: [hsts: true] # # Check `Plug.SSL` for all available options in `force_ssl`. # ## Using releases (distillery) # # 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 :plausible, PlausibleWeb.Endpoint, server: true # # Note you can't rely on `System.get_env/1` when using releases. # See the releases documentation accordingly. # Finally import the config/prod.secret.exs which should be versioned # separately. config :plausible, PlausibleWeb.Endpoint, secret_key_base: System.get_env("SECRET_KEY_BASE") # Configure your database config :plausible, Plausible.Repo, adapter: Ecto.Adapters.Postgres, url: System.get_env("AVIEN_DATABASE_URL"), pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"), timeout: 10_000, ssl: true config :plausible, :google, client_id: System.get_env("GOOGLE_CLIENT_ID"), client_secret: System.get_env("GOOGLE_CLIENT_SECRET") config :plausible, :slack, webhook: System.get_env("SLACK_WEBHOOK") config :plausible, Plausible.Mailer, adapter: Bamboo.PostmarkAdapter, api_key: System.get_env("POSTMARK_API_KEY") config :plausible, :twitter, [ consumer_key: System.get_env("TWITTER_CONSUMER_KEY"), consumer_secret: System.get_env("TWITTER_CONSUMER_SECRET"), token: System.get_env("TWITTER_ACCESS_TOKEN"), token_secret: System.get_env("TWITTER_ACCESS_TOKEN_SECRET") ]