Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

fleet.resources

8 options

fleet.resources

Non-OS resources across all providers. Entries live in nix/hosts/**/resources/ and nix/fleet/dns/inputs.nix.

Type: attribute set of (open submodule of (attribute set))

Default:

{ }

Example:

{
  pool-platform = {
    env = "infra";
    stack = "core";
    provider_instance = "proxmox.dev";
    kind = "pool";
    pool_id = "platform";
    comment = "Platform-tier containers";
  };
}

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.env

Logical env (infra / platform / dev / prod / …). Together with stack forms the leaf stack id <env>.<stack>.

Type: string

Default: none (required when its feature is enabled)

Example:

"infra"

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.kind

What the resource is. Selects the emitter code path and the kind-specific freeform fields it expects (validated in the emitter, not here).

Type: one of "bridge", "pool", "group", "acl", "realm", "dns", "download", "file", "cluster-options", "metrics-server", "sdn-zone", "sdn-vnet", "sdn-subnet", "linux-vlan", "storage-nfs", "storage-dir", "xo-pool", "xo-network", "xo-sr", "xo-template", "xo-iso", "cloudflare-zone", "sm-check", "grafana-contact-point", "grafana-message-template", "grafana-folder", "grafana-rule-group"

Default: none (required when its feature is enabled)

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.node

PVE cluster member name for node-scoped resources. Empty = cluster.primary_node.

Type: string

Default:

""

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.notes

Free-text audit note (why the resource exists, tickets, caveats). Informational only — never affects the emitted Terraform.

Type: string

Default:

""

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.protect

Emit lifecycle.prevent_destroy = true on the generated Terraform resource. The fleet tf destroy preflight refuses to target protected resources.

Type: boolean

Default:

false

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.provider_instance

Pointer to fleet.providers: “.” (e.g. “proxmox.dev”). Routes the entry to the matching provider emitter.

Type: string matching the pattern ^[a-z-]+\.[a-z][a-z0-9-]*$

Default: none (required when its feature is enabled)

Example:

"proxmox.dev"

Declared by: nix/fleet/resources.nix


fleet.resources.<name>.stack

Dot-path stack label within env (e.g. “core”, “bitcoin.mainnet”). Selects which fleet tf leaf stack emits this resource.

Type: string

Default: none (required when its feature is enabled)

Example:

"core"

Declared by: nix/fleet/resources.nix