summaryrefslogtreecommitdiffstats
path: root/config.py
diff options
context:
space:
mode:
Diffstat (limited to 'config.py')
-rw-r--r--config.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/config.py b/config.py
new file mode 100644
index 0000000..f3b597b
--- /dev/null
+++ b/config.py
@@ -0,0 +1,55 @@
+# -*- coding: utf-8 -*-
+from ruamel.yaml import YAML
+
+with open("config.yml", "r", encoding="utf-8") as file:
+ config = YAML()
+ config = config.load(file)
+
+
+class Config(object):
+ DEBUG = False
+ TESTING = False
+ SECRET_KEY = config['secret-key']
+ CSRF_ENABLED = True
+
+ # joplin
+ JOPLIN_DIR = config['joplin_webdav_dir']
+ INVITE_CODE = config['invite_code']
+
+ # flask-htpasswd
+ FLASK_SECRET = config['flask-secret']
+ FLASK_HTPASSWD_PATH = config['htpasswd_file']
+
+ # cache
+ CACHE_TYPE = config['cache_type']
+ CACHE_KEY_PREFIX = config['cache_key_prefix']
+ CACHE_REDIS_URL = config['cache_redis_url']
+
+ # session cookies
+ SESSION_COOKIE_SECURE = True
+ SESSION_COOKIE_DOMAIN = config['cookie_domain']
+ SESSION_COOKIE_SAMESITE='Lax'
+ SESSION_COOKIE_PATH = config['cookie_path']
+ PERMANENT_SESSION_LIFETIME = 600
+
+
+class DevelopConfig(Config):
+ DEBUG = True
+ TESTING = True
+ CSRF_ENABLED = False
+
+ # joplin
+ JOPLIN_DIR = "."
+
+ # flask-htpasswd
+ FLASK_HTPASSWD_PATH = "./local.htpasswd"
+
+ # cache
+ CACHE_TYPE = config['cache_type']
+ CACHE_KEY_PREFIX = config['cache_key_prefix']
+ CACHE_REDIS_URL = config['cache_redis_url']
+
+ # session cookies
+ SESSION_COOKIE_SECURE = False
+ SESSION_COOKIE_DOMAIN = None
+ SESSION_COOKIE_SAMESITE = None