Skip to content

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 12:54
· 42 commits to main since this release
Immutable release. Only release title and notes can be modified.

This is the first stable release of CAPCS. πŸŽ‰

See docs/getting-started.md for a quick start guide.

What CAPCS provisions on cloudscale.ch

  • Servers for control plane and worker Machines, placed in server groups for anti-affinity.
  • Networks β€” either managed by CAPCS or an existing network you supply.
  • Load balancers for the control plane endpoint (public or private), with pool members reconciled as machines come and go.
  • Floating IPs as an alternative control plane endpoint, either CAPCS-managed or pre-existing.
  • Dual-stack (IPv4 + IPv6) where the flavor supports it.

Cluster API features supported

In addition to the standard features required, CAPCS supports:

  • ClusterClass / topology: the shipped quick-start ClusterClass (templates/cluster-class.yaml) plus the topology flavor. See getting-started β†’ topology flavor.
  • Scale-from-zero: CloudscaleMachineTemplate publishes status.capacity (cpu, memory) so the cluster autoscaler can size MachineDeployments from zero replicas.
  • Per-cluster credentials via CloudscaleCluster.spec.credentialsRef.

Cluster templates

Five flavors ship as release assets, covering managed and pre-existing networks, public LB and floating-IP endpoints, and private-only nodes behind a NAT gateway. Matrix: getting-started β†’ flavors.

Operations

  • Webhooks own all defaulting and validation, including immutability of region/zone/network config.
  • Observability: controller-runtime metrics on :8443, opt-in OpenTelemetry tracing and pprof. Details: docs/observability.md.
  • Tested against Kubernetes v1.34.x-v1.36.x.

What's Changed since v0.1.0-beta.3

Full Changelog: v0.1.0-beta.3...v1.0.0