80 lines
2.1 KiB
Python
80 lines
2.1 KiB
Python
import sys
|
|
import os
|
|
|
|
import logging as logger
|
|
|
|
from os import environ as env
|
|
from os.path import isdir, isfile, abspath, dirname, basename
|
|
from envbash import load_envbash
|
|
|
|
from .functions import bool_check
|
|
|
|
VERSION = '0.1'
|
|
mastodir = env.get('MASTODIR', os.getcwd())
|
|
stor_path = abspath(f'{mastodir}/paws-data')
|
|
|
|
|
|
if not isdir(stor_path):
|
|
os.makedirs(stor_path, exist_ok=True)
|
|
|
|
|
|
if not bool_check(env.get('LOGDATE', 'yes').lower()):
|
|
log_date = ''
|
|
|
|
else:
|
|
log_date = '[%(asctime)s] '
|
|
|
|
|
|
logging = logger.getLogger()
|
|
logging.setLevel(logger.DEBUG)
|
|
log_format = f'{log_date} %(levelname)s: %(message)s'
|
|
|
|
logger.addLevelName(5, 'VERBOSE')
|
|
logger.addLevelName(30, 'WARN')
|
|
logger.addLevelName(50, 'CRIT')
|
|
|
|
console = logger.StreamHandler()
|
|
console.name = 'Console Log'
|
|
console.level = logger.INFO
|
|
console.formatter = logger.Formatter(log_format)
|
|
|
|
logging.addHandler(console)
|
|
|
|
|
|
full_path = abspath(sys.executable) if getattr(sys, 'frozen', False) else abspath(__file__)
|
|
script_path = getattr(sys, '_MEIPASS', dirname(abspath(__file__)))
|
|
script_name = basename(full_path)
|
|
|
|
|
|
if not isfile(f'{mastodir}/.env.production'):
|
|
logging.error(f'Mastodon environment file doesn\'t exist: {mastodir}/.env.production')
|
|
|
|
else:
|
|
load_envbash(f'{mastodir}/.env.production')
|
|
|
|
if not isfile(f'{stor_path}/production.env'):
|
|
logging.error(f'HECC environment file doesn\'t exist: {stor_path}/production.env')
|
|
|
|
else:
|
|
load_envbash(f'{stor_path}/production.env')
|
|
|
|
MASTOCONFIG={
|
|
'domain': env.get('WEB_DOMAIN', env.get('LOCAL_DOMAIN', 'localhost:3000')),
|
|
'dbhost': env.get('DB_HOST', '/var/run/postgresql'),
|
|
'dbport': env.get('DB_PORT', 5432),
|
|
'dbname': env.get('DB_NAME', 'mastodon_production'),
|
|
'dbuser': env.get('DB_USER', env.get('USER')),
|
|
'dbpass': env.get('DB_PASS')
|
|
}
|
|
|
|
HECCCONFIG = {
|
|
'host': env.get('HECC_HOST', '127.0.0.1'),
|
|
'port': env.get('HECC_PORT', 3001),
|
|
'dbhost': env.get('HECC_DBHOST', MASTOCONFIG['dbhost']),
|
|
'dbport': env.get('HECC_DBPORT', MASTOCONFIG['dbport']),
|
|
'dbname': env.get('HECC_DBNAME', 'hecc'),
|
|
'dbuser': env.get('HECC_DBUSER', MASTOCONFIG['dbuser']),
|
|
'dbpass': env.get('HECC_DBPASS', MASTOCONFIG['dbpass'])
|
|
}
|
|
|