24 lines
705 B
Python
24 lines
705 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
import time
|
||
|
|
from dataclasses import dataclass, field
|
||
|
|
from typing import Any
|
||
|
|
|
||
|
|
|
||
|
|
@dataclass
|
||
|
|
class RuntimeState:
|
||
|
|
labels: dict[str, str] = field(default_factory=dict)
|
||
|
|
persist_key: str = ""
|
||
|
|
nodes: list[dict] = field(default_factory=list)
|
||
|
|
cluster: dict[str, Any] = field(default_factory=dict)
|
||
|
|
strict_mode: bool = False
|
||
|
|
main_node: bool = True
|
||
|
|
node_id: str = ""
|
||
|
|
shared_persist: dict[str, Any] = field(default_factory=dict)
|
||
|
|
services: list[str] = field(default_factory=list)
|
||
|
|
started_at: float = field(default_factory=time.time)
|
||
|
|
active_channels: int = 0
|
||
|
|
phase: str = "not_started"
|
||
|
|
request_count: int = 0
|
||
|
|
error_count: int = 0
|