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

Provisioning Options

Options for: cluster-api, crossplane.

All options are under lab.clusters.<name>.components.

cluster-api.bootstrapProviders

This option has no description.

Type: list of (one of "kubeadm", "talos")

Default:

[
  "talos"
]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.chart

This option has no description.

Type: package

Default:

<derivation helm-chart-https-kubernetes-sigs.github.io-cluster-api-operator-cluster-api-operator-0.27.0>

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.apiServerExtraArgs

This option has no description.

Type: attribute set of string

Default: { }

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.aws.controlPlaneInstanceType

This option has no description.

Type: string

Default: "t3.large"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.aws.region

This option has no description.

Type: string

Default: "us-east-1"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.aws.sshKeyName

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.aws.workerInstanceType

This option has no description.

Type: string

Default: "t3.large"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.certSANs

This option has no description.

Type: list of string

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.clientCaCert

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.digitalocean.controlPlaneSize

This option has no description.

Type: string

Default: "s-2vcpu-4gb"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.digitalocean.image

This option has no description.

Type: string

Default: "ubuntu-24-04-x64"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.digitalocean.region

This option has no description.

Type: string

Default: "nyc1"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.digitalocean.sshKeys

SSH key fingerprints or IDs

Type: list of string

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.digitalocean.workerSize

This option has no description.

Type: string

Default: "s-2vcpu-4gb"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.docker.loadBalancerImage

This option has no description.

Type: string

Default: "kindest/haproxy:v20230606-42a2262b"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.enable

This option has no description.

Type: boolean

Default: true

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.controlPlaneType

This option has no description.

Type: string

Default: "cpx31"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.network.cidr

This option has no description.

Type: string

Default: "10.0.0.0/8"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.network.enabled

This option has no description.

Type: boolean

Default: true

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.placementGroup

This option has no description.

Type: boolean

Default: true

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.region

This option has no description.

Type: string

Default: "fsn1"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.sshKeyName

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.hetzner.workerType

This option has no description.

Type: string

Default: "cpx31"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.infrastructureProvider

This option has no description.

Type: one of "docker", "digitalocean", "hetzner", "aws", "gcp", "azure", "vsphere"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.controlPlane.machineType

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.controlPlane.replicas

This option has no description.

Type: signed integer

Default: 3

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.version

This option has no description.

Type: string

Default: "v1.31.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers

This option has no description.

Type: list of (submodule)

Default:

[
  {
    name = "default";
    replicas = 3;
  }
]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.labels

This option has no description.

Type: attribute set of string

Default: { }

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.machineType

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.name

Name of the worker pool

Type: string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.replicas

This option has no description.

Type: signed integer

Default: 3

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.taints

This option has no description.

Type: list of (submodule)

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.taints.*.effect

This option has no description.

Type: one of "NoSchedule", "PreferNoSchedule", "NoExecute"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.taints.*.key

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.kubernetes.workers.*.taints.*.value

This option has no description.

Type: string

Default: ""

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.network.podCIDR

This option has no description.

Type: string

Default: "10.244.0.0/16"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.network.serviceCIDR

This option has no description.

Type: string

Default: "10.96.0.0/12"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.ref

This option has no description.

Type: attribute set

Default: { }

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.registryMirror.enable

Configure containerd registry mirrors on CAPI cluster nodes

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.registryMirror.endpoint

Registry mirror endpoint (e.g., http://docker-host:port)

Type: string

Default: "http://172.17.0.1:5050"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.registryMirror.registries

Upstream registries to mirror through the cache

Type: list of string

Default:

[
  "docker.io"
  "ghcr.io"
  "quay.io"
  "registry.k8s.io"
]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.talos.enable

This option has no description.

Type: boolean

Default: true

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.clusters.<name>.talos.version

This option has no description.

Type: string

Default: "v1.8.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.controlPlaneProviders

This option has no description.

Type: list of (one of "kubeadm", "talos")

Default:

[
  "talos"
]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.enable

Whether to enable Cluster API.

Type: boolean

Default: false

Example: true

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.infrastructureProviders

This option has no description.

Type: list of (one of "docker", "digitalocean", "aws", "gcp", "azure", "hetzner", "vsphere")

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.isManagementCluster

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.namespace

This option has no description.

Type: string

Default: "capi-system"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.phase

This option has no description.

Type: string

Default: "infrastructure"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.aws

This option has no description.

Type: string

Default: "2.7.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.core

This option has no description.

Type: string

Default: "1.13.2"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.digitalocean

This option has no description.

Type: string

Default: "1.6.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.docker

This option has no description.

Type: string

Default: "1.9.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.hetzner

This option has no description.

Type: string

Default: "1.0.0-beta.40"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.talosBootstrap

This option has no description.

Type: string

Default: "0.6.7"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.providerVersions.talosControlPlane

This option has no description.

Type: string

Default: "0.5.13"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


cluster-api.version

This option has no description.

Type: string

Default: "1.9.0"

Declared in: modules/lab/cluster/components/provisioning/cluster-api.nix


crossplane.chart

This option has no description.

Type: package

Default: <derivation helm-chart-https-charts.crossplane.io-stable-crossplane-1.18.2>

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.apiToken

Cloudflare API token (for dev/lab use). For production, use SOPS-encrypted secrets.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.credentialSecretRef

This option has no description.

Type: null or (submodule)

Default:

{
  key = "credentials";
  name = "cf-credentials";
  namespace = "crossplane-system";
}

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.credentialSecretRef.key

This option has no description.

Type: string

Default: "credentials"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.credentialSecretRef.name

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.credentialSecretRef.namespace

This option has no description.

Type: string

Default: "crossplane-system"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.enable

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.name

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.proxied

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.ttl

This option has no description.

Type: signed integer

Default: 300

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.type

This option has no description.

Type: one of "A", "AAAA", "CNAME", "MX", "TXT", "SRV", "NS"

Default: "A"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.value

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.records.<name>.zoneRef

Name of the Crossplane Zone resource to reference

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.tunnels

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.tunnels.<name>.accountId

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.tunnels.<name>.name

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.tunnels.<name>.secret

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.zones

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.zones.<name>.accountId

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.zones.<name>.domain

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.cloudflare.zones.<name>.plan

This option has no description.

Type: string

Default: "free"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.apiToken

DO API token (for dev/lab use). For production, use SOPS-encrypted secrets.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.credentialSecretRef

This option has no description.

Type: null or (submodule)

Default:

{
  key = "credentials";
  name = "do-credentials";
  namespace = "crossplane-system";
}

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.credentialSecretRef.key

This option has no description.

Type: string

Default: "credentials"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.credentialSecretRef.name

This option has no description.

Type: string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.credentialSecretRef.namespace

This option has no description.

Type: string

Default: "crossplane-system"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.image

This option has no description.

Type: string

Default: "ubuntu-24-04-x64"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.region

This option has no description.

Type: string

Default: "nyc1"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.size

This option has no description.

Type: string

Default: "s-2vcpu-4gb"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.sshKeys

This option has no description.

Type: list of string

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.userData

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.droplets.<name>.vpcUuid

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.enable

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters

DigitalOcean managed Kubernetes (DOKS) clusters

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.autoUpgrade

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.ha

Enable HA control plane

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.autoScale

This option has no description.

Type: boolean

Default: false

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.maxNodes

This option has no description.

Type: null or signed integer

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.minNodes

This option has no description.

Type: null or signed integer

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.name

This option has no description.

Type: string

Default: "default"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.nodeCount

This option has no description.

Type: signed integer

Default: 2

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.nodePool.size

This option has no description.

Type: string

Default: "s-2vcpu-4gb"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.region

This option has no description.

Type: string

Default: "nyc1"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.surgeUpgrade

This option has no description.

Type: boolean

Default: true

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.kubernetesClusters.<name>.version

Kubernetes version slug (e.g., ‘1.36.0-do.0’). Find valid versions with doctl kubernetes options versions.

Type: string

Default: "1.36.0-do.0"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.loadBalancers

This option has no description.

Type: attribute set of (submodule)

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.loadBalancers.<name>.dropletTag

This option has no description.

Type: null or string

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.loadBalancers.<name>.forwardingRules

This option has no description.

Type: list of (attribute set)

Default:

[
  {
    entryPort = 80;
    entryProtocol = "http";
    targetPort = 80;
    targetProtocol = "http";
  }
]

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.digitalocean.loadBalancers.<name>.region

This option has no description.

Type: string

Default: "nyc1"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.enable

Whether to enable Crossplane infrastructure provisioning.

Type: boolean

Default: false

Example: true

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.namespace

This option has no description.

Type: string

Default: "crossplane-system"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.phase

This option has no description.

Type: string

Default: "operators"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.providerVersions.cloudflare

This option has no description.

Type: string

Default: "0.2.5"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.providerVersions.digitalocean

This option has no description.

Type: string

Default: "0.3.2"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.providerVersions.helm

This option has no description.

Type: string

Default: "1.2.0"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.providerVersions.kubernetes

This option has no description.

Type: string

Default: "1.2.1"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.providers

Crossplane providers to install

Type: list of (one of "digitalocean", "cloudflare", "kubernetes", "helm")

Default: [ ]

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.ref

This option has no description.

Type: attribute set

Default: { }

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix


crossplane.version

This option has no description.

Type: string

Default: "1.18.2"

Declared in: modules/lab/cluster/components/provisioning/crossplane.nix