github kubernetes-sigs/cluster-api v0.4.1

latest releases: v1.9.0-beta.0, v1.8.5, v1.7.8...
3 years ago

Changes since v0.4.0

📝 Proposals

  • Clarify template conventions and template reconciliation rules in the ClusterClass proposal (#5022)
  • Add details about ClusterClass reconciliation in ClusterClass proposal (#4918)

⚠️ Breaking Changes

  • clusterctl init now supports waiting for deployments to be ready (#4934) — 
    impact: The interface carries a breaking change (clusterctl library doesn't have any compatibility promises as of today). Library users should add support for the new wait options under init.

✨ New Features

  • Upgrade cert-manager to v1.4.0 (#4990)
  • Add api/v1alpha4/index package to help install default indexes when using controller runtime managers (#5004)
  • Add webhook readiness and health check (#4989)
  • KubeadmControlPlane: Make local etcd's extra args in KCP mutable (#5061)
  • KubeadmControlPlane: Add status.version field (#5031)
  • KubeadmControlPlane: Add KubeadmControlPlaneTemplate type (#4904)
  • MachineDeployment: Adds Available and Ready conditions (#4625)
  • Clusterctl: Implements Backup and Restore for objectMover (#4808)
  • Clusterctl: Add a MemoryRepository for the operator (#4981)
  • DockerProvider: Use docker API instead of exec'ing docker cmds (#4413)
  • DockerProvider: Add DockerClusterTemplate type (#4903)
  • DockerProvider: Set container restartPolicy to unless-stopped (#5021)
  • DockerProvider:Add ability to set DockerClusterSpec load balancer (#4951)
  • TestFramework: Switch to non-alpine kindest/haproxy version (#4964)
  • ClusterClass: Add types (#4928)
  • ClusterClass: Implement ClusterReconciler.clusterClassToCluster function (#5082)
  • ClusterClass: Implement getClusterState for topology controller (#5045)
  • ClusterClass: Create index for cluster.spec.topology.class (#4967)
  • ClusterClass: Add ClusterTopologyController scaffolding (#4965)

🐛 Bug Fixes

  • Increase polling interval and timeout in ClusterCacheHealthCheck (#5077)
  • Fix clusterctl upgrade cert-manager version detection previously detecting v0.11 when using EndpointSlices (#5051)
  • Fix a panic in clusterctl backup (#5050)
  • Update envtest listen address to localhost (#5048)
  • Wait for volume detach after node drain (#4945)
  • Fix webhook service references when the namespace is changed (#5014)
  • Surface etcd node check error in KCP (#4997)
  • Drop aggressive requeue=true and find machines to nodes by providerID (#4947)
  • Missing watch label to allow multiple manager instances (#4929)
  • Fix KubeadmControlPlane ClusterRole aggregation (#4952)
  • Update CoreDNS ClusterRole for Kubernetes >= 1.22 and CoreDNS >= 1.8.1 (#4937)
  • Validate namespace of MHC remediation template (#4944)
  • Webhook registration should accept both v1 and v1beta1 admissions (#4942)
  • Fix DefaultValidateTest ensuring old object gets defaulted too (#4924)
  • Clusterctl: use newest release series of same contract (#4912)
  • Fix metric collection in e2e test (#4890)
  • Ensure /finalizer permissions for OwnerReferencesPermissionEnforcement admission controller (#4883)
  • Use metadata.yaml in github repo to fetch latest release for older contracts (#4866)
  • Fix conditional judgment issue in upgradeControlPlane (#4854)

🌱 Others

  • Add ykakarap to cluster-api-topology-reviewers (#5084)
  • Add Status.NodeInfo to Machine objects (#5079)
  • Pass the ClusterTopology feature flag to CAPD and KCP (#5088)
  • Upgrade quickstart and e2e tests to Kubernetes v1.22.0 (#5080)
  • Reconcile infrastructure cluster for managed topologies (#5052)
  • Update Controller Runtime v0.9.6 / envtest Kubernetes 1.22.0 (#5074)
  • Migrate envtest setup to envtest.Run, add CAPI_DISABLE_TEST_ENV option (#5030)
  • Gate KubeadmControlPlaneTemplate usage with ClusterTopology feature gate (#5068)
  • Move the ClusterTopologyReconciler to a separated package (#5071)
  • Gate DockerClusterTemplate usage with ClusterTopology feature gate (#5069)
  • Compute desired Cluster and its referenced objects for a managed topology (#5002)
  • TestFramework: disable metrics collection should not disable watching deployment logs (#5063)
  • Add additional validations for clusterclass type (#4992)
  • Deprecate partial upgrade tests (#5042)
  • Implement twoWayPatchHelper for ClusterClass reconciliation (#5034)
  • Cluster topology controller: read clusterclass (#5007)
  • Introduce new test CRDs (#5040)
  • Randomly generated namespace in controllers pkg tests (#4959)
  • KCP: stop caching ConfigMap, Secret, Pod, Deployment and DaemonSet of workload clusters (#5033)
  • Randomly generated namespace in util pkg tests (#4963)
  • Randomly generated namespace in exp pkg tests (#4962)
  • Randomly generated namespace in bootstrap pkg tests (#4960)
  • Randomly generated namespace in controlplane pkg tests (#4961)
  • Update Controller Runtime to v0.9.5 (#5028)
  • Explicitly ignore command injection (in tests) (#5017)
  • Upgrade mdbook to v0.4.11 (#5023)
  • Make Cluster.spec.topology.controlPlane.replicas optional (#4993)
  • Extend the ControlPlane contract defining version and infrastructure machine fields for ClusterClass compat (#4949)
  • Add test utils for cluster class (#4986)
  • Align ClusterClass ControlPlane with the rest of the fields (#5000)
  • Upgrade clusterctl used for e2e test upgrade tests to v0.3.22 (#4995)
  • Adds topology check to cluster controller (#4976)
  • Add providerID index to get nodes (#4521)
  • Use dl.k8s.io instead of hardcoded GCS URIs (#4958)
  • test/framework: improve the way we inject the ci-artifacts script (#4420)
  • Bump golang to 1.16.6 (#4932)
  • Build clusterctl arm64 for linux and darwin (#4861)

📖 Additionally, there have been 16 contributions to our documentation and book. (#5075, #5027, #5039, #5012, #4975, #4977, #4893, #4899, #4925, #4921, #4898, #4892, #4678, #4865, #4849, #4955)

Thanks to all our contributors! 😊

Don't miss a new cluster-api release

NewReleases is sending notifications on new releases.