Ask*_*mov 5 amazon-web-services aws-lambda terraform terraform-provider-aws
我尝试创建一个预配置并发 Lambda,如下所示:
locals {
lambda_name = "mylambda"
provisioned_concurrency = 10
}
module "mylambda-lambda" {
source = "terraform-aws-modules/lambda/aws"
function_name = "${var.environment_name}-${local.lambda_name}"
// abriged config detailes
}
module "mylambda-alias" {
source = "terraform-aws-modules/lambda/aws//modules/alias"
name = local.lambda_name
function_name = module.mylambda-lambda.this_lambda_function_name
}
resource "aws_lambda_provisioned_concurrency_config" "auth_authorizer" {
function_name = module.mylambda-lambda.this_lambda_function_name
provisioned_concurrent_executions = local.provisioned_concurrency
qualifier = module.mylambda-alias.this_lambda_alias_name
}
Run Code Online (Sandbox Code Playgroud)
它在控制台中显示限定符(显然是别名)设置为$LATEST。
但在并发设置中我遇到了错误
Error: error putting Lambda Provisioned Concurrency Config (<lambda name>): InvalidParameterValueException: Provisioned Concurrency Configs cannot be applied to unpublished function versions.
{
RespMetadata: {
StatusCode: 400,
RequestID: "392f5609-086e-43f6-89af-a0ec0f7e3dc7"
},
Message_: "Provisioned Concurrency Configs cannot be applied to unpublished function versions.",
Type: "User"
}
Run Code Online (Sandbox Code Playgroud)
如何避免这个错误?
正如@jellycsc 所指出的,您需要发布一个新版本。
您已经为此使用了 terraform aws 模块,该模块接受标志发布
module "mylambda-lambda" {
source = "terraform-aws-modules/lambda/aws"
publish = true
function_name = "${var.environment_name}-${local.lambda_name}"
// abriged config detailes
}
Run Code Online (Sandbox Code Playgroud)
完整的例子在这里
| 归档时间: |
|
| 查看次数: |
5729 次 |
| 最近记录: |