-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathenv.py
81 lines (62 loc) · 1.94 KB
/
env.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
import os
from dotenv import dotenv_values
import logging
logging.basicConfig(
format="%(asctime)s %(levelname)-8s %(message)s",
datefmt="%Y-%m-%d %H:%M:%S",
)
config = {**os.environ, **dotenv_values(".env"), **dotenv_values(".env.local")}
ENVMODE = config.get("ENV_MODE", "dev")
config = {
**config,
**dotenv_values(f".env.{ENVMODE}"),
**dotenv_values(f".env.{ENVMODE}.local"),
}
def areWeInProd():
return ENVMODE == "prod"
def isItDevEnvironment():
return not areWeInProd()
APP_NAME = config.get("APP_NAME", "unset")
LOG_LEVEL = config.get("LOG_LEVEL", "NOTSET").upper()
logger = logging.getLogger(config.get("APP_NAME", __name__))
if LOG_LEVEL == "NOTSET":
logger.setLevel(logging.NOTSET)
elif LOG_LEVEL == "DEBUG":
logger.setLevel(logging.DEBUG)
elif LOG_LEVEL == "INFO":
logger.setLevel(logging.INFO)
elif LOG_LEVEL == "WARNING":
logger.setLevel(logging.WARNING)
elif LOG_LEVEL == "ERROR":
logger.setLevel(logging.ERROR)
elif LOG_LEVEL == "CRITICAL":
logger.setLevel(logging.CRITICAL)
DISCORDBOT_TOKEN = config.get("DISCORDBOT_TOKEN")
DISCORDBOT_PREFIX = config.get("DISCORDBOT_PREFIX")
DISCORDBOT_DEV_GUILD_ID = config.get("DISCORDBOT_DEV_GUILD_ID")
EPSIAPI_USERSURL = config.get("EPSIAPI_USERSURL")
if not EPSIAPI_USERSURL:
raise ValueError("EPSIAPI_USERSURL is not set.")
ASK_FOR_PASSWORD_ON_JOIN = config.get("ASK_FOR_PASSWORD_ON_JOIN", "False").lower() in [
"true",
"yes",
"y",
"1",
]
FETCH_USER_DETAILS = config.get("FETCH_USER_DETAILS", "False").lower() in [
"true",
"yes",
"y",
"1",
]
FETCH_USER_CALENDAR = config.get("FETCH_USER_CALENDAR", "False").lower() in [
"true",
"yes",
"y",
"1",
]
logger.info("App: %s | Env: %s | Log: %s", APP_NAME, ENVMODE, LOG_LEVEL)
if not DISCORDBOT_TOKEN:
raise ValueError("DISCORDBOT_TOKEN is not set.")
if not DISCORDBOT_PREFIX:
logger.warning('DISCORDBOT_PREFIX is not set. Using default value ("*/").')