provisioning-catalog/components/vol_prepare/nickel/contracts.ncl

34 lines
924 B
Text
Raw Permalink Normal View History

let _concerns_lib = import "schemas/lib/concerns.ncl" in
{
VolPrepare = {
volume_name
| String
| doc "Hetzner block volume name — used to locate device at /dev/disk/by-id/scsi-0HC_Volume_<name>",
mount_path
| String
| doc "Absolute path where the volume is mounted on the OS",
fs_type
| std.enum.TagOrString
| doc "Filesystem type to create if the device has no existing filesystem"
| default = 'ext4,
label_prefix
| String
| doc "Device label prefix for Hetzner volumes — do not change unless Hetzner changes naming"
| default = "scsi-0HC_Volume_",
fstab_options
| String
| doc "Mount options written to /etc/fstab"
| default = "defaults,nofail,discard 0 0",
# ServiceConcerns umbrella (ADR-008). Block-device prep — stateless preset.
concerns | _concerns_lib.ServiceConcerns | optional,
..
},
}