You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
1.9 KiB
Python

2 years ago
import os
import yaml
2 years ago
class ServerConfig:
2 years ago
def __init__(self):
config_file = {}
2 years ago
2 years ago
with open("config.yml", "r") as stream:
2 years ago
try:
config_file = yaml.safe_load(stream)
except Exception as e:
print(e)
2 years ago
2 years ago
config = config_file
2 years ago
2 years ago
server_name_override = os.environ.get("VALHALLA_SERVER_NAME")
server_port_override = os.environ.get("VALHALLA_SERVER_PORT")
2 years ago
server_host_override = os.environ.get("VALHALLA_SERVER_HOST")
server_password_override = os.environ.get("VALHALLA_SERVER_PASSWORD")
server_access_username_override = os.environ.get(
"VALHALLA_SERVER_ACCESS_USERNAME")
2 years ago
database_file_override = os.environ.get("VALHALLA_DATABASE_FILE")
2 years ago
server_logging_override = os.environ.get("VALHALLA_LOGLEVEL")
2 years ago
if server_name_override:
config["server_name"] = server_name_override
2 years ago
2 years ago
if server_port_override:
config["server_port"] = server_port_override
2 years ago
if server_host_override:
config["server_host"] = server_host_override
2 years ago
if database_file_override:
config["database_file"] = database_file_override
2 years ago
if server_password_override:
config["server_password"] = server_password_override
if server_access_username_override:
config["server_access_username"] = server_access_username_override
if server_logging_override:
config["server_loglevel"] = server_logging_override
2 years ago
self.server_name = config["server_name"]
self.server_port = config["server_port"]
self.database_file = config["database_file"]
2 years ago
self.server_host = config["server_host"]
self.server_password = config["server_password"]
self.server_access_username = config["server_access_username"]
self.server_loglevel = config["server_loglevel"]