Using specific Cluster Stack versions
If you want specific releases to be always available, you can add a versions parameter, containing an array of version strings under the spec of your ClusterStack:
apiVersion: clusterstack.x-k8s.io/v1alpha1
kind: ClusterStack
metadata:
name: hetzner-apalla-1-35
spec:
provider: hetzner
name: apalla
kubernetesVersion: "1.35"
channel: stable
autoSubscribe: true
versions:
- v1
- v2
providerRef:
name: hetzner-apalla-1-35
kind: HetznerClusterStackReleaseTemplate
apiVersion: infrastructure.clusterstack.x-k8s.io/v1alpha1
---
apiVersion: infrastructure.clusterstack.x-k8s.io/v1alpha1
kind: HetznerClusterStackReleaseTemplate
metadata:
name: hetzner-apalla-1-35
spec:
template:
spec:
nodeImages:
- controlplaneamd64hcloud
- workeramd64hcloud
Using this manifest, you'll have the v1 and v2 plus the latest release of the Cluster Stack for Kubernetes 1.35. If you don't want the latest version to always be available, you can change the value of spec.autoSubscribe from true to false:
apiVersion: clusterstack.x-k8s.io/v1alpha1
kind: ClusterStack
metadata:
name: hetzner-apalla-1-35
spec:
provider: hetzner
name: apalla
kubernetesVersion: "1.35"
channel: stable
autoSubscribe: true
autoSubscribe: false
versions:
- v1
- v2
providerRef:
name: hetzner-apalla-1-35
kind: HetznerClusterStackReleaseTemplate
apiVersion: infrastructure.clusterstack.x-k8s.io/v1alpha1
---
apiVersion: infrastructure.clusterstack.x-k8s.io/v1alpha1
kind: HetznerClusterStackReleaseTemplate
metadata:
name: hetzner-apalla-1-35
spec:
template:
spec:
nodeImages:
- controlplaneamd64hcloud
- workeramd64hcloud
Note that if you are not auto-subscribed to the latest version, you must specify the versions you want, otherwise there will be no Cluster Stack Release available for your clusters.