Cog*_*Sum 10 aws-lambda terraform
我正在尝试定义一个返回 Lambda 函数的 ARN 的 terraform 输出块。Lambda 在子模块中定义。根据文档,lambda 似乎应该已经有一个 ARN 属性:https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/lambda_function#arn
使用它作为来源,我认为我应该能够执行以下操作:
output "lambda_arn" {
value = module.aws_lambda_function.arn
}
Run Code Online (Sandbox Code Playgroud)
这会产生以下错误:
Error: Unsupported attribute
on main.tf line 19, in output "lambda_arn":
19: value = module.aws_lambda_function.arn
This object does not have an attribute named "arn".
Run Code Online (Sandbox Code Playgroud)
我将不胜感激任何意见,谢谢。
Mar*_*cin 11
文档是正确的。数据源data.aws_lambda_function具有arn属性。arn但是,您正在尝试从自定义模块访问module.aws_lambda_function。为此,您必须arn在模块中定义输出。
所以在你的模块中你应该有这样的东西:
data "aws_lambda_function" "existing" {
function_name = "function-to-get"
}
output "arn" {
value = data.aws_lambda_function.existing.arn
}
Run Code Online (Sandbox Code Playgroud)
然后,如果您的模块名为aws_lambda_function:
module "aws_lambda_function" {
source = "path-to-module"
}
Run Code Online (Sandbox Code Playgroud)
您将能够访问arn:
module.aws_lambda_function.arn
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8391 次 |
| 最近记录: |