summaryrefslogtreecommitdiff
path: root/config/runtime.exs
diff options
context:
space:
mode:
authorLogan Hunt <loganhunt@simponic.xyz>2023-01-19 14:04:10 -0700
committerGitHub <noreply@github.com>2023-01-19 14:04:10 -0700
commit4666d7871a9e064a3b3033c7c1daa9c3c4972d98 (patch)
tree340ee6ae1dc6410f73bb7862a89c01b7039807de /config/runtime.exs
parentbdf99b4ee989df1813745e1dfd2983689b09ca85 (diff)
downloadchessh-4666d7871a9e064a3b3033c7c1daa9c3c4972d98.tar.gz
chessh-4666d7871a9e064a3b3033c7c1daa9c3c4972d98.zip
Web Client (#11)
* Github Oauth * A simple frontend * Add middleware proxy on dev * Forward proxy and rewrite path, add oauth to frontend, increase jwt expiry time to 12 hours * Some simple style changes * Add keys as user * Checkpoint - auth is broken * Fix auth and use player model, unrelated to this pr: flip board if dark * Close player session when password or key deleted or put * Add build script - this branch is quickly becoming cringe * Docker v2 - add migration and scripts, fix local storage and index that caused build issues * Ignore keys, proxy api correctly nginx * Finally nginx is resolved jesus christ * Remove max screen dimension limits cuz cringe * Cursor highlight * Add password form, some minor frontend changes as well * Remove cringe on home page * Move to 127.0.0.1 loopback in env * Add github id in player structs for tests
Diffstat (limited to 'config/runtime.exs')
-rw-r--r--config/runtime.exs31
1 files changed, 31 insertions, 0 deletions
diff --git a/config/runtime.exs b/config/runtime.exs
new file mode 100644
index 0000000..5c741ff
--- /dev/null
+++ b/config/runtime.exs
@@ -0,0 +1,31 @@
+import Config
+
+config :chessh,
+ port: String.to_integer(System.get_env("SSH_PORT", "42069"))
+
+config :chessh, Web,
+ github_client_id: System.get_env("GITHUB_CLIENT_ID"),
+ github_client_secret: System.get_env("GITHUB_CLIENT_SECRET"),
+ github_user_agent: System.get_env("GITHUB_USER_AGENT"),
+ client_redirect_after_successful_sign_in:
+ System.get_env("CLIENT_REDIRECT_AFTER_OAUTH", "http://localhost:3000")
+
+config :joken,
+ default_signer: System.get_env("JWT_SECRET")
+
+if config_env() == :prod do
+ database_url =
+ System.get_env("DATABASE_URL") ||
+ raise """
+ environment variable DATABASE_URL is missing.
+ For example: ecto://USER:PASS@HOST/DATABASE
+ """
+
+ maybe_ipv6 = if System.get_env("ECTO_IPV6"), do: [:inet6], else: []
+
+ config :chessh, Chessh.Repo,
+ # ssl: true,
+ url: database_url,
+ pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"),
+ socket_options: maybe_ipv6
+end