cloudposse / terraform-aws-rds-cluster

Terraform module to provision an RDS Aurora cluster for MySQL or Postgres
https://cloudposse.com/accelerate
Apache License 2.0
143 stars 173 forks source link

Unable to set `performance_insights_enabled` to false #158

Open kris-Nabis opened 1 year ago

kris-Nabis commented 1 year ago

Found a bug? Maybe our Slack Community can help.

Slack Community

Describe the Bug

Unable to set the variable performance_insights_enabled to false. While set to false Terraform throws the following error:

Error: creating RDS Cluster (dev-db) Instance (dev-db-1): InvalidParameterCombination: To enable Performance Insights, EnablePerformanceInsights must be set to 'true'

Expected Behavior

In our dev environment we may not want to enable performance insights in order to save money. I would have expected to be able to tell the module to set it to false. it would be great if we could make this a bit more dynamic.

Steps to Reproduce

Steps to reproduce the behavior:

  1. Create a rds_cluster/aws module
  2. set performance_insights_enabled to false
  3. Run terraform apply
  4. See error
    Error: creating RDS Cluster (dev-db) Instance (dev-db-1): InvalidParameterCombination: To enable Performance Insights, EnablePerformanceInsights must be set to 'true'

Screenshots

If applicable, add screenshots or logs to help explain your problem.

Environment (please complete the following information):

Alpine linux terraform 1.2.5

kevle1 commented 3 months ago

For anyone coming across this, when any other performance_insights_... options are specified, performance_insights_enabled must be true. In order to set performance_insights_enabled to false, the options must be null or unspecified. E.g.:

  performance_insights_enabled          = local.performance_insights_enabled
  performance_insights_retention_period = local.performance_insights_enabled ? 31 : null