35 lines
631 B
Python

from pydantic import BaseModel
class DatabaseConfig(BaseModel):
user: str
password: str
host: str
port: int
database: str
class RuntimeConfig(BaseModel):
environment: str
scheme: str
host: str
port: int
class GitConfig(BaseModel):
state_repo_path: str
state_repo_remote: str
state_repo_user: str
state_repo_keyfile: str
state_repo_pubkeyfile: str
class PTCLIConfig(BaseModel):
scheme: str
host: str
port: int
user: str
password: str
class Config(BaseModel):
db: DatabaseConfig
runtime: RuntimeConfig
ptcli: PTCLIConfig
git: GitConfig