Skip to content

Configuration

Everything labops does is driven by one file — homelab.yml — and this section is the reference for it. If you are writing your first one, start with Getting started; if you want your editor to complete and check these keys as you type, see Editor setup.

The file has exactly two top-level blocks:

settings:   # credentials, secret store, DNS, proxy, reusable target sets
hosts:      # the inventory — every machine, with guests nested underneath

Unknown keys are rejected rather than ignored, everywhere in the file. A typo is a validation error you see at labops validate, not a setting that silently never applied.

YamlRoot

The whole homelab config — the root of homelab.yml.

Two blocks: settings for everything global, and hosts for the inventory tree. Unknown keys are rejected everywhere rather than ignored, so a typo is a validation error instead of a setting that silently never applied.

Key Type Default Description
settings Settings required Credentials, the secret store, DNS, proxy and target sets.
hosts map of name → Host unset The inventory, keyed by node name. Proxmox hosts nest their guests underneath as vm: and lxc:, so this one block is the whole tree.