Releases: kubernetes-sigs/cluster-api-provider-aws
v2.1.0
Release notes for Cluster API Provider AWS (CAPA) v2.1.0
Changelog since v2.0.2
What's Changed
🚀 Features
- Add ability to use NLBs as control plane load-balancers by @Skarlso in #3804
- Expose Metrics port by @Skarlso in #3941
- Run tests on localhost to increase security and avoid macOS firewall popup dialogs by @AndiDog in #4024
- Configure EC2 instance metadata options by @muraee in #4037
- ✨ support arm64 AMI lookup based on instance type by @charlie-haley in #4054
- feat(release): update image promotion to use kpromo by @richardcase in #4158
- add explicit securityContexts to the controller by @chrischdi in #4104
- added tests for annotations.go by @khareyash05 in #4232
- added reset_test.go by @khareyash05 in #4234
🐛 Bug Fixes
- [E2E] Use k8s version 1.24.4 in conformance test and increase control plane wait timeout for conformance and EKS tests by @Ankitasw in #3823
- Fix lastAppliedTags annotations naming by @dntosas in #3867
- drop /v2/ from api/tests/docs by @yastij in #3890
- Remove suspend process flow from create ASG by @Skarlso in #3864
- fix AWSServiceRoleForAmazonEKSForFargate failed to create on non-aws partitions by @jejer in #3882
- Make the LoadBalancerType optional in the Status by @Skarlso in #3913
- [E2E] Increase service quota for VPC by @Ankitasw in #3896
- Always populate ControlPlaneLoadBalancer type as classic if not provided by user by @Ankitasw in #3917
- Only enable IPv6 if it's already enabled in the config by @Skarlso in #3914
- Add back RBAC for controller identities by @Ankitasw in #3935
- Fix String function receiver for IngressRule which resulted in an unreadable log output by @Skarlso in #3949
- Update LoadBalancerReadyCondition on deletion by @mnitchev in #3871
- Fail creation of machine pool if no subnets matching filters found by @AverageMarcus in #3978
- Ignore EIGW deletion in case of unmanaged VPC by @Skarlso in #3996
- Fix AWS CloudFormation dump after failed suit when there is no bootstrap cluster by @Skarlso in #4002
- Reorder the bootstrapping logic so AWSSession is available in afterSuite by @Skarlso in #4008
- fix(#3980): save the API ELB AZ to NetworkStatus by @thefirstofthe300 in #4000
- Move defaulting before creation of patch helper so that no differences will be detected unnecessarily by @AndiDog in #4025
- Ensure tags on managed VPCs by @Skarlso in #4030
- Ensure empty
loadBalancerType
field value is handled correctly by @AndiDog in #4033 - Allow user to specify the Name tag value for AWS tags by @AverageMarcus in #3991
- fix: use instance profiles of machine pools and machine deployments for mapping roles by @faiq in #4011
- Fix error condition on eventually by @Skarlso in #4048
- fix: cleanup AWS CloudFormation stack in Test environment by @Skarlso in #4059
- Fix error print statement for ELBv2 listeners test by @johannesfrey in #4060
- fix error validating message by @zirain in #4055
- chore(ref): add more robustness to cloudformation stack create in tests by @Skarlso in #4069
- chore(ref): always clean roles and resources on cf stack failure by @Skarlso in #4076
- chore(ref): add output of error for role deletion by @Skarlso in #4077
- chore(ref): fix error checking in eventually by @Skarlso in #4078
- bug: order of deleting cloud formation resources matters and fix missing GroupName setting from Bootstrap user by @Skarlso in #4079
- [e2e] try it without the event bridge by @Skarlso in #4088
- cleaning up unnecessary object patches by @luthermonson in #4095
- Modify AWSMachine reconciliation behavior to terminate and create instances without blocking by @cnmcavoy in #4092
- Update AWSMachine webhook validate logic on update to be consistent by @cnmcavoy in #3728
- Allow for Self-Managed VPC with a Secondary Subnet for Pods by @luthermonson in #3688
- Add missing configuration to enable the awsmachinetemplate validating webhook by @cnmcavoy in #4117
- Fix awsmanagedcontrolplane doesn’t get reconciled by @kahun in #4007
- Allow external autoscaler for EKS managed node groups by @ionutbalutoiu in #4137
- Fix InstanceMetadataOptions defaults by @muraee in #4147
- Set ASG DesiredCapacity value only if MachinePool replicas is between min and max size of the AWSMachinePool by @Fedosin in #4135
- fix: getting maintainers fails by @richardcase in #4185
- Fix session surviving cluster purge and recreate through cache by @roehrijn in #4162
- fix: adds enum validations to healtcheckprotocol field by @faiq in #4193
- Reconcile EKSConfig correctly for MachinePool and other Owner kinds by @cnmcavoy in #4195
- capa fix hardcoded role arn for aws iam authenticator by @AmitSahastra in #4010
- fix: malformed s3 arn due to incorrect string formatting by @Skarlso in #4224
- fix: automatically append /readyz to http and https health checks by @faiq in #4227
📖 Documentation
- docs: updated Developer Guide with changes to make it more accurate by @rjsadow in #3877
- docs: fix broken bullet points by @nekottyo in #3905
- docs: Update release doc steps by @Ankitasw in #3911
- Update README.md instruction to install clusterawsadm via Homebrew by @Ankitasw in #3937
- docs: fix git-repository-url by @zirain in #4072
- chore: adding release notes section to PR template by @richardcase in #4074
- fix: invalid yaml in multi-tenancy example by @jdockerty in #4098
- [PROPOSAL] add luther as reviewer by @richardcase in #4107
🌱 Others
- test: increased cluster creation timeout for eks e2e by @richardcase in #3878
- chore: bump capi to 1.2.6 by @richardcase in https://github.com/kubernetes-sigs/cluster...
v1.5.5
Release notes for Cluster API Provider AWS (CAPA) v1.5.5
Changelog since v1.5.2
What's Changed
🚀 Features
- feat(release): update image promotion to use kpromo by @richardcase in #4159
- chore: Backport allow annotation on MachinePool to set externally managed to release-1.5 by @tasdikrahman in #4171
🐛 Bug Fixes
- [Release-1.5] Removed io/ioutil import by @AverageMarcus in #3992
- Apply #3871 "Update LoadBalancerReadyCondition on deletion" to release-1.5 by @mnitchev in #3967
- fix: use instance profiles of nodepools and machine deployments for mapping roles by @faiq in #4058
- [backport] fix: maintainers list issue by @richardcase in #4188
🌱 Others
- [release-1.5] [E2E] Use k8s version 1.24.4 in conformance test and increase control plane wait timeout for conformance and EKS tests by @k8s-infra-cherrypick-robot in #3888
- [release-1.5] Fail creation of machine pool if no subnets matching filters found by @k8s-infra-cherrypick-robot in #3988
- Fixes for gc related tests by @wyike in #4142
- [release-1.5] [E2E] Disable EventBridge in the tests by @Ankitasw in #4197
- chore: rolling back kpromo by @richardcase in #4205
Full Changelog: v1.5.2...v1.5.5
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v1.5.5
Thanks to all our contributors!
v2.0.2
Release notes for Cluster API Provider AWS (CAPA) v2.0.2
Changelog since v2.0.1
What's Changed
🐛 Bug Fixes
- [release-2.0] drop /v2/ from api/tests/docs by @k8s-infra-cherrypick-robot in #3891
- [release-2.0] Remove suspend process flow from create ASG by @k8s-infra-cherrypick-robot in #3892
🌱 Dependencies
- [release-2.0] chore: bump capi to 1.2.6 by @k8s-infra-cherrypick-robot in #3901
- [release-2.0] chore: Bump CAPI to v1.2.7 by @k8s-infra-cherrypick-robot in #3903
🌱 Others
- [release-2.0] [E2E] Fix AWS services creation flake in external infrastructure test by @k8s-infra-cherrypick-robot in #3895
Full Changelog: v2.0.1...v2.0.2
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v2.0.2
Thanks to all our contributors!
v2.0.1
Release notes for Cluster API Provider AWS (CAPA) v2.0.1
Changelog since v2.0.0
What's Changed
🐛 Bug Fixes
- Fix lastAppliedTags annotations naming by @k8s-infra-cherrypick-robot in #3872
Full Changelog: v2.0.0...v2.0.1
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v2.0.1
Thanks to all our contributors!
v1.5.2
Release notes for Cluster API Provider AWS (CAPA) v1.5.2
Changelog since v1.5.1
What's Changed
🐛 Bug Fixes
🌱 Others
- Add ASG Instance AZ SDK API to CAPA API conversion by @k8s-infra-cherrypick-robot in #3816
Full Changelog: v1.5.1...v1.5.2
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v1.5.2
Thank you to all our contributors!
v2.0.0
Release notes for Cluster API Provider AWS (CAPA) v2.0.0
IMPORTANT
This is a major version change due to a number of API changes. Please review the changes below in the API Changes section.
If you plan to create new EKS clusters, please be aware that we have re-introduced AWSManagedCluster
and it's advised that you use this as the infrastructure cluster going forwards. For example:
apiVersion: cluster.x-k8s.io/v1beta1
kind: Cluster
metadata:
name: "ekstest"
spec:
clusterNetwork:
pods:
cidrBlocks: ["192.168.0.0/16"]
infrastructureRef:
kind: AWSManagedCluster
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
name: "ekstest"
controlPlaneRef:
kind: AWSManagedControlPlane
apiVersion: controlplane.cluster.x-k8s.io/v1beta2
name: "ekstest-control-plane"
Changelog since v1.5.1
What's Changed
⚠ API Changes
- add option for disabling instance refresh by @harveyxia in #3730
- Remove ARN field from AWSResourceReference by @Ankitasw in #3835
- Remove failure domain from AWSMachineSpec to respect CAPI's Machine/MD failure domain field by @Ankitasw in #3847
- feat: re-introduce awsmanagedcluster by @richardcase in #3797
🚀 Features
- feat: add custom environment variables to the 'aws-node' DaemonSet by @charlie-haley in #3374
- Add AWSMachinePool test to eks e2e test by @pydctw in #3607
- Add spot instance support in AWSMachinePool by @Ankitasw in #3563
- Add ClusterClass tests by @pydctw in #3472, #3491
- Add scaling from 0 support by @Skarlso in #3684
- Add ipv6 support for EKS by @Skarlso in #3513
- Align logging practices with cluster-api by @Skarlso in #3722
- Suspend and Resume ASG Processes by @Skarlso in #3741
- Unify the logger interface in CAPA by @Skarlso in #3776
- Enhance the EKSConfigTemplate and add configuration for files, mounts, users, ntp, etc for CAPI feature parity by @cnmcavoy in #3757
- allow annotation on MachinePool to set externally managed by @mweibel in #3683
- Make overwrite the default behaviour for conflict resolution in addons by @Skarlso in #3833
- Add CCM tag to routing tables by @Skarlso in #3838
- AWSManagedMachinePool - Launch Template support by @richardchen331 in #3094
🐛 Bug Fixes
- Removed additionalTag application on unmanaged subnets by @Ankitasw in #3512
- Revert "Streamline Ginkgo variables" #3501 by @sedefsavas in #3561
- Fix the json tag for VpcCni by @Skarlso in #3566
- Add deduplication handling and only update if there is a need for it by @Skarlso in #3568
- [clusterawsadm] Fix attaching CSI policy to control plane IAM role by @sedefsavas in #3595
- Fix aws-node-env checker to use the correct input and context by @Skarlso in #3612
- Fix apidiff target by @Prajyot-Parab in #3634
- Fix the update logic for aws-node daemonset environment properties by @Skarlso in #3677
- chore: adding rbac generation back in by @richardcase in #3685
- adding a return nil after deleting cni by @luthermonson in #3674
- Relax the AWSManagedControlPlane version regex and remove normalising the version by @Skarlso in #3682
- fix validation for aws tags with spaces by @Jacobious52 in #3702
- Fix multitenancy topic for secretRef syntax by @Skarlso in #3719
- Add elasticloadbalancing:DeregisterTargets to control plane role policy by @cnmcavoy in #3727
- Add ASG Instance AZ SDK API to CAPA API conversion by @Ankitasw in #3743
- Downgrade K8s dependency version to v0.24 by @sedefsavas in #3758
- Use the eksClusterName passed in to the function instead of the scope configured one by @Skarlso in #3713
- normalize oidc configs to string values for comparison by @luthermonson in #3735
- Try to find and verify existing OIDC providers before we try to create a new one by @codablock in #2901
- deleting additional vpc cni resources when disabled by @luthermonson in #3732
- Add EventBridge ec2 event reconciliation and rule creation to eks managed control planes by @cnmcavoy in #3752
- Skip deleting 'control-plane.cluster-api-provider-aws.sigs.k8s.io' if it does not exist in the e2e setup by @cnmcavoy in #3795
- [E2E] Fix test flavor generation make targets by @Ankitasw in #3800
- fix: remove check for root volume device name on create by @AverageMarcus in #3798
- rework vpc cni envvar logic to drop the forced keys by @luthermonson in #3681
- Change naming format of AMIs while searching for AMIs by @Ankitasw in #3790
- More nil checks for Version by @luthermonson in #3769
- [E2E] Add check that the pod list is not empty. by @Skarlso in #3841
- Change AMI name generation based on new format in image-builder by @Ankitasw in #3829
Please see the
CHANGELOG.md
attached in the assets section for a full list of changes that include documentation, dependency and other changes.
New Contributors
- @banthaherder made their first contribution in #3552
- @charlie-haley made their first contribution in #3374
- @yogeek made their first contribution in #3576
- @bhegazy made their first contribution in #3615
- @tobiasgiese made their first contribution in #3613
- @tasdikrahman made their first contribution in #3460
- @steve-fraser made their first contribution in #3737
- @harveyxia made their first contribution in #3730
- @AverageMarcus made their first contribution in #3798
- @cablunar made their first contribution in #3815
- @phoban01 made their first contribution in #3467
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v2.0.0
A special thanks to @dlipovetsky, @Ankitasw and @Skarlso who have moved to be maintainers. And also to @AverageMarcus who moved to be a reviewer.
Thank you to all our contributors!
v1.5.1
Release notes for Cluster API Provider AWS (CAPA) v1.5.1
Changelog since v1.5.0
What's Changed
🌱 Others
- [release-1.5] [E2E] Bump NVIDIA GPU operator version in GPU tests by @k8s-infra-cherrypick-robot in #3676
- [release-1.5] fix: wrong EKS tag when upgrading older clusters by @dlipovetsky in #3787
- chore: Backport maintainer/reviewer updates to release-1.5 by @dlipovetsky in #3807
- [release-1.5] fix: use v1beta1 version in EKS user kubeconfig by @k8s-infra-cherrypick-robot in #3763
Full Changelog: v1.5.0...v1.5.1
The image for this release is: registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v1.5.1
Thanks to all our contributors!
v2.0.0-beta.1
v2.0.0-beta.0
🚨 This is a BETA RELEASE. Use it only for testing purposes. If you find any bugs, please file an issue.
The image for this release is:
registry.k8s.io/cluster-api-aws/cluster-api-aws-controller:v2.0.0-beta.0
v1.5.0
Release notes for Cluster API Provider AWS (CAPA) v1.5.0
NOTE:
If you are planning to use Garbage Collection, which is a new feature added in this release, then you will need to update your controllers policy by running clusterawsadm bootstrap iam create-cloudformation-stack
again (or can manually add elasticloadbalancing:DeleteTargetGroup
permission to controllers policy). See the documentation on how to enable this feature via a feature flag.
Changelog since v1.4.0
What's Changed
🚀 Features
- External load balancer garbage collection - new gc service by @richardcase in
#3625 #3632 #3646 #3650 - [E2E] EFS CSI driver validation by @Madhur97 in #3391
- Add lookup for fields of type AWSResourcesReference by @Ankitasw in #3257
- Make CAPA tooling work on arm64 by @Prajyot-Parab in #3519
- [EKS] Allow disabling VPC CNI when setting secondary CIDR block by @mtougeron in #3524
- [EKS] Add ability to delete kube-proxy daemonset by @mzahorik in #3490
- Create bastion security group only when bastion is enabled by @k8s-infra-cherrypick-robot in #3588
🐛 Bug Fixes
- Do not change default security groups during EKS control plane reconcile by @dlipovetsky in #3622
- Add relative path for code generation by @richardcase in #3547
- Only setup envtest when the test target is called by @Skarlso in #3387
- Fix for release log creation script by @sedefsavas in #3388
- Only attempt to delete bootstrap data secret if InsecureSkipSecretsManager isn't set by @dlmather in #3400
- Update
clusterawsadm ami list
nil AMI output by @zeborg in #3496 - Fail apidiff make target when git fails by @Callisto13 in #3538
- Fix generate go apis target by @LucaLanziani in #3500
- Fix panics and add timeouts to various e2e methods by @josh-ferrell in #3457 #3471 #3418
📖 Documentation
- Remove KIAM page from the book by @sedefsavas in #3417
- Add role assumption trust policy example to book by @sedefsavas in #3416
- Update roadmap by @sedefsavas in #3415
- Add multitenancy example by @LucaLanziani in #3401
- Add steps to recover cluster by @warroyo in #3438
- docs: Using IAM roles instead of AWS credentials in management cluster by @Ankitasw in #3328
- Add EKS AWSManagedMachinePool example to spot instances doc by @pydctw in #3523
🌱 Others
- Disable external infrastructure test by @josh-ferrell in #3499
- Merge external infrastructure, peered VPCs, internal ELB and private subnets E2E test. by @josh-ferrell in #3366
- Add
owner-id
flag forclusterawsadm ami list
by @zeborg in #3461 - Add multi-tenancy and ssm test based on ClusterClass by @pydctw in #3448 #3389
- Validate Tags created for the resources by @VibhorChinda in #3398
- Updates e2e test cluster names to include spec name by @ydarb in #3425
- Apidiff test runs only if there are changes in api/ or exp/api/ by @meghanajangi in #3368
- Remove list webhooks by @sedefsavas in #3413
- Fix failing tests because of change in cluster names by @Ankitasw in #3429
- Add tests for using filters in AWSResourceReference type fields by @Ankitasw in #3382
- Use registry.k8s.io registry in CI jobs by @sedefsavas in #3436
- Scope cleanup by @sedefsavas in #3430
- Makefile: use 'rm -f' for verify-boilerplate by @invidian in #3442
- [E2E] Fix failing GPU test due to update in the CUDA Linux GPG Repository Key by @Ankitasw in #3459
- Add ClusterClass templates by @sedefsavas in #3462
- Fix eks-fargate cluster template by @pydctw in #3493
- Add ReplaceRoute in ControllersPolicy by @AmitSahastra in #3492
- Publish e2e templates by @sedefsavas in #3497
- Update EKS e2e addon versions by @pydctw in #3516
- Update EKS e2e to use k8s v1.22 by @pydctw in #3520
- Fix for conformance tests by @sedefsavas in #3529
- Add Roadmap Update for Windows Support by @luthermonson in #3534
- chore: use "registry.k8s.io" for k8s images by @richardcase in #3521
- Rename kubernetes.io/cluster tag to use EKS cluster name by @k8s-infra-cherrypick-robot in #3591
- Fix the owner checking of a cluster by @k8s-infra-cherrypick-robot in #3598
- [EKS] Add defaulting for update config by @k8s-infra-cherrypick-robot in #3629
- Manual cherry pick of linter fixes (#3617 and #3623) by @sedefsavas in #3637
- Add 1.5 version to metadata file by @sedefsavas in #3658
🌱 Dependencies
- Bump cluster-api to v1.1.5 by @sedefsavas in #3638
- Bump cert-manager version in the tests by @sedefsavas in #3437
- build(deps): bump actions/setup-go from 2 to 3 by @dependabot in #3406
- build(deps): bump actions/checkout from 2 to 3 by @dependabot in #3408
- build(deps): bump EndBug/add-and-commit from 7 to 9 by @dependabot in #3407
- build(deps): bump actions/cache from 2 to 3 by @dependabot in #3409
- build(deps): bump github.com/aws/aws-lambda-go from 1.28.0 to 1.29.0 by @dependabot in #3367
- build(deps): bump sigs.k8s.io/kustomize/kustomize/v4 from 4.5.3 to 4.5.4 in /hack/tools by @dependabot in #3383
- Bump AWS SDK Go and AWS IAM and AWS VPC CNI Authenticator by @Ankitasw in #3393 #3412
- build(deps): bump github.com/spf13/cobra from 1.4.0 to 1.5.0 by @dependabot in #3543
- build(deps): bump github/codeql-action from 1 to 2 by @dependabot in #3446
- build(deps): bump github.com/aws/aws-lambda-go from 1.30.0 to 1.31.1 by @dependabot in https://github.com/kubernetes-sigs/cluster-api-provid...