51 Commits

Author SHA1 Message Date
Michael Strassberger
681a868d62 fix: Restrict AWS provider max version due to v6 provider breaking changes (#3384)
* Add aws version constraint for 6.0.0

* fix: Restrict all AWS providers and Helm providers upper version limit

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2025-06-18 15:08:51 -05:00
Bryant Biggs
207d73fbaa feat: Add support for cluster force_update_version (#3345) 2025-04-18 11:29:13 -05:00
Matt Holmes
770ee99d9c feat: Add capacity reservation permissions to Karpenter IAM policy (#3318)
feat: Update AllowScopedEC2InstanceAccessActions policy to include capacity-reservation permission as part of Karpenter version 1.3.0
2025-03-07 07:31:19 -06:00
Eddie Bachle
1bfc10a558 docs: Update description of karpenter node_iam_role_use_name_prefix (#3304) 2025-02-18 19:07:34 -06:00
Kasper Jacobsen
edd7ef36dd feat: Add node repair config to managed node group (#3271)
* feat: add var.node_repair_config to eks-managed-node-group

Fixes terraform-aws-modules/terraform-aws-eks#3249

* chore: run terraform-docs

* chore: update examples/eks-managed-node-group

* fix: Correct implementation

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2025-01-17 11:35:47 -06:00
Bryant Biggs
012e51c055 fix: Update min provider version to remediate cluster replacement when enabling EKS Auto Mode (#3240) 2024-12-12 14:49:59 -06:00
Bryant Biggs
3b974d33ad feat: Add support for EKS Auto Mode and EKS Hybrid nodes (#3225)
* feat: Add support for EKS hybrid nodes

* feat: Add support for EKS Auto Mode

* chore: Update test directory names

* chore: Clean up examples and tests

* fix: Clean up and last minute changes for GA

* chore: Formatting

* chore: Bump min required version for new features

* fix: Corrects from test/validation on existing clusters

* feat: Add policy for custom tags on EKS Auto Mode, validate examples

* chore: Expand on `CAM` acronym

* chore: Update README to match examples
2024-12-04 09:24:21 -06:00
Bryant Biggs
a224334fc8 feat: Add support for pod identity association on EKS addons (#3203) 2024-11-08 15:56:56 -06:00
Bryant Biggs
1b0ac83264 feat: Add support for zonal shift (#3195) 2024-11-01 16:50:19 -05:00
joey100
dea6c44b45 fix: Use dynamic partition data source to determine DNS suffix for Karpenter EC2 pass role permission (#3193)
* fix karpenter iam passrole to ec2 api bug, to support aws cn

* fix: Use dyanmic partition value for DNS suffix

---------

Co-authored-by: Shuiping <shuiping@Shuipings-MacBook-Pro.local>
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-10-26 19:12:25 -05:00
Bryant Biggs
b2a8617794 feat: Add support for newly released AL2023 accelerated AMI types (#3177) 2024-10-12 11:44:24 -05:00
Bryant Biggs
8b90872983 fix: Remove deprecated inline_policy from cluster role (#3163) 2024-09-21 09:45:50 -05:00
Bryant Biggs
47ab3eb884 fix: Correct Karpenter EC2 service principal DNS suffix in non-commercial regions (#3157) 2024-09-16 10:36:15 -05:00
Andy Townsend
e317651535 feat: Add support for Karpenter v1 controller IAM role permissions (#3126)
* chore: update controller IAM role permissions to support karpenter v1

* Update versions.tf

* Revert "Update versions.tf"

This reverts commit f0e5c791443301ef7f802c627efe7f7226b95046.

* fix: Add support for both v1 and prior to v1 controller permission policy

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-08-19 14:31:36 -05:00
Bryant Biggs
e12ab7a5de feat: Add support for upgrade_policy (#3112)
* feat: Add support for `upgrade_policy`

* chore: Update test and validate
2024-08-05 09:07:13 -05:00
Taehyun Kim
af88e7d2f8 feat: Support bootstrap_self_managed_addons (#3099)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-07-15 19:55:09 -04:00
Bryant Biggs
ae3379e924 feat: Add support for ML capacity block reservations with EKS managed node group(s) (#3091) 2024-07-05 11:42:31 -04:00
Bryant Biggs
1604c6cdc8 feat: Add support for custom IAM role policy (#3087) 2024-07-02 10:56:19 -04:00
ksbde
f6e071cd99 feat: Deny HTTP on Karpenter SQS policy (#3080) 2024-06-27 07:41:20 -04:00
Bryant Biggs
323fb759d7 docs: Move examples that are more like test cases to the new tests/ directory; add better example configurations (#3069)
* chore: Move examples that are more like test cases to the new `tests/` directory

* chore: Stash

* feat: Add better examples for EKS managed node groups

* chore: Add better examples for self-managed node groups

* chore: Update docs and correct `nodegroup` to `node group`
2024-06-13 10:51:40 -04:00
Rodrigo Bersa
cfcaf27ac7 feat: Add support for Pod Identity assocation on Karpenter sub-module (#3031)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-05-09 07:57:57 -04:00
Bryant Biggs
aeb9f0c990 fix: Ensure the correct service CIDR and IP family is used in the rendered user data (#2963)
* fix: Ensuring the correct service CIDR and IP family is used in the rendered user data

* chore: Updates from testing and validating

* chore: Fix example destroy instructions

* fix: Only require `cluster_service_cidr` when `create = true`

* chore: Clean up commented out code and add note on check length
2024-03-12 10:36:19 -04:00
Bryant Biggs
29dcca335d fix: Ensure a default ip_family value is provided to guarantee a CNI policy is attached to nodes (#2967) 2024-03-11 11:02:59 -04:00
Piotr Roszatycki
3ad19d7435 fix: Do not attach policy if Karpenter node role is not created by module (#2964) 2024-03-10 19:16:24 -04:00
Bryant Biggs
57f5130132 feat: Replace the use of toset() with static keys for node IAM role policy attachment (#2962) 2024-03-10 12:49:41 -04:00
Bryant Biggs
dfe41141c2 fix: Update AWS provider version to support AL2023_* AMI types; ensure AL2023 user data receives cluster service CIDR (#2960)
* fix: Update AWS provider version to support `AL2023_*` AMI types

* fix: Ensure the cluster service CIDR is passed to the AL2023 user data where its required
2024-03-08 15:25:14 -05:00
Bryant Biggs
7f472ec660 feat: Add support for enabling EFA resources (#2936)
* feat: Add support for enabling EFA resources

* feat: Add support for creating placement group and ensuring subnet ID used supports the instance type provided

* chore: Update README and examples

* feat: Update AWS provider MSV to support `maximum_network_cards` attribute

* fix: Update self-managed example after last round of testing; improve EFA support wording
2024-02-23 09:29:10 -05:00
Bryant Biggs
081c7624a5 fix: Replace Karpenter SQS policy dynamic service princpal DNS suffixes with static amazonaws.com (#2941)
fix: Replace dynamic service princpal DNS suffixes with static `amazonaws.com`
2024-02-21 17:30:49 -05:00
Nick Nikitas
671fc6e627 fix: Karpenter enable_spot_termination = false should not result in an error (#2907)
* Add condition for statement if enable_spot_termination is true

* Update modules/karpenter/main.tf

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-02-07 19:32:47 -05:00
tculp
cc6919de81 feat: Allow enable/disable of EKS pod identity for the Karpenter controller (#2902)
* Made EKS pod identities for the controller role toggleable

* Switched the variable to the singular form

---------

Co-authored-by: Tyler Culp <tyler.culp@polestardefense.com>
2024-02-06 09:34:04 -05:00
Nihal
0381503cbb docs: Correct Karpenter variable references for changes made in v20.0 (#2900) 2024-02-05 14:57:05 -05:00
Bryant Biggs
6b40bdbb1d feat!: Replace the use of aws-auth configmap with EKS cluster access entry (#2858)
* feat: Replace `resolve_conflicts` with `resolve_conflicts_on_create`/`delete`; raise MSV of AWS provider to `v5.0` to support

* fix: Replace dynamic DNS suffix for `sts:AssumeRole` API calls for static suffix

* feat: Add module tag

* feat: Align Karpenter permissions with Karpenter v1beta1/v0.32 permissions from upstream

* refactor: Move `aws-auth` ConfigMap functionality to its own sub-module

* chore: Update examples

* feat: Add state `moved` block for Karpenter Pod Identity role re-name

* fix: Correct variable `create` description

* feat: Add support for cluster access entries

* chore: Bump MSV of Terraform to `1.3`

* fix: Replace defunct kubectl provider with an updated forked equivalent

* chore: Update and validate examples for access entry; clean up provider usage

* docs: Correct double redundant variable descriptions

* feat: Add support for Cloudwatch log group class argument

* fix: Update usage tag placement, fix Karpenter event spelling, add upcoming changes section to upgrade guide

* feat: Update Karpenter module to generalize naming used and align policy with the upstream Karpenter policy

* feat: Add native support for Windows based managed nodegroups similar to AL2 and Bottlerocket

* feat: Update self-managed nodegroup module to use latest features of ASG

* docs: Update and simplify docs

* fix: Correct variable description for AMI types

* fix: Update upgrade guide with changes; rename Karpenter controller resource names to support migrating for users

* docs: Complete upgrade guide docs for migration and changes applied

* Update examples/karpenter/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

* Update examples/outposts/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

* Update modules/karpenter/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

---------

Co-authored-by: Anton Babenko <anton@antonbabenko.com>
2024-02-02 09:36:25 -05:00
Bryant Biggs
c36c8dc825 fix: Remove additional conditional on Karpenter instance profile creation to support upgrading (#2812) 2023-11-10 08:59:00 -05:00
Bryant Biggs
0732bea85f feat: Update KMS module to avoid calling data sources when create_kms_key = false (#2804) 2023-11-04 08:41:59 -04:00
Michael Barrientos
aec2bab1d8 feat: Add Karpenter v1beta1 compatibility (#2800)
* feat: Add Karpenter v1beta1 compatibility

* fix: Update to make changes opt-in

* fix: Update resource schemas to align with latest Karpenter version - validated and working as intended

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-11-01 11:33:07 -04:00
Bryant Biggs
f4766e5c27 fix: Karpenter node IAM role policies variable should be a map of strings, not list (#2771) 2023-10-10 11:57:29 -04:00
Jérémie Charest
feee18dd42 feat: Add support for allowed_instance_types on self-managed nodegroup ASG (#2757)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-10-06 09:20:13 -04:00
sanjinp
6217d0eaab fix: Snapshot permissions issue for Karpenter submodule (#2649)
fix: snapshot permirrions issue for karpenter submodule
2023-06-09 13:08:34 -04:00
Joshua Pare
6c56e2ad20 fix: Ensure isra_tag_values can be tried before defaulting to cluster_name on Karpenter module (#2631)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-05-30 18:55:40 -04:00
Bryant Biggs
e23139ad2d fix: Revert changes to ignore role_last_used (#2629) 2023-05-24 17:54:33 -04:00
Eric Bailey
f8ea3d08ad feat: Ignore changes to *.aws_iam_role.*.role_last_used (#2628) 2023-05-24 13:46:52 -04:00
Tung Nguyen
aa3bdf1c19 feat: Add irsa_tag_values variable (#2584) 2023-05-17 10:04:11 -04:00
tal-lederman-dy
969c7a7c43 fix: SQS queue encryption types selection (#2575)
Co-authored-by: Tal Lederman <tallederman@Tals-MacBook-Pro.local>
2023-04-18 09:03:15 -04:00
Constantin Bugneac
bd387d69fa feat: Add optional list of policy ARNs for attachment to Karpenter IRSA (#2537)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-03-28 16:50:40 -04:00
Patrick Lee Scott
8954ff7bb4 feat: Allow setting custom IRSA policy name for karpenter (#2480) 2023-02-17 10:23:58 -05:00
Lukas Wöhrl
c4a4b8afe3 feat: Add auto discovery permission of cluster endpoint to Karpenter role (#2451)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-02-15 16:02:27 -05:00
Omer Levi Hevroni
68fe60f1c4 feat: Allow to pass prefix for rule names (#2437) 2023-02-07 07:04:45 -05:00
Bryant Biggs
3b62f6c316 feat: Add support for addon configuration_values (#2345)
Resolves undefined
2022-12-16 14:44:21 -05:00
Bryant Biggs
b2e97ca3dc feat!: Add support for Outposts, remove node security group, add support for addon preserve and most_recent configurations (#2250)
Co-authored-by: Anton Babenko <anton@antonbabenko.com>
Resolves undefined
2022-12-05 16:26:23 -05:00
Bryant Biggs
3fb28b357f fix: Ensure that var.create is tied to all resources correctly (#2308) 2022-11-23 12:43:42 -05:00