Skip to content

Instantly share code, notes, and snippets.

@sadysnaat
Created January 4, 2025 12:48
Show Gist options
  • Save sadysnaat/f3c05482c3fbf00dcd1be6468eadb882 to your computer and use it in GitHub Desktop.
Save sadysnaat/f3c05482c3fbf00dcd1be6468eadb882 to your computer and use it in GitHub Desktop.
Cluster Class Spec - release-1.9
// ClusterClassSpec describes the desired state of the ClusterClass.
type ClusterClassSpec struct {
// infrastructure is a reference to a provider-specific template that holds
// the details for provisioning infrastructure specific cluster
// for the underlying provider.
// The underlying provider is responsible for the implementation
// of the template to an infrastructure cluster.
// +optional
Infrastructure LocalObjectTemplate `json:"infrastructure,omitempty"`
// controlPlane is a reference to a local struct that holds the details
// for provisioning the Control Plane for the Cluster.
// +optional
ControlPlane ControlPlaneClass `json:"controlPlane,omitempty"`
// workers describes the worker nodes for the cluster.
// It is a collection of node types which can be used to create
// the worker nodes of the cluster.
// +optional
Workers WorkersClass `json:"workers,omitempty"`
// variables defines the variables which can be configured
// in the Cluster topology and are then used in patches.
// +optional
Variables []ClusterClassVariable `json:"variables,omitempty"`
// patches defines the patches which are applied to customize
// referenced templates of a ClusterClass.
// Note: Patches will be applied in the order of the array.
// +optional
Patches []ClusterClassPatch `json:"patches,omitempty"`
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment