Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Disabling Auto Mode for an EKS Cluster is currently broken. There's three different problems involved:
kubernetes_network_config
resolves to the previous value withenabled = true
=>Error: compute_config.enabled, kubernetes_networking_config.elastic_load_balancing.enabled, and storage_config.block_storage.enabled must all be set to either true or false
compute_config
options (e.g. removingnode_role_arn
) while settingenabled = false
it incorrectly marks it as a replacement.compute_config
andstorage_config
blocks while settingkubernetes_network_config.elastic_load_balancing.enabled = false
you get an API error from AWS:InvalidParameterException: The type for cluster update was not provided
. This seems to be caused by the request not including the properties forcompute_config
andstorage_config
.This change tries to tackle issue number 3 mentioned above (
InvalidParameterException: The type for cluster update was not provided
). In detail it changes how theUpdateClusterConfig
request is assembled. Previously it wrongly omitted theComputeConfig
&StorageConfig
blocks when they were removed from the config. Instead this should trigger sending a request that disables auto mode if it was previously enabled.This intentionally doesn't touch upon
kubernetes_network_config
because that attribute won't becomenil
due to hashicorp/terraform-plugin-sdk#1101. Instead it just falls back to the previous value.Relations
Relates #40582
References
Output from Acceptance Testing