You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For example, If comment out the module instantiation, create my s3 bucket, then uncomment the module I can deploy (as the s3 bucket outputs are known beforehand).
If I attempt a DR deployment with the bucket and module instantiation in the same workspace I get the below errors;
Error: Invalid count argument
on .terraform/modules/datadog/logs_monitoring_cloudtrail.tf line 3, in resource "aws_lambda_permission" "allow-ctbucket-trigger":
3: count = var.cloudtrail_bucket_id != "" ? 1 : 0
The "count" value depends on resource attributes that cannot be determined
until apply, so Terraform cannot predict how many instances will be created.
To work around this, use the -target argument to first apply only the
resources that the count depends on.
Error: Invalid count argument
on .terraform/modules/datadog/logs_monitoring_cloudtrail.tf line 13, in resource "aws_s3_bucket_notification" "ctbucket-notification-dd-log":
13: count = var.cloudtrail_bucket_id != "" ? 1 : 0
The "count" value depends on resource attributes that cannot be determined
until apply, so Terraform cannot predict how many instances will be created.
To work around this, use the -target argument to first apply only the
resources that the count depends on.
Switching to for_each would be the solution but of course lose backwards compatibility.
The text was updated successfully, but these errors were encountered:
@houqp an s3 bucket resource created within the same workspace. The reference var.cloudtrail_bucket_id is an output from that resource so its not known at compile time which is what causes the error.
If the s3 bucket is created using any other method (manually, -target, commenting out this module, separate workspace) the error does not occur.
Got it, could you send a PR so we can continue the discussion over there? I think it's ok to break backwards compatibility with another major release as long as it's the right fix.
The count logic here is relying on resources pre-existing with known outputs:
terraform-aws-datadog/logs_monitoring_cloudtrail.tf
Line 3 in b0c3afe
terraform-aws-datadog/logs_monitoring_cloudtrail.tf
Line 13 in b0c3afe
For example, If comment out the module instantiation, create my s3 bucket, then uncomment the module I can deploy (as the s3 bucket outputs are known beforehand).
If I attempt a DR deployment with the bucket and module instantiation in the same workspace I get the below errors;
Switching to
for_each
would be the solution but of course lose backwards compatibility.The text was updated successfully, but these errors were encountered: