moonstream/moonstreamapi/moonstreamapi/settings.py

132 wiersze
4.6 KiB
Python
Czysty Zwykły widok Historia

2021-07-19 10:31:18 +00:00
import os
from bugout.app import Bugout
2023-04-26 14:55:13 +00:00
from entity.client import Entity # type: ignore
2023-02-14 14:58:10 +00:00
# Bugout
BUGOUT_BROOD_URL = os.environ.get("BUGOUT_BROOD_URL", "https://auth.bugout.dev")
BUGOUT_SPIRE_URL = os.environ.get("BUGOUT_SPIRE_URL", "https://spire.bugout.dev")
2021-10-26 16:07:33 +00:00
bugout_client = Bugout(brood_api_url=BUGOUT_BROOD_URL, spire_api_url=BUGOUT_SPIRE_URL)
2023-04-27 16:04:07 +00:00
# Entity
MOONSTREAM_ENTITY_URL = os.environ.get("MOONSTREAM_ENTITY_URL", "")
if MOONSTREAM_ENTITY_URL == "":
raise ValueError("MOONSTREAM_ENTITY_URL environment variable must be set")
entity_client = Entity(MOONSTREAM_ENTITY_URL)
BUGOUT_REQUEST_TIMEOUT_SECONDS = 5
HUMBUG_REPORTER_BACKEND_TOKEN = os.environ.get("HUMBUG_REPORTER_BACKEND_TOKEN")
2021-09-01 12:03:44 +00:00
# Default value is "" instead of None so that mypy understands that MOONSTREAM_APPLICATION_ID is a string
MOONSTREAM_APPLICATION_ID = os.environ.get("MOONSTREAM_APPLICATION_ID", "")
if MOONSTREAM_APPLICATION_ID == "":
raise ValueError("MOONSTREAM_APPLICATION_ID environment variable must be set")
MOONSTREAM_DATA_JOURNAL_ID = os.environ.get("MOONSTREAM_DATA_JOURNAL_ID", "")
if MOONSTREAM_DATA_JOURNAL_ID == "":
raise ValueError("MOONSTREAM_DATA_JOURNAL_ID environment variable must be set")
2022-02-16 00:33:22 +00:00
MOONSTREAM_QUERIES_JOURNAL_ID = os.environ.get("MOONSTREAM_QUERIES_JOURNAL_ID", "")
if MOONSTREAM_DATA_JOURNAL_ID == "":
raise ValueError("MOONSTREAM_QUERIES_JOURNAL_ID environment variable must be set")
MOONSTREAM_ADMIN_ACCESS_TOKEN = os.environ.get("MOONSTREAM_ADMIN_ACCESS_TOKEN", "")
if MOONSTREAM_ADMIN_ACCESS_TOKEN == "":
2021-08-03 12:31:46 +00:00
raise ValueError("MOONSTREAM_ADMIN_ACCESS_TOKEN environment variable must be set")
2021-07-28 13:42:50 +00:00
2021-07-19 10:31:18 +00:00
# Origin
2021-07-21 16:57:47 +00:00
RAW_ORIGINS = os.environ.get("MOONSTREAM_CORS_ALLOWED_ORIGINS")
if RAW_ORIGINS is None:
2021-07-19 10:31:18 +00:00
raise ValueError(
"MOONSTREAM_CORS_ALLOWED_ORIGINS environment variable must be set (comma-separated list of CORS allowed origins)"
2021-07-19 10:31:18 +00:00
)
2021-07-21 16:57:47 +00:00
ORIGINS = RAW_ORIGINS.split(",")
2021-07-19 10:31:18 +00:00
# OpenAPI
DOCS_TARGET_PATH = "docs"
2021-08-06 14:03:24 +00:00
2021-08-09 18:30:44 +00:00
DEFAULT_STREAM_TIMEINTERVAL = 5 * 60
2021-08-23 13:47:33 +00:00
HUMBUG_TXPOOL_CLIENT_ID = os.environ.get(
"HUMBUG_TXPOOL_CLIENT_ID", "client:ethereum-txpool-crawler-0"
)
2021-08-23 13:47:33 +00:00
# S3 Bucket
ETHERSCAN_SMARTCONTRACTS_BUCKET = os.environ.get("MOONSTREAM_S3_SMARTCONTRACTS_BUCKET")
2021-08-24 11:27:03 +00:00
if ETHERSCAN_SMARTCONTRACTS_BUCKET is None:
raise ValueError("MOONSTREAM_S3_SMARTCONTRACTS_BUCKET is not set")
2021-10-26 08:12:09 +00:00
MOONSTREAM_S3_SMARTCONTRACTS_ABI_BUCKET = os.environ.get(
"MOONSTREAM_S3_SMARTCONTRACTS_ABI_BUCKET"
)
if MOONSTREAM_S3_SMARTCONTRACTS_ABI_BUCKET is None:
2021-11-08 15:30:11 +00:00
raise ValueError(
"MOONSTREAM_S3_SMARTCONTRACTS_ABI_BUCKET environment variable must be set"
2021-11-08 15:30:11 +00:00
)
MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX = os.environ.get(
"MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX"
)
if MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX is None:
2021-11-08 15:43:48 +00:00
raise ValueError(
"MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX environment variable must be set"
2021-11-08 15:43:48 +00:00
)
2022-03-08 15:10:06 +00:00
MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX = (
MOONSTREAM_S3_SMARTCONTRACTS_ABI_PREFIX.rstrip("/")
)
2021-12-16 13:26:04 +00:00
2022-01-17 13:16:31 +00:00
MOONSTREAM_CRAWLERS_SERVER_URL = os.environ.get("MOONSTREAM_CRAWLERS_SERVER_URL")
2022-01-17 12:56:47 +00:00
if MOONSTREAM_CRAWLERS_SERVER_URL is None:
2022-01-17 13:16:31 +00:00
raise ValueError("MOONSTREAM_CRAWLERS_SERVER_URL environment variable must be set")
2022-01-17 12:56:47 +00:00
MOONSTREAM_CRAWLERS_SERVER_URL = MOONSTREAM_CRAWLERS_SERVER_URL.rstrip("/")
2022-01-17 13:16:31 +00:00
MOONSTREAM_CRAWLERS_SERVER_PORT = os.environ.get("MOONSTREAM_CRAWLERS_SERVER_PORT")
if MOONSTREAM_CRAWLERS_SERVER_PORT is None:
raise ValueError("MOONSTREAM_CRAWLERS_SERVER_PORT environment variable must be set")
MOONSTREAM_CRAWLERS_SERVER_PORT = MOONSTREAM_CRAWLERS_SERVER_PORT.rstrip("/")
2021-12-03 20:53:05 +00:00
MOONSTREAM_MOONWORM_TASKS_JOURNAL = os.environ.get(
"MOONSTREAM_MOONWORM_TASKS_JOURNAL", ""
)
if MOONSTREAM_MOONWORM_TASKS_JOURNAL == "":
raise ValueError(
"MOONSTREAM_MOONWORM_TASKS_JOURNAL environment variable must be set"
)
2021-12-22 09:07:37 +00:00
# Web3
MOONSTREAM_ETHEREUM_WEB3_PROVIDER_URI = os.environ.get(
"MOONSTREAM_ETHEREUM_WEB3_PROVIDER_URI", ""
)
if MOONSTREAM_ETHEREUM_WEB3_PROVIDER_URI == "":
raise ValueError(
"MOONSTREAM_ETHEREUM_WEB3_PROVIDER_URI environment variable must be set"
)
2022-02-17 10:22:20 +00:00
MOONSTREAM_S3_QUERIES_BUCKET = os.environ.get("MOONSTREAM_S3_QUERIES_BUCKET", "")
if MOONSTREAM_S3_QUERIES_BUCKET == "":
raise ValueError("MOONSTREAM_S3_QUERIES_BUCKET environment variable must be set")
2022-03-07 17:14:56 +00:00
MOONSTREAM_S3_QUERIES_BUCKET_PREFIX = os.environ.get(
"MOONSTREAM_S3_QUERIES_BUCKET_PREFIX", ""
2022-03-07 17:14:56 +00:00
)
if MOONSTREAM_S3_QUERIES_BUCKET_PREFIX == "":
2022-03-07 17:14:56 +00:00
raise ValueError(
"MOONSTREAM_S3_QUERIES_BUCKET_PREFIX environment variable must be set"
2022-03-07 17:14:56 +00:00
)
2023-02-14 14:55:52 +00:00
## Moonstream resources types
2023-02-14 14:55:52 +00:00
BUGOUT_RESOURCE_TYPE_SUBSCRIPTION = "subscription"
BUGOUT_RESOURCE_TYPE_ENTITY_SUBSCRIPTION = "entity_subscription"
BUGOUT_RESOURCE_TYPE_DASHBOARD = "dashboards"