gpt4 book ai didi

amazon-web-services - terraform 如何找到在模块上创建的存储桶的 ARN

转载 作者:行者123 更新时间:2023-12-04 08:11:44 29 4
gpt4 key购买 nike

我正在使用模块创建存储桶,如何找到该存储桶的 ARN?

创建模块

module "testbucket" {
source = "github.com/tomfa/terraform-sandbox/s3-webfiles-bucket"
aws_region = "${var.aws_region}"
aws_access_key = "${var.aws_access_key}"
aws_secret_key = "${var.aws_secret_key}"
bucket_name = "${var.bucket_name}-test"
}

然后,当我调用策略时,我需要访问 ARN
 {
"Sid": "accessToS3",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"${aws_s3_bucket.${var.bucket_name}.arn}",
]
}

我没有引用 ARN,所以我得到了错误:

Error: resource 'aws_iam_role_policy.policy_Demo_lambda' config: unknown resource 'aws_s3_bucket.mybukk' referenced in variable aws_s3_bucket.mybukk.arn




如何访问我的 ARN?谢谢

最佳答案

这可以在 terraform apply 执行后通过两种方式完成:

在您的工作目录中创建一个名为 outputs.tf 的文件。在该文件中,您可以使用以下两种方法之一。

1(如果您已经定义了此资源的变量)

output "S3 Bucket Name" {
value = "${var.bucket_name.arn}"
}

2(如果你想直接调用资源)
output "S3 Bucket Name" {
value = "${aws_s3_bucket.bucket_name.arn}"
}

关于amazon-web-services - terraform 如何找到在模块上创建的存储桶的 ARN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51278407/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com