Skip to content

Commit 61572fe

Browse files
authored
Merge pull request #43 from DataDog/loris.friedel/fix-sqs-validation-issue-40
fix: remove cross-variable validation that broke tonumber("latest")
2 parents 96c6d1b + bd586de commit 61572fe

3 files changed

Lines changed: 1 addition & 38 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ For complete usage examples demonstrating different configuration scenarios, see
128128
| dd_max_workers | Max concurrent workers | `string` | `null` |
129129
| dd_log_level | Log level | `string` | `null` |
130130
| dd_store_failed_events | Store failed events in S3 | `bool` | `null` |
131-
| dd_sqs_queue_url | SQS queue URL for failed event storage (takes priority over S3 when set, auto-enables `dd_store_failed_events`) | `string` | `null` |
131+
| dd_sqs_queue_url | SQS queue URL for failed event storage (requires layer version >= 97; takes priority over S3 when set, auto-enables `dd_store_failed_events`) | `string` | `null` |
132132
| dd_schedule_retry_failed_events | Periodically retry failed events (via AWS EventBridge) | `bool` | `null` |
133133
| dd_schedule_retry_interval | Retry interval in hours for failed events | `number` | `6` |
134134
| dd_forwarder_bucket_name | Custom S3 bucket name | `string` | `null` |

tests/sqs_failed_events.tftest.hcl

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -182,38 +182,6 @@ run "s3_fallback_unchanged" {
182182
}
183183
}
184184

185-
# Test: SQS with old layer version fails validation
186-
run "sqs_with_old_layer_version_fails" {
187-
command = plan
188-
189-
variables {
190-
dd_api_key = "test-api-key-value"
191-
dd_site = "datadoghq.com"
192-
dd_sqs_queue_url = "https://sqs.us-east-1.amazonaws.com/123456789012/my-failed-events-queue"
193-
layer_version = "96"
194-
}
195-
196-
expect_failures = [
197-
var.dd_sqs_queue_url,
198-
]
199-
}
200-
201-
# Test: SQS with layer version 97 succeeds
202-
run "sqs_with_layer_version_97" {
203-
command = plan
204-
205-
variables {
206-
dd_api_key = "test-api-key-value"
207-
dd_site = "datadoghq.com"
208-
dd_sqs_queue_url = "https://sqs.us-east-1.amazonaws.com/123456789012/my-failed-events-queue"
209-
layer_version = "97"
210-
}
211-
212-
assert {
213-
condition = aws_lambda_function.forwarder.environment[0].variables.DD_SQS_QUEUE_URL == "https://sqs.us-east-1.amazonaws.com/123456789012/my-failed-events-queue"
214-
error_message = "DD_SQS_QUEUE_URL should be set with layer version 97"
215-
}
216-
}
217185

218186
# Test: IAM SQS permissions are included when dd_sqs_queue_url is set
219187
run "iam_sqs_permissions" {

variables.tf

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -460,11 +460,6 @@ variable "dd_sqs_queue_url" {
460460
condition = var.dd_sqs_queue_url == null || can(regex("^https://sqs\\.[a-z0-9-]+\\.amazonaws\\.com[a-z.]*/[0-9]{12}/[a-zA-Z0-9_.-]+$", var.dd_sqs_queue_url))
461461
error_message = "dd_sqs_queue_url must be a valid SQS queue URL (e.g. https://sqs.us-east-1.amazonaws.com/123456789012/my-queue)."
462462
}
463-
464-
validation {
465-
condition = var.dd_sqs_queue_url == null || var.layer_version == "latest" || (can(tonumber(var.layer_version)) && tonumber(var.layer_version) >= 97)
466-
error_message = "dd_sqs_queue_url requires forwarder layer version >= 97 (forwarder 5.3.0+). Set layer_version = \"latest\" or a version >= 97."
467-
}
468463
}
469464

470465
variable "dd_schedule_retry_failed_events" {

0 commit comments

Comments
 (0)