/
lambda_provisioned_concurrency_config.tf
29 lines (25 loc) · 1.66 KB
/
lambda_provisioned_concurrency_config.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#---------------------------------------------------
# AWS lambda provisioned concurrency config
#---------------------------------------------------
resource "aws_lambda_provisioned_concurrency_config" "lambda_provisioned_concurrency_config" {
count = var.enable_lambda_provisioned_concurrency_config ? 1 : 0
function_name = var.lambda_provisioned_concurrency_config_function_name != "" && ! var.enable_lambda_function && ! var.enable_lambda_alias ? var.lambda_provisioned_concurrency_config_function_name : (var.enable_lambda_function && ! var.enable_lambda_alias ? element(concat(aws_lambda_function.lambda_function.*.function_name, [""]), 0) : element(concat(aws_lambda_alias.lambda_alias.*.function_name, [""]), 0))
qualifier = var.lambda_provisioned_concurrency_config_qualifier != "" && ! var.enable_lambda_function && ! var.enable_lambda_alias ? var.lambda_provisioned_concurrency_config_qualifier : (var.enable_lambda_function && ! var.enable_lambda_alias ? element(concat(aws_lambda_function.lambda_function.*.version, [""]), 0) : element(concat(aws_lambda_alias.lambda_alias.*.name, [""]), 0))
provisioned_concurrent_executions = var.lambda_provisioned_concurrency_config_provisioned_concurrent_executions
dynamic "timeouts" {
iterator = timeouts
for_each = var.lambda_provisioned_concurrency_config_timeouts
content {
create = lookup(timeouts.value, "create", null)
update = lookup(timeouts.value, "update", null)
}
}
lifecycle {
create_before_destroy = true
ignore_changes = []
}
depends_on = [
aws_lambda_function.lambda_function,
aws_lambda_alias.lambda_alias
]
}