quick-start-connectors
34 строки · 837.0 Байт
1import logging
2import os
3
4import connexion # type: ignore
5from dotenv import load_dotenv
6
7
8load_dotenv()
9
10API_VERSION = "api.yaml"
11
12
13class UpstreamProviderError(Exception):
14def __init__(self, message) -> None:
15self.message = message
16
17def __str__(self) -> str:
18return self.message
19
20
21def create_app() -> connexion.FlaskApp:
22app = connexion.FlaskApp(__name__, specification_dir="../../.openapi")
23app.add_api(
24API_VERSION,
25resolver=connexion.resolver.RelativeResolver("provider.app"),
26)
27logging.basicConfig(level=logging.INFO)
28flask_app = app.app
29config_prefix = os.path.split(os.getcwd())[
301
31].upper() # Current directory name, upper-cased
32flask_app.config.from_prefixed_env(config_prefix)
33flask_app.config["APP_ID"] = config_prefix
34return flask_app
35