matemat/matemat/__main__.py

28 lines
700 B
Python

from typing import Any, Dict, Iterable, Union
import sys
from matemat.webserver import MatematWebserver
from matemat.webserver import parse_config_file
# Those imports are actually needed, as they implicitly register pagelets.
# noinspection PyUnresolvedReferences
from matemat.webserver.pagelets import *
def main():
# Use config file name from command line, if present
configfile: Union[str, Iterable[str]] = '/etc/matemat.conf'
if len(sys.argv) > 1:
configfile = sys.argv[1:]
# Parse the config file
config: Dict[str, Any] = parse_config_file(configfile)
# Start the web server
MatematWebserver(**config).start()
if __name__ == '__main__':
main()