首页 > 解决方案 > 如何使用 Terraform 将 S3 存储桶区域名称发送到 json 文件?

问题描述

我正在使用 Terraform 创建一个 S3 存储桶,我需要将aws_s3_bucket.website_bucket.region创建存储桶的区域名称发送到以下格式的 json 文件 ( root/region.json)。

根/region.json

{
   "region": "us-east-2"
}

根/s3.tf

resource "aws_s3_bucket" "website_bucket" {
  bucket   = var.website_bucket_name
  provider = aws.east
  acl      = "public-read"

  cors_rule {
    allowed_headers = ["*"]
    allowed_methods = ["PUT", "POST", "GET", "DELETE"]
    allowed_origins = ["*"]
  }

  website {
    index_document = "index.html"
  }
}

标签: amazon-web-servicesterraformterraform-provider-aws

解决方案


以下应完成任务:

resource "local_file" "region" {
  filename = "root/region.json"
  content  = jsonencode({
    "region": aws_s3_bucket.website_bucket.region,
  })
}

推荐阅读