-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathclient_config.py
More file actions
42 lines (36 loc) · 1.19 KB
/
client_config.py
File metadata and controls
42 lines (36 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from expb.configs.networks import Network
CLIENTS_DATA_DIR = "/execution-data"
CLIENTS_JWT_SECRET_DIR = "/jwt-secret"
CLIENTS_JWT_SECRET_FILE = f"{CLIENTS_JWT_SECRET_DIR}/jwtsecret.hex"
CLIENT_RPC_PORT = 8545
CLIENT_RPC_WS_PORT = 8546
CLIENT_ENGINE_PORT = 8551
CLIENT_METRICS_PORT = 6060
CLIENT_P2P_PORT = 30303
class ClientConfig:
def __init__(
self,
name: str,
default_image: str,
default_command: list[str] = [],
default_env: dict[str, str] = {},
prometheus_metrics_path: str = "/metrics",
sse_data_feed_path: str | None = None,
entrypoint: str | None = None,
):
self.name = name
self.default_image = default_image
self.default_command = default_command
self.default_env = default_env
self.prometheus_metrics_path = prometheus_metrics_path
self.sse_data_feed_path = sse_data_feed_path
self.entrypoint = entrypoint
def get_command(
self,
instance: str,
network: Network,
extra_flags: list[str] = [],
) -> list[str]:
raise NotImplementedError("get_network_command is not implemented")
def __str__(self) -> str:
return self.name