-
-
Notifications
You must be signed in to change notification settings - Fork 556
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Remove launch configuration support, add support for ignoring desired_capacity
#173
feat: Remove launch configuration support, add support for ignoring desired_capacity
#173
Conversation
…`desired_capacity` BREAKING CHANGE: Launch configuration support is no longer provided now that AWS has stated that they are no longer adding/updating the APIs for launch configurations (launch templates are the successor). In its place, a second autoscaling group that is identical to the default has been added - the only difference between the two is that the second ASG now ignores `desired_capacity` changes to allow users to utilize autoscaling without reverting or showing up in Terraform plans/applies.
desired_capacity
desired_capacity
…ws-autoscaling into breaking-change/remove-launch-config
This PR has been automatically marked as stale because it has been open 30 days |
Shhhh |
@bryantbiggs |
…ws-autoscaling into breaking-change/remove-launch-config
desired_capacity
desired_capacity
ok should be all set @antonbabenko - I updated the upgrade document to include both this change and the tags change (even though this change will go out as v5.1.0) |
### Modified | ||
|
||
- `var.tags` was previously a list of maps of `key`, `value`, and `propagate_at_launch`. It has been changed to a standard map of `key` = `value` pairs | ||
- The use of `for_each = lookup(map.value, "attr", null) != null ? [map.value.attr] : []` pattern has been replaced with a more concise, readable pattern of `for_each = can(map.value.attr) ? [map.value.attr] : []`. This is a no-op change for users |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to know.
Can it be written like this - for_each = try([map.value.attr], [])
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will it work? I am going to merge this one like this anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll check in a min and open a PR if it does work - should be a no-op anyways
## [5.1.0](v5.0.0...v5.1.0) (2022-02-14) ### Features * Remove launch configuration support, add support for ignoring `desired_capacity` ([#173](#173)) ([300379d](300379d))
This PR is included in version 5.1.0 🎉 |
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further. |
Description
idc
(ignore desired changes) as well as a new variableignore_desired_capacity_changes
to allow users to opt into an autoscaling group that will ignoredesired_capacity
lt_xxx
abbreviation tolaunch_template_xxx
Motivation and Context
desired_capacity
but unfortunately it cannot be parameterized. With the removal of launch configurations, it seems reasonable enough to add in this additional bit of logic in order to accommodate both optionscount
withfor_each
terraform-aws-eks#1680 . If this change is merged, I intend to do the following:self_managed_node_group
sub-module to remove the launch template and autoscaling group configurations and replace with this module. This is now possible due to the addition ofignore_changes = [desired_capacity]
eks_managed_node_group
sub-module to remove the launch template configuration and replace with this module. In hindsight, there is no need to duplicate the custom launch template configuration there while this module provides the means to create a standalone launch template without an autoscaling groupWith these two changes, we are then able to offload even more complexity and logic from the core EKS module and centralize the changes in the appropriate modules (i.e. - if a new feature is added to launch templates then we can update this module and propagate to the EKS module)
Breaking Changes
desired_capacity
changes to allow users to utilize autoscaling without reverting or showing up in Terraform plans/applies.How Has This Been Tested?
examples/*
projects