【发布时间】:2021-12-30 09:32:55
【问题描述】:
我正在尝试为 S3 设置远程 Terraform 后端。我能够创建存储桶,但我使用 bucket_prefix 而不是存储桶来定义我的存储桶名称。我这样做是为了确保我的组织内的代码可重用性。
我的问题是我在 Terraform 后端配置中引用新存储桶时遇到了问题。我知道我可以硬编码我创建的存储桶的名称,但我想引用类似于 Terraform 中其他资源的存储桶。
这可能吗?
我在下面包含了我的代码:
#configure terraform to use s3 as the backend
terraform {
backend "s3" {
bucket = "aws_s3_bucket.my-bucket.id"
key = "terraform/terraform.tfstate"
region = "ca-central-1"
}
}
AWS S3 资源定义
resource "aws_s3_bucket" "my-bucket" {
bucket_prefix = var.bucket_prefix
acl = var.acl
lifecycle {
prevent_destroy = true
}
versioning {
enabled = var.versioning
}
server_side_encryption_configuration {
rule {
apply_server_side_encryption_by_default {
sse_algorithm = var.sse_algorithm
}
}
}
}
【问题讨论】:
标签: amazon-web-services amazon-s3 terraform terraform-provider-aws