All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- fix: use non-deprecated CRD api by @backjo in keikoproj#355
- chore: upgrade dependencies by @eytan-avisror in keikoproj#353
- feat: allow resolving EKS AMIs by version/slug for better readability by @backjo in keikoproj#351
- fix: Add override instance type for running instances in MixedInstancePolicy by @eytan-avisror in keikoproj#350
- feat: add support for calculating max pods when prefix assignment is … by @backjo in keikoproj#326
- fix: check architecture when considering similar instance types in the same family by @backjo in keikoproj#332
- feat: automated ami upgrades + upgrade locking by @preflightsiren in keikoproj#327
- chore: Add missing bdd templates by @preflightsiren in keikoproj#334
- fix: Stop passing in ClusterCA and Endpoint information for Windows nodes by @backjo in keikoproj#337
- fix: don't set max pods above kubernetes recommended limit by @backjo in keikoproj#342
- chore: update go, improve cross-compilation in docker by @backjo in keikoproj#343
- fix: Deduplicate Subnets by @eytan-avisror in keikoproj#344
- fix: Enforce Restricted Fields usage when no default value by @eytan-avisror in keikoproj#345
- fix: Avoid launch template creation loop when switching from launch config and failing by @sahilbadla in keikoproj#346
- feat: add support for specifying container runtime (#323)
- fix: calculate cluster dns correctly for non /16 blocks (#319)
- fix: add throughput parameter for volumes, allow iops to be set for any provisioned iops-supported volume (#316)
- fix: add addl tags for scale to 0 support for windows nodes (#315)
- fix: evaluate controller-added tags (#314)
- feat: Pass API Endpoint & CA Cert directly to bootstrap
- fix: Set InstanceTypes before provisioned early exit (#312)
- refactor: awsprovider file restructure (#296)
- feat: add support for instance metadata options (#305)
- fix: Ignore mixedInstancePolicy if type is LaunchConfig (#303)
- fix: add sorting when resolving securitygroups/subnets (#302)
- Warm Pool Support (#286, #290)
- Fixes for conditionals logic (#287)
- OsFamily validation (#289)
- Only set restricted field to default value if none of the conditionals set it (#284)
- Functional-test fixes (#272, #276)
- Add build stage to Github Actions (#281)
- Add locking to Namespaces map access (#279)
- annotation for IRSA enabled nodes (#271)
- add image default label to nodes (#270)
- prometheus metrics integration (#274)
- conditional default values (#273)
- Documentation fixes (#257, #260)
- All logging entries should reference namespaced name (#266)
- Allow kubeconfig chaining in local-mode (#268)
- Add validation for provisioner spec (#267)
- Fix memory leak on caching pagination (#265)
- Launch template placement support (#199)
- Support bootstrap options / maxPods (#216)
- Automatic caluclation of custom networking maxPods (#244)
- Support new volume types (#233)
- Pre/Post bootstrap userdata for Windows Nodes (#220)
- Pre/Post bootstrap userdata for Bottlerocket Nodes (#227)
- ConfigMap Namespace Exclusion (#221)
- Build ARM compatible images (#224)
- Add MaxRetries to CRD Strategy (#249)
- Move BDD to Github Actions (#228, #229, #231, #232)
- Readme improvements (#226)
- Update dependency versions (#222)
- Move to Go 1.15 (#246)
- Avoid launch template creation loop (#225)
- Remove confighash on excluded namespace (#236)
- Remove handling of upgrade resource name conflicts (#243, #252)
- Guard cast of launchtemplate with type check (#254)
- BDD cleanup timing (#245)
- Set launch template version after creation (#239)
- Add missing namespace watch permissions (#242)
- Remove whitespace in userdata (#248)
- Fix premature upgrade completion (#211)
- LaunchID omitted when switching between configuration types (#208)
- Caching improvements for DescribeInstanceTypes/Offerings (#206)
- NPE when switching between configuration types (#205)
- rollingUpdate does not trigger an upgrade when using LaunchTemplate (#200)
- Handle length exceeded error for IAM role creation (#202)
- Launch Template support (#179)
- Support windows and bottlerocket images (#188, #186)
- Cluster Autoscaler configuration support (#183)
- Lifecycle Hooks support (#176)
- Add status fields for Strategy & Provisioner (#171)
- Support additional volume options (#169)
- Support base64 payload in userData (#168)
- Make scaling config retention configurable (#172)
- Refactor: scaling configuration abstraction (#165)
- Basic GitOps/Platform Support (#157)
- Suspend Processes (#132, #136)
- "Replace" concurrency policy (#138)
- Configurable AWS API retries (#139)
- UserData support (#146, #160)
- Node Label for Lifecycle State (#152)
- Additional NodeVolume options (#161)
- CRD Validation on Upgrade (#133)
- Uniform finalizer (#153)
- Accept "Name" tag for SecurityGroups / Subnets (#159)
- Documentation/RBAC/Logging fixes (#134, #154)
- BDD Fixes (#140, #148)
- Allow upgrade if nodes NotReady (#147)
- Event publishing (#110)
- Metrics collection (#111)
- AWS API calls optimization (#123, #124, #126)
- AWS SDK caching (#127)
- Default role labels according to cluster version (#125)
- Node relabling & migration path to Kubernetes 1.16 (#129)
- Update examples to support Kubernetes 1.16 (#121)
- This version includes support for Kubernetes 1.16, see further instructions in #129
- RBAC has been added for patching node objects
- This version includes CRD changes
- Pagination & Launch config deletion fixes (#114)
- CR Spec validation fixes (#109)
- Add retries/logging on AWS throttling (#106)
- Avoid modifications to desired instances (#108)
- Bootstrapping of shared roles (#102)
- eks provisioner v2 (#83)
- eks-cf provisioner deprecated (#94)
- functional tests improvements (#79)
- Removed vended code (#91)
- Use golang 1.13.10 & update SDKs (#90)
- General fixes, refactor, and code improvements (#93, #92, #75, #80)
- Documentation improvements (#96)
If you are migrating from 0.5.0 and lower, you MUST delete all instance groups, update CRD, RBAC and controller, and re-create your instance groups using the new eks
API. make sure to review the new API spec here.
- Support for EKS managed node groups (#76)
- Use latest aws-sdk (#67, #76)
- Documentation fixes (#74)
- Support scenarios where existing IAM role is different than existing instance profile (#64)
- Existing IAM role support (#62)
- Managed policy prefix including account id (#61)
- Basic spot-instance support (#36, #41)
- Additional options for rollingUpdate (#44)
- CFN stack prefixes (#46)
- Managed policy support (#55)
- MetricsCollection support (#57)
- Switch to aws-auth library (#40, #43)
- Improve reconcile of error states (#42)
- Fix rollingUpdate defaults (#59)
- Changed org name and all references
- Added tagging for KubernetesCluster
- CI integration & enhancments (#3, #4, #11, #12)
- CRD strategy concurrency (#6)
- Initial alpha release of instance-manager
- Bugfix: CRD strategy concurrency fix (#20)
- Bugfix: better management of aws-auth configmap (#23)
- CI integration & enhancments (#3, #4, #11, #12)
- CRD strategy concurrency (#6)
- Initial alpha release of instance-manager