miniwerk.config

Configuration

Module Contents

Classes

KeyType

Valid key types for certbot/mkcert

ProductSettings

Configs for each product

MWConfig

Config for MiniWerk

class KeyType[source]

Bases: enum.StrEnum

Valid key types for certbot/mkcert

RSA = 'rsa'[source]
ECDSA = 'ecdsa'[source]
class ProductSettings[source]

Bases: pydantic_settings.BaseSettings

Configs for each product

api_port: int[source]
class MWConfig[source]

Bases: pydantic_settings.BaseSettings

Config for MiniWerk

property le_config_path: pathlib.Path[source]

LE configuration dir

Return type:

pathlib.Path

property mkcert_path: pathlib.Path[source]

mkcert certs dir

Return type:

pathlib.Path

property le_work_path: pathlib.Path[source]

LE work dir (doesn’t seem to actually hold anything persistent)

Return type:

pathlib.Path

property le_cert_dir: pathlib.Path[source]

The “live” dir for the cert we have, remember the “file” here are symlinks

Return type:

pathlib.Path

property mk_cert_dir: pathlib.Path[source]

The “live” dir for the cert we have

Return type:

pathlib.Path

property fqdns: List[str][source]

Main domain and all subdomains and FQDNs

Return type:

List[str]

property product_manifest_paths: Dict[str, pathlib.Path][source]

Paths for product manifests keyed by product

Return type:

Dict[str, pathlib.Path]

domain: str[source]
le_email: str[source]
le_test: bool[source]
subdomains: str[source]
products: str[source]
fake: ProductSettings[source]
tak: ProductSettings[source]
rasenmaeher: ProductSettings[source]
le_cert_name: str[source]
le_copy_path: pathlib.Path[source]
data_path: pathlib.Path[source]
manifests_base: pathlib.Path[source]
mkcert: bool[source]
ci: bool[source]
keytype: KeyType[source]
model_config[source]
_singleton: ClassVar[MWConfig | None][source]
classmethod singleton()[source]

Return singleton

Return type:

MWConfig