diff options
Diffstat (limited to 'shardweb/config')
-rw-r--r-- | shardweb/config/config.exs | 27 | ||||
-rw-r--r-- | shardweb/config/dev.exs | 49 | ||||
-rw-r--r-- | shardweb/config/prod.exs | 64 | ||||
-rw-r--r-- | shardweb/config/test.exs | 10 |
4 files changed, 150 insertions, 0 deletions
diff --git a/shardweb/config/config.exs b/shardweb/config/config.exs new file mode 100644 index 0000000..1b00d4e --- /dev/null +++ b/shardweb/config/config.exs @@ -0,0 +1,27 @@ +# This file is responsible for configuring your application +# and its dependencies with the aid of the Mix.Config module. +# +# This configuration file is loaded before any dependency and +# is restricted to this project. +use Mix.Config + +# Configures the endpoint +config :shardweb, ShardWeb.Endpoint, + url: [host: "localhost"], + secret_key_base: "HvLjdQ89FJDqv/g+/ya+62cghndUE6lKqTXWcgls2E8VU5Dtmxg4y8OnYaCEiQun", + render_errors: [view: ShardWeb.ErrorView, accepts: ~w(html json)], + pubsub: [name: Shardweb.PubSub, + adapter: Phoenix.PubSub.PG2] + +# Configures Elixir's Logger +config :logger, :console, + format: "$time $metadata[$level] $message\n", + metadata: [:user_id] + + +# Configuration for Shard itself (see shard/config/config.exs for expanations) +config :shard, peer_id_suffix: "S" + +# Import environment specific config. This must remain at the bottom +# of this file so it overrides the configuration defined above. +import_config "#{Mix.env}.exs" diff --git a/shardweb/config/dev.exs b/shardweb/config/dev.exs new file mode 100644 index 0000000..f5d95e9 --- /dev/null +++ b/shardweb/config/dev.exs @@ -0,0 +1,49 @@ +use Mix.Config + +# For development, we disable any cache and enable +# debugging and code reloading. +# +# The watchers configuration can be used to run external +# watchers to your application. For example, we use it +# with brunch.io to recompile .js and .css sources. +config :shardweb, ShardWeb.Endpoint, + http: [port: 4000], + debug_errors: true, + code_reloader: true, + check_origin: false, + watchers: [node: ["node_modules/brunch/bin/brunch", "watch", "--stdin", + cd: Path.expand("../assets", __DIR__)]] + +# ## SSL Support +# +# In order to use HTTPS in development, a self-signed +# certificate can be generated by running the following +# command from your terminal: +# +# openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout priv/server.key -out priv/server.pem +# +# The `http:` config above can be replaced with: +# +# https: [port: 4000, keyfile: "priv/server.key", certfile: "priv/server.pem"], +# +# If desired, both `http:` and `https:` keys can be +# configured to run both http and https servers on +# different ports. + +# Watch static and templates for browser reloading. +config :shardweb, ShardWeb.Endpoint, + live_reload: [ + patterns: [ + ~r{priv/static/.*(js|css|png|jpeg|jpg|gif|svg)$}, + ~r{priv/gettext/.*(po)$}, + ~r{lib/shard_web/views/.*(ex)$}, + ~r{lib/shard_web/templates/.*(eex)$} + ] + ] + +# Do not include metadata nor timestamps in development logs +config :logger, :console, format: "[$level] $message\n" + +# Set a higher stacktrace during development. Avoid configuring such +# in production as building large stacktraces may be expensive. +config :phoenix, :stacktrace_depth, 20 diff --git a/shardweb/config/prod.exs b/shardweb/config/prod.exs new file mode 100644 index 0000000..f700768 --- /dev/null +++ b/shardweb/config/prod.exs @@ -0,0 +1,64 @@ +use Mix.Config + +# For production, we often load configuration from external +# sources, such as your system environment. For this reason, +# you won't find the :http configuration below, but set inside +# ShardWeb.Endpoint.init/2 when load_from_system_env is +# true. Any dynamic configuration should be done there. +# +# Don't forget to configure the url host to something meaningful, +# Phoenix uses this information when generating URLs. +# +# Finally, 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 typically run after static files are built. +config :shardweb, ShardWeb.Endpoint, + load_from_system_env: true, + url: [host: "example.com", port: 80], + 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 :shardweb, ShardWeb.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 :shardweb, ShardWeb.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 :shardweb, ShardWeb.Endpoint, server: true +# + +# Finally import the config/prod.secret.exs +# which should be versioned separately. +import_config "prod.secret.exs" diff --git a/shardweb/config/test.exs b/shardweb/config/test.exs new file mode 100644 index 0000000..578da84 --- /dev/null +++ b/shardweb/config/test.exs @@ -0,0 +1,10 @@ +use Mix.Config + +# We don't run a server during test. If one is required, +# you can enable the server option below. +config :shardweb, ShardWeb.Endpoint, + http: [port: 4001], + server: false + +# Print only warnings and errors during test +config :logger, level: :warn |