Release notes for Cluster API Provider AWS (CAPA) v1.0.0
This version is compatible with Cluster API versions 1.0.x.
Changelog since v0.7.0
Urgent Upgrade Notes
(No, really, you MUST read this before you upgrade)
- v1.0.0 is based on Cluster API v1beta1 and must be used in conjunction with Cluster API v1.0.x. (#2831, @randomvariable)
- All Cluster API Provider AWS API types have been graduated to v1beta1, this includes:
AWSCluster*
,AWSMachine*
,AWSManaged*
and all experimental APIs, covering both EC2 and EKS.- clusterawsadm configuration has also graduated to v1beta1. Clusterawsadm is backwards compatible with v1alpha1 configuration files and they are semantically the same. Running
clusterawsadm bootstrap iam print-config --config <old-file>
will do an automated conversion to v1beta1.
- Cluster API Provider AWS will support upgrades directly from v1alpha3 to v1beta1 as well as v1alpha4 to v1beta1.
Changes by Kind
API Change
- IAM types have been moved (back) out of the main
/api
package into a new/iam/api
package where they are consumed by both EKS and clusterawsadm. (#2820, @randomvariable)
Feature
- EKS: Add support to create and update tags for a Fargate Profile (#2676, @abhinavnagaraj)
- EKS: Support role additional policies for AWSManagedMachinePool (#2751, @abhinavnagaraj)
- EKS: Support spot capacity type for ManagedMachinePool (#2702, @abhinavnagaraj)
- Support adding AWS cloud provider tags to pre-existing infrastructure (#2715, @pydctw)
- Add readiness and health checks to webhook server (#2685, @geetikabatra)
- Controller log level can be set using the CAPA_LOGLEVEL variable. Defaults to 0. (#2673, @Ankitasw)
Documentation
- Add documentation for using external cloud provider and CSI driver add-on (#2718, @Ankitasw)
- Updated readme with godoc shield and centered images. (#2700, @pshail)
- Add doc for using external CCM with CSI driver. (#2724, @Ankitasw)
- Fix the broken link in the tilt development guide. (#2724, @mkumatag)
- Update contributing guide. (#2756, @richardcase)
- Update docs to v1beta1. (#2830, @randomvariable)
Bug or Regression
- Add v1alpha3 to v1alpha4 upgrade test (#2770, @Ankitasw)
- Fixed a panic when there are extra routes with non-CIDR destinations (IPv6 CIDR, Prefix List) present in the managed routing table. (#2705, @dilyevsky)
- Correct the casing of the ELB load balancer scheme from
Internet-facing
tointernet-facing
, allowing the ELB to be correctly continuously reconciled (#2768, @dlipovetsky, #2832, @sedefsavas) - Fix
findSubnet
function's logic when subnet ID is specified. It will find a matching subnet regardless of a failureDomain setting. (#2728, @pydctw) - Fix reconciliation of AWS ingress rules of same port (#2813, @pydctw)
- Move EKS-related resources from
AWSIAMManagedPolicyControllers
to a separate policy to work around AWS size limit for managed policies. (#2662, @johananl) - Resolves issue with KIAM annotation not appearing on Cluster API AWS Manager pod. (#2800, @voor)
- Validation added for empty
InstanceType
inAWSMachine
andAWSMachineTemplate
. (#2740, @shivi28) - When
AWSMachine.Spec.PublicIP
is set true, an instance is launched in a public subnet with public IP. (#2772, @pydctw) - Retry fetching managed vpc attributes when vpc is 'NotFound'. (#2678, @abhinavnagaraj)
- Remove
elasticloadbalancing:AddTags
duplicate entries. (#2692, @rayandas) - Improve the netlify speed issues. (#2682, #2811, @randomvariable)
- Fix inorrect api version in metadata.yml (#2677, @randomvariable)
- Add check for invalid memory address or nil pointer dereference in getImageSnapshotSize (#2821, @enxebre)
- Error when capacity type or scaling config is missing. (#2713, @richardcase)
- Fix node affinity rules in external CCM CRDs. (#2722, #2723, @Ankitasw)
- Fix the gomega errors in tests with the controller runtime version bump. (#2745, @Ankitasw)
- Fix the timeout for conformance test due to prolonged log collection. (#2766, @Ankitasw)
- Fix timeout due to delay in bringing up control plane in e2e tests. (#2777, @Ankitasw)
- Correct typo in
AWSCluster
validation hook error. (#2776,@dlipovetsky) - Make
PublicIP
field inAWSMachine
spec work. (#2772, @pydctw) - Ensure destination pointer is non-nil before calling restore functions. (#2809, @dlipovetsky)
- Add bastion-sg to managedMachinePool remoteAccess source-sgs when bastion is enabled. (#2659, @abhinavnagaraj)
- If one type of webhook is not defined, testenv.Build hits a nil dereference. (#2810, @dlipovetsky)
Other (Cleanup or Flake)
- Clean up unused Kubernetes RBAC permissions (#2720, @sayantani11)
- Expose leader-election-resource-lock as a flag (#2822, @enxebre)
- Add external cloud provider end-to-end test (#2647, @Ankitasw)
- Update to CAPA reviwers and maintainers. (#2716, @vincepri, #2667, @richardcase)
- Use same Golang version everywhere. (#2735, @mkumatag)
- Change references of wg-k8s-infra to sig-k8s-infra. (#2786, @spiffxp)
- Remove unnecessary conversion code. (#2789,@dlipovetsky)
- Download the e2e restart scripts outside the dockerfile. (#2796, @Ankitasw)
- Update tilt-provider.json to add CAPA label in Tilt. (#2806, @pydctw)
- Updated header verify to support go 1.17 build contraints. (#2755, @richardcase)
- Add optional v1alpha4 and self-hosted management cluster tests. (#2833, @randomvariable)
Dependency Updates
- Bump AWS SDK to v1.40.33, with support added for IMDS IPv6 endpoint (#2721, #2703, #2681, @dependabot[bot])
- Bump controller runtime version to v0.10.1, controller-gen to v0.7.0 and controller-tools to 0.7.0 for v1beta1 release (#2785, #2739, @Ankitasw)
- Bump golangci-lint to 1.42.1 in
/hack/tools
. (#2760, #2695, @dependabot[bot]) - Bump sigs.k8s.io/cluster-api/test to 0.4.2. (#2706, @dependabot[bot])
- Bump sigs.k8s.io/cluster-api to 0.4.2. (#2707, @dependabot[bot])
- Bump sigs.k8s.io/kustomize/kustomize/v4 to 4.3.0 in
/hack/tools
. (#2719, @dependabot[bot]) - Bump github.com/itchyny/gojq to 0.12.5 in
/hack/tools
. (#2737, @dependabot[bot]) - Bump golang to 1.16.8. (#2759, @dependabot[bot])
- Bump github.com/aws/amazon-vpc-cni-k8s to 1.9.1. (#2769, @dependabot[bot])
- Bump k8s.io/release 0.11.0 in
/hack/tools
. (#2772,@dependabot[bot]) - Bump github.com/aws/aws-lambda-go to 1.27.0. (#2808, @dependabot[bot])
Thanks
Thank you to all our contributors (current and past) for helping us to hit this amazing v1.0.0 milestone. 🎉
A special thanks to @vincepri for his contributions to CAPA from its inception who moves to emeritus status now. And thanks to @Ankitasw, @shivi28, @dlipovetsky who move to reviewers.
Images
The images for this release are:
k8s.gcr.io/cluster-api-aws/cluster-api-aws-controller:v1.0.0