import importlib, sys # default config file, copy the contents into local_config.py and modify if __name__ == "local_config": config = importlib.reload(sys.modules["config"]).config else: class config: # dummy, so the local config can simply be a copy of this template ... class config(config): class self: name = "KleaBot" source = "http://git.hollyhock.internal/u/klea/archiveteam" gitdir = "./" class mediawikiAuth: import os login = False username = "" password = "" if 'ATWIKIBOT_USERNAME' in os.environ and 'ATWIKIBOT_PASSWORD' in os.environ: login = True username = os.environ['ATWIKIBOT_USERNAME'] password = os.environ['ATWIKIBOT_PASSWORD'] class admin: ... class cmd: ... # you can remove the following lines if you're editing local_config.py if __name__ == "config": try: config = importlib.reload(sys.modules["local_config"]).config except ModuleNotFoundError: ... #print("\x1b[31m!!! you should probably set up local config !!!\x1b[0m") except KeyError: try: from local_config import config except ModuleNotFoundError: ... #print("\x1b[31m!!! you should probably set up local config !!!\x1b[0m")