Files
haproxy-dashboard/config/settings.py
Mateusz Gruszczyński addb21bc3e rewrite
2025-11-04 09:56:37 +01:00

40 lines
1.3 KiB
Python

"""Application Settings and Configuration"""
import os
from datetime import timedelta
# ===== FLASK =====
DEBUG = os.environ.get('FLASK_DEBUG', False)
SECRET_KEY = os.environ.get('SECRET_KEY', 'dev-secret-key-change-in-production')
# ===== DATABASE =====
BASEDIR = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
f'sqlite:///{os.path.join(BASEDIR, "instance", "app.db")}'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_ECHO = DEBUG
# ===== SESSION =====
PERMANENT_SESSION_LIFETIME = timedelta(days=7)
SESSION_COOKIE_SECURE = True
SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_SAMESITE = 'Lax'
# ===== FILE UPLOAD =====
MAX_CONTENT_LENGTH = 16 * 1024 * 1024 # 16MB max
UPLOAD_FOLDER = os.path.join(BASEDIR, 'uploads', 'certificates')
ALLOWED_EXTENSIONS = {'pem', 'crt', 'key', 'cert'}
# ===== HAPROXY =====
HAPROXY_CONFIG_PATH = '/etc/haproxy/haproxy.cfg'
HAPROXY_BACKUP_DIR = os.path.join(BASEDIR, 'backups')
HAPROXY_STATS_PORT = 8404 # Hardcoded na stałe dla statystyk
HAPROXY_LOG_FILE = '/var/log/haproxy.log'
# ===== DEFAULT AUTH =====
DEFAULT_ADMIN_USERNAME = os.environ.get('ADMIN_USERNAME', 'admin')
DEFAULT_ADMIN_PASSWORD = os.environ.get('ADMIN_PASSWORD', 'admin123')
# ===== LOGGING =====
LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO')