Skip to content

v2.4.0

Compare
Choose a tag to compare
@richardcase richardcase released this 29 Feb 15:38
· 276 commits to main since this release
v2.4.0
25a0086

Release notes for Cluster API Provider AWS (CAPA) v2.4.0

Documentation

Changelog since v2.3.0

Urgent Upgrade Notes

(No, really, you MUST read this before you upgrade)

  • v1beta1 types are not going to be served any longer and will be removed in the next release (#4757, @vincepri)

Changes by Kind

Feature

  • A new enum value, disabled, is added for the AWSCluster.spec.controlPlaneLoadBalancer.loadBalancerType field, which skips the reconciliation of the load balancer for the given cluster, useful for clusters which are consuming an externally managed Control Plane. (#4438, @prometherion)
  • Add & Reconcile ROSAMachinePools.spec.version (#4764, @muraee)
  • Add tests for the re-introduced managed subnet functionality in #4474 (#4637, @AndiDog)
  • Added AWSMachine and AWSMachineTemplate fields to control vpc placement for individual instances (#4541, @cnmcavoy)
  • Adds support for a secondary, internal API server load balancer within clusters. (#4733, @nrb)
  • Allow to configure garbage collector using clusterawsadm (#4500, @Fedosin)
  • Enable transit encryption on S3 buckets (#4676, @fiunchinho)
  • Generate CAPI kubeconfig secret for ROSA clusters (#4742, @muraee)
  • Ignition: add option to store User Data in plain text (#4700, @damdo)
  • Introduce basic support for ROSAMachinePools (#4725, @muraee)
  • Log full ARN in GC error messages (#4709, @AndiDog)
  • Prevent users setting SpotMarketOptions and MixedInstancesPolicy at the same time (#4656, @fiunchinho)
  • Reconcile ROSAControlPlane version to trigger upgrades (#4761, @muraee)
  • Reconcile ROSAControlePlane status (#4759, @muraee)
  • Remove ingress and egress rules from vpc default security group (#4707, @fiunchinho)
  • Skip AWSCluster deletion reconciliation once CAPA finalizer is gone (#4730, @AndiDog)
  • Support setting HostnameType options for subnets and machines (#4664, @MaxFedotov)
  • Trigger machine pool instance refresh (node rollout) if bootstrap config reference changes (#4619, @AndiDog)
  • Use go 1.21.5 (#4710, @fiunchinho)
  • Bump CAPI to v1.6.x (#4739, @damdo)

Bug or Regression

  • Don't error when ASG is not present while deciding whether or not to refresh ASG instances. (#4660, @fiunchinho)
  • Fix logging verbosity for machine pool reconciliation (#4620, @AndiDog)
  • Fix: bump rosa deps to fix int overflow on non-64bit arch (#4836, @damdo)
  • Make VPC creation idempotent to avoid indefinite creation of new VPCs if storage of the ID fails (#4723, @AndiDog)
  • Resolved issue where deleted control planes were still registered in the kube-apiserver load balancer, causing potential disruptions. (#4701, @tobiasgiese)
  • Skip instance refresh attempt if ASG does not yet exist (#4662, @fiunchinho)
  • Treat the annotation cluster.x-k8s.io/replicas-managed-by on MachinePool CR as described in CAPI documentation and do not set desired replicas on ASG when the annotation is present. (#4654, @calvix)
  • Update AWSMachine providerID and instanceID earlier to minimize scenarios where tag-based searching is needed (#4670, @mjlshen)
  • Various changes to the releases process. (#4813, @richardcase)
  • When using Ignition, the S3 bucket was previously created in us-east-1 regardless of where the cluster was located, new S3 buckets will be created within the same region as the cluster. (#4732, @vincepri)

Failing Test

  • Add CI script to test docker builds for the controller and clusterawsadm with all architectures. (#4834, @richardcase)

Support

Other (Cleanup or Flake)

  • Dependabot configuration update to group updates, (#4688, @richardcase)
  • Fix some logging and error cases (#4724, @AndiDog)
  • If you're using S3 buckets for bootstrap data, the following permissions are required on the controller to automatically detect whether an object is still needing to be deleted: s3:GetObject. The following permissions are optional: s3:ListBucket. (#4667, @thefirstofthe300)

Uncategorized

  • Updated the default clusterctl template to use external cloud-controller-manager (#4678, @nrb)
  • Use seedling emoji for dependabot pull requests (#4652, @kranurag7)
  • Wrap the underlying error when the AWSMachinePool reconciler fails to get the infra provider cluster or control plane object (#4685, @harveyxia)

The images for this release are: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v2.4.0

Thanks to all our contributors.