kindplane init¶

Initialise a new configuration file with sensible defaults.
Usage¶
Flags¶
| Flag | Short | Description |
|---|---|---|
--output | -o | Output filename (default: kindplane.yaml) |
Description¶
The init command creates a new kindplane.yaml configuration file with sensible defaults for local Crossplane development.
The generated file includes:
- Cluster configuration with 1 control plane and 1 worker node
- Crossplane with common providers (AWS, Kubernetes)
- Example Helm chart configurations (commented out)
- Example composition sources (commented out)
- JSON Schema reference for IDE support
Examples¶
Create Default Configuration¶
Creates kindplane.yaml in the current directory.
Custom Filename¶
Creates my-cluster.yaml instead.
Specify Output Directory¶
Creates the configuration file in a subdirectory.
Generated Configuration¶
The generated file looks like:
# yaml-language-server: $schema=https://raw.githubusercontent.com/kanzifucius/kindplane/main/kindplane.schema.json
# kindplane configuration file
# Generated by 'kindplane init'
cluster:
name: kindplane-dev
kubernetesVersion: "1.29.0"
nodes:
controlPlane: 1
workers: 1
portMappings:
- containerPort: 80
hostPort: 8080
protocol: TCP
ingress:
enabled: true
crossplane:
version: "1.15.0"
providers:
- name: provider-aws
package: xpkg.upbound.io/upbound/provider-aws:v1.1.0
- name: provider-kubernetes
package: xpkg.upbound.io/crossplane-contrib/provider-kubernetes:v0.12.0
charts: []
compositions:
sources: []
Next Steps¶
After initialising:
- Edit the configuration to match your needs
- Validate the configuration:
kindplane validate - Bootstrap the cluster:
kindplane up