Files
motia/bitbylaw/config.py
root f4490f21cb Fix logging to appear in Motia workbench
- Updated log_operation to use context.logger.warn for warnings
- Added context parameter to all functions with logging
- Replaced all direct logger calls with log_operation calls
- Ensured all logging goes through context.logger for workbench visibility
- Adjusted backoff base from 4 to 3 for faster retries
- Added debug kuerzel list support in cron step
2025-10-24 07:04:57 +00:00

41 lines
2.2 KiB
Python

import os
from dotenv import load_dotenv
# Load environment variables from .env file
load_dotenv()
class Config:
# Redis settings
REDIS_HOST = os.getenv('REDIS_HOST', 'localhost')
REDIS_PORT = int(os.getenv('REDIS_PORT', '6379'))
REDIS_DB_ADVOWARE_CACHE = int(os.getenv('REDIS_DB_ADVOWARE_CACHE', '1'))
REDIS_DB_CALENDAR_SYNC = int(os.getenv('REDIS_DB_CALENDAR_SYNC', '2'))
REDIS_TIMEOUT_SECONDS = int(os.getenv('REDIS_TIMEOUT_SECONDS', '5'))
# Advoware API settings
ADVOWARE_API_BASE_URL = os.getenv('ADVOWARE_API_BASE_URL', 'https://www2.advo-net.net:90/')
ADVOWARE_PRODUCT_ID = int(os.getenv('ADVOWARE_PRODUCT_ID', '64'))
ADVOWARE_APP_ID = os.getenv('ADVOWARE_APP_ID', 'your_app_id')
ADVOWARE_API_KEY = os.getenv('ADVOWARE_API_KEY', 'your_api_key')
ADVOWARE_KANZLEI = os.getenv('ADVOWARE_KANZLEI', 'your_kanzlei')
ADVOWARE_DATABASE = os.getenv('ADVOWARE_DATABASE', 'your_database')
ADVOWARE_USER = os.getenv('ADVOWARE_USER', 'your_user')
ADVOWARE_ROLE = int(os.getenv('ADVOWARE_ROLE', '2'))
ADVOWARE_PASSWORD = os.getenv('ADVOWARE_PASSWORD', 'your_password')
ADVOWARE_TOKEN_LIFETIME_MINUTES = int(os.getenv('ADVOWARE_TOKEN_LIFETIME_MINUTES', '55'))
ADVOWARE_API_TIMEOUT_SECONDS = int(os.getenv('ADVOWARE_API_TIMEOUT_SECONDS', '30'))
# Google Calendar API settings (Service Account only)
GOOGLE_CALENDAR_SERVICE_ACCOUNT_PATH = os.getenv('GOOGLE_CALENDAR_SERVICE_ACCOUNT_PATH', 'service-account.json')
GOOGLE_CALENDAR_SCOPES = ['https://www.googleapis.com/auth/calendar']
# PostgreSQL settings for Calendar Sync Hub
POSTGRES_HOST = os.getenv('POSTGRES_HOST', 'localhost')
POSTGRES_USER = os.getenv('POSTGRES_USER', 'calendar_sync_user')
POSTGRES_PASSWORD = os.getenv('POSTGRES_PASSWORD', 'default_password')
POSTGRES_DB_NAME = os.getenv('POSTGRES_DB_NAME', 'calendar_sync_db')
# Calendar Sync settings
CALENDAR_SYNC_ANONYMIZE_GOOGLE_EVENTS = os.getenv('CALENDAR_SYNC_ANONYMIZE_GOOGLE_EVENTS', 'true').lower() == 'true'
CALENDAR_SYNC_DEBUG_KUERZEL = [k.strip().upper() for k in os.getenv('CALENDAR_SYNC_DEBUG_KUERZEL', 'SB,AI,RO,OK,BI,ST,UR,PB,VB').split(',')]
ADVOWARE_WRITE_PROTECTION = True