let _concerns_lib = import "schemas/lib/concerns.ncl" in { LocalPathProvisioner = { name | String | doc "Component instance name" | default = "local-path-provisioner", version | String | doc "local-path-provisioner release tag" | default = "v0.0.30", storage_class_name | String | doc "Name for the provisioned StorageClass — referenced by PVC storageClassName" | default = "local-path", host_path | String | doc "Directory on each node where PVC data is stored — must exist or be auto-created" | default = "/opt/local-path-provisioner", namespace | String | doc "Kubernetes namespace for the provisioner Deployment and ConfigMap" | default = "local-path-storage", reclaim_policy | std.enum.TagOrString | doc "PV reclaim policy: Delete removes hostPath directory on PVC delete, Retain preserves it" | default = 'Delete, default_storage_class | Bool | doc "Annotate the StorageClass as the cluster default — only one default allowed per cluster" | default = false, # ServiceConcerns umbrella (ADR-008). Local-path provisioner — infrastructure_glue preset. concerns | _concerns_lib.ServiceConcerns | optional, .. }, }