From f4001ca148b1c5e2d8db13643061a719953cc821 Mon Sep 17 00:00:00 2001 From: Cassowary Rusnov Date: Wed, 30 Nov 2022 13:47:10 -0800 Subject: [PATCH] Allow configuration via environment variables. --- .env.sample | 16 ++++++++++++++-- compose.sso.yml | 8 ++++++++ compose.yml | 12 ++++++++++++ config.json.tmpl | 10 ++++++++++ 4 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 compose.sso.yml create mode 100644 config.json.tmpl diff --git a/.env.sample b/.env.sample index 659c864..f2269d1 100644 --- a/.env.sample +++ b/.env.sample @@ -1,8 +1,20 @@ TYPE=fluffychat DOMAIN=fluffychat.example.com - ## Domain aliases #EXTRA_DOMAINS=', `www.fluffychat.example.com`' - LETS_ENCRYPT_ENV=production + +COMPOSE_FILE="compose.yml" + +# Single Sign-On using traefik-forward-auth +#TFA_MIDDLEWARE_NAME="keycloak" +#COMPOSE_FILE="$COMPOSE_FILE:compose.sso.yml" + +# User configuration + +# Tab labels etc. +FLUFFY_APPLICATION_NAME=FluffyChat + +# What the homeserver at the login screen defaults to +FLUFFY_DEFAULT_HOMESERVER=matrix.example.com diff --git a/compose.sso.yml b/compose.sso.yml new file mode 100644 index 0000000..385457b --- /dev/null +++ b/compose.sso.yml @@ -0,0 +1,8 @@ +version: "3.8" +services: + app: + environment: + - TFA_MIDDLEWARE_NAME + deploy: + labels: + - "traefik.http.routers.${STACK_NAME}.middlewares=${TFA_MIDDLEWARE_NAME}@file" diff --git a/compose.yml b/compose.yml index 576a985..0e2a25b 100644 --- a/compose.yml +++ b/compose.yml @@ -4,8 +4,14 @@ version: "3.8" services: app: image: git.coopcloud.tech/coop-cloud/fluffychat:v1.7.1 + environment: + - FLUFFY_APPLICATION_NAME + - FLUFFY_DEFAULT_HOMESERVER networks: - proxy + configs: + - source: config_json + target: /usr/share/nginx/config.json deploy: restart_policy: condition: on-failure @@ -30,3 +36,9 @@ services: networks: proxy: external: true + +configs: + config_json: + name: ${STACK_NAME}_config_json_${CONFIG_JSON_VERSION} + file: config.json.tmpl + template_driver: golang diff --git a/config.json.tmpl b/config.json.tmpl new file mode 100644 index 0000000..3eaaab9 --- /dev/null +++ b/config.json.tmpl @@ -0,0 +1,10 @@ +{ + "application_name": "{{ env "FLUFFY_APPLICATION_NAME" }}", + "application_welcome_message": null, + "default_homeserver": "{{ env "FLUFFY_DEFAULT_HOMESERVER" }}", + "web_base_url": "https://{{ env "DOMAIN" }}/", + "privacy_url": "https://{{ env "DOMAIN" }}/en/privacy.html", + "render_html": false, + "hide_redacted_events": false, + "hide_unknown_events": false +}