Other Components Options
Options for: velero, netbird, zot, custom.
All options are under lab.clusters.<name>.components.
custom.apps
Custom applications to deploy. Each app gets its own bundle within the specified phase. Supports Helm charts, typed resources, raw YAML, and optional Gateway API routing.
Type: attribute set of (submodule)
Default: { }
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.createNamespace
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.enable
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.domain
This option has no description.
Type: string
Default: ""
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.enable
This option has no description.
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.gatewayNamespace
This option has no description.
Type: null or string
Default: "kube-system"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.gatewayRef
This option has no description.
Type: string
Default: "default-gateway"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.mode
This option has no description.
Type: one of "terminate", "passthrough"
Default: "terminate"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.serviceName
Backend service name for the HTTPRoute/TLSRoute
Type: string
Default: "‹name›"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.gateway.servicePort
This option has no description.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default: 80
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.helmCharts
Helm charts to deploy (same shape as phase bundle helmCharts)
Type: attribute set of (attribute set)
Default: { }
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.namespace
Kubernetes namespace (defaults to app name)
Type: string
Default: "‹name›"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.phase
Deployment phase (apps, workloads, infrastructure, etc.)
Type: string
Default: "apps"
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.resources
Typed Kubernetes resources
Type: attribute set of (attribute set)
Default: { }
Declared in: modules/lab/cluster/components/custom.nix
custom.apps.<name>.yamls
Raw YAML manifests
Type: list of (string or absolute path)
Default: [ ]
Declared in: modules/lab/cluster/components/custom.nix
netbird.chart
Custom chart derivation. When null, uses nixhelm default.
Type: package
Default: <derivation helm-chart-https-charts.jaconi.io-netbird-0.15.0>
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.domain
Domain name for the Netbird management server
Type: string
Default: "vpn.example.com"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.enable
Whether to enable Netbird mesh VPN.
Type: boolean
Default: false
Example: true
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.idp.clientID
OIDC client ID
Type: string
Default: "netbird"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.idp.clientSecretRef
Reference to the OIDC client secret.
Use config.secrets.managed.
Type: null or (attribute set)
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.idp.issuer
OIDC issuer URL. Use config.components.kanidm.ref.oidcIssuer for type-safe Kanidm integration.
Type: string
Default: ""
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.management.replicas
Number of management server replicas
Type: positive integer, meaning >0
Default: 1
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.management.storage.size
PVC size for management server data
Type: string
Default: "5Gi"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.management.storage.storageClass
StorageClass (null = cluster default)
Type: null or string
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.namespace
Namespace for Netbird
Type: string
Default: "netbird"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.phase
Deployment phase this component belongs to
Type: string
Default: "infrastructure"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.ref
Computed references for Netbird
Type: attribute set
Default: { }
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.signal.replicas
Number of signal server replicas
Type: positive integer, meaning >0
Default: 1
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.turn.domain
Domain for the TURN server
Type: string
Default: "turn.example.com"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.turn.enable
Enable TURN relay for NAT traversal
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/vpn/netbird.nix
netbird.version
Netbird version
Type: string
Default: "0.31.0"
Declared in: modules/lab/cluster/components/vpn/netbird.nix
velero.backupStorageLocation.bucket
Bucket/container name for backups
Type: string
Default: "velero-backups"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.credentialsSecret
Name of the secret containing storage credentials
Type: string
Default: "velero-credentials"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.prefix
Prefix within the bucket for backups
Type: string
Default: ""
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.provider
Backup storage provider
Type: one of "aws", "gcp", "azure", "seaweedfs", "filesystem"
Default: "seaweedfs"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.s3.endpoint
S3 endpoint URL
Type: null or string
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.s3.insecureSkipTLSVerify
Skip TLS verification
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.s3.region
S3 region
Type: string
Default: "seaweedfs"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.backupStorageLocation.s3.s3ForcePathStyle
Use path-style S3 URLs
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.chart
Velero Helm chart derivation (default: cataCharts.velero)
Type: package
Default: <derivation helm-chart-https-vmware-tanzu.github.io-helm-charts-velero-9.0.1>
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.enable
Whether to enable Velero backup and restore.
Type: boolean
Default: false
Example: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.fileSystemBackup.enable
Enable file system backups using restic/kopia
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.fileSystemBackup.uploaderType
Uploader type for file system backups
Type: one of "restic", "kopia"
Default: "kopia"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.local.enable
Enable local development mode using SeaweedFS
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.namespace
Namespace for Velero
Type: string
Default: "velero"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.phase
Deployment phase this component belongs to
Type: string
Default: "operators"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.ref
Computed references for Velero
Type: attribute set
Default: { }
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.resources.limits.cpu
This option has no description.
Type: string
Default: "1000m"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.resources.limits.memory
This option has no description.
Type: string
Default: "512Mi"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.resources.requests.cpu
This option has no description.
Type: string
Default: "100m"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.resources.requests.memory
This option has no description.
Type: string
Default: "128Mi"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules
Named backup schedules
Type: attribute set of (submodule)
Default:
{
daily = {
schedule = "0 2 * * *";
ttl = "168h";
};
weekly = {
schedule = "0 3 * * 0";
ttl = "720h";
};
}
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.defaultVolumesToFsBackup
Use file-system backup for volumes by default (restic/kopia)
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.enable
Whether this schedule is enabled
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.excludedNamespaces
Namespaces to exclude from backup
Type: list of string
Default:
[
"kube-system"
"velero"
]
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.excludedResources
Resources to exclude from backup
Type: list of string
Default: [ ]
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.includeClusterResources
Whether to include cluster-scoped resources
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.includedNamespaces
Namespaces to include (empty = all)
Type: list of string
Default: [ ]
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.includedResources
Resources to include (empty = all)
Type: list of string
Default: [ ]
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.schedule
Cron schedule for backups
Type: string
Default: "0 2 * * *"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.snapshotVolumes
Whether to snapshot PVs (requires volume snapshotter)
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.schedules.<name>.ttl
Time to live for backups (e.g., 720h = 30 days)
Type: string
Default: "720h"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.version
Velero Helm chart version
Type: string
Default: "7.2.1"
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.volumeSnapshotLocation.config
Provider-specific configuration
Type: attribute set of string
Default: { }
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.volumeSnapshotLocation.enable
Enable volume snapshot location
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/backups/velero.nix
velero.volumeSnapshotLocation.provider
Volume snapshot provider
Type: one of "aws", "gcp", "azure", "csi"
Default: "csi"
Declared in: modules/lab/cluster/components/backups/velero.nix
zot.auth.enable
This option has no description.
Type: boolean
Default: false
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.auth.htpasswdSecret
This option has no description.
Type: string
Default: "zot-htpasswd"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.chart
This option has no description.
Type: package
Default: <derivation helm-chart-https-zotregistry.dev-helm-charts-zot-0.1.113>
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.domain
This option has no description.
Type: string
Default: ""
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.enable
Whether to enable Zot OCI-native container registry.
Type: boolean
Default: false
Example: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.gateway.enable
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.gateway.gatewayNamespace
This option has no description.
Type: null or string
Default: "kube-system"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.gateway.gatewayRef
This option has no description.
Type: string
Default: "default-gateway"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.http.port
This option has no description.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default: 5000
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.namespace
This option has no description.
Type: string
Default: "zot"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.adminGroups
This option has no description.
Type: list of string
Default: [ ]
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.clientId
This option has no description.
Type: string
Default: "zot"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.clientSecretRef
This option has no description.
Type: null or (submodule)
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.clientSecretRef.key
This option has no description.
Type: string
Default: "client-secret"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.clientSecretRef.name
This option has no description.
Type: string
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.enable
Whether to enable OIDC authentication via Kanidm.
Type: boolean
Default: false
Example: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.groupsClaim
This option has no description.
Type: string
Default: "groups"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.issuerUrl
This option has no description.
Type: string
Default: ""
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.readOnlyGroups
This option has no description.
Type: list of string
Default: [ ]
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.scopes
This option has no description.
Type: list of string
Default:
[
"openid"
"email"
"groups"
]
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.oidc.usernameClaim
This option has no description.
Type: string
Default: "preferred_username"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.phase
This option has no description.
Type: string
Default: "apps"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.ref
This option has no description.
Type: attribute set
Default: { }
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.replicas
This option has no description.
Type: positive integer, meaning >0
Default: 1
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.search.enable
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.storage.dedupe
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.storage.rootDirectory
This option has no description.
Type: string
Default: "/var/lib/zot"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.storage.size
This option has no description.
Type: string
Default: "50Gi"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.storage.storageClass
This option has no description.
Type: null or string
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.tls.issuerRef
This option has no description.
Type: null or (submodule)
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.tls.issuerRef.kind
This option has no description.
Type: string
Default: "ClusterIssuer"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.tls.issuerRef.name
This option has no description.
Type: string
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.tls.secretName
This option has no description.
Type: string
Default: "zot-tls"
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.ui.enable
This option has no description.
Type: boolean
Default: true
Declared in: modules/lab/cluster/components/registries/zot.nix
zot.version
This option has no description.
Type: string
Default: "0.1.62"
Declared in: modules/lab/cluster/components/registries/zot.nix