import os import click import uvicorn from dotenv import load_dotenv @click.command() @click.option( "--env", type=click.Choice(["local", "dev", "prod"], case_sensitive=False), default="local", ) def main(env: str): load_dotenv() os.environ["ENV"] = env if env == "prod": raise Exception("Production environment not supported yet!") uvicorn.run( app="app.server:app", host="localhost", port=8000, reload=True if env != "prod" else False, workers=1, ) if __name__ == "__main__": main()