Model API¶
models
¶
Catalog models used while planning a generated Plundarr stack.
Service
dataclass
¶
Service(
id: str,
title: str,
description: str,
category: str,
url: str,
order: int,
compose: str,
environment: str,
service: str,
requires: tuple[str, ...],
recommended: tuple[str, ...],
compose_services: tuple[str, ...],
named_volumes: dict[str, str] = dict[str, str](),
)
Describe one selectable service and its Maraudarr-owned sources.
Attributes:
| Name | Type | Description |
|---|---|---|
id |
str
|
Stable catalog identifier used by presets and CLI selections. |
title |
str
|
Human-readable service name displayed by Maraudarr. |
description |
str
|
Short explanation of the service's stack responsibility. |
category |
str
|
UI group used when presenting selectable services. |
url |
str
|
Upstream project or service information URL. |
order |
int
|
Primary deterministic position in generated output. |
compose |
str
|
Catalog-root-relative Compose source path. |
environment |
str
|
Catalog-root-relative environment source path. |
service |
str
|
Primary Compose service key used for config ownership. |
compose_services |
tuple[str, ...]
|
Ordered Compose service keys deployed as one selection. |
requires |
tuple[str, ...]
|
Service IDs added automatically as hard dependencies. |
recommended |
tuple[str, ...]
|
Related service IDs shown as non-mandatory companions. |
named_volumes |
dict[str, str]
|
Project-scoped Compose volume keys and storage descriptions. |
Preset
dataclass
¶
Preset(
id: str,
title: str,
description: str,
compose_summary: tuple[str, ...],
project_name: str,
network_subnet: str,
network_ip_range: str,
network_gateway: str,
media_root: str,
media_libraries: tuple[str, ...],
host_port_offset: int,
core: tuple[str, ...],
defaults: tuple[str, ...],
)
Describe an opinionated starting selection for a stack.
Attributes:
| Name | Type | Description |
|---|---|---|
id |
str
|
Stable identifier accepted by the CLI. |
title |
str
|
Human-readable preset name displayed by Maraudarr. |
description |
str
|
Short explanation of the preset's intended voyage. |
compose_summary |
tuple[str, ...]
|
Comment lines inserted into the generated chart header. |
project_name |
str
|
Compose project namespace used by fresh environments. |
network_subnet |
str
|
Default private network allocated to the preset. |
network_ip_range |
str
|
Default container allocation range within the subnet. |
network_gateway |
str
|
Default gateway address within the subnet. |
media_root |
str
|
Host directory containing the preset's media libraries. |
media_libraries |
tuple[str, ...]
|
Library directories expected by the preset. |
host_port_offset |
int
|
Offset applied to published ports for fresh stacks. |
core |
tuple[str, ...]
|
Service IDs that cannot be removed from this preset. |
defaults |
tuple[str, ...]
|
Optional service IDs selected when the preset starts. |
services
property
¶
Return every core and optional service selected by default.
Returns:
| Type | Description |
|---|---|
tuple[str, ...]
|
Service IDs in preset declaration order, with core services first. |
StackPlan
dataclass
¶
Store a resolved service selection in deterministic output order.
Attributes:
| Name | Type | Description |
|---|---|---|
preset |
Preset
|
Preset that supplied the plan's identity and core services. |
services |
tuple[Service, ...]
|
Fully resolved services in stable generation order. |
auto_added |
tuple[str, ...]
|
Required service IDs absent from the explicit selection. |
service_ids
property
¶
Return selected service identifiers in generation order.
Returns:
| Type | Description |
|---|---|
tuple[str, ...]
|
Service IDs matching the order of |