terraform 引用现有的 s3 bucket 和 dynamo table
terraform reference existing s3 bucket and dynamo table
从我的 Terraform 脚本中,我试图获取现有资源的数据,例如现有 DynamoDB table 的 ARN 和现有 S3 存储桶的存储桶 ID。我已经尝试将 terraform_remote_state 用于 S3,但是它不符合我的要求,因为它需要一个密钥,而且我还没有找到任何适用于 Dynamo 的东西.
是否有适用于两者的解决方案,或者是否有两个单独的解决方案?
非常感谢。
远程状态不是您需要的概念 - 它用于存储 tfstate 文件。您需要的是“数据源”:
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/s3_bucket
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/dynamodb_table
在 Terraform 中,您使用“资源”声明需要创建的内容(如果它们不存在),使用“数据源”从已存在且不受 Terraform 管理的内容中读取信息。
从我的 Terraform 脚本中,我试图获取现有资源的数据,例如现有 DynamoDB table 的 ARN 和现有 S3 存储桶的存储桶 ID。我已经尝试将 terraform_remote_state 用于 S3,但是它不符合我的要求,因为它需要一个密钥,而且我还没有找到任何适用于 Dynamo 的东西.
是否有适用于两者的解决方案,或者是否有两个单独的解决方案?
非常感谢。
远程状态不是您需要的概念 - 它用于存储 tfstate 文件。您需要的是“数据源”:
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/s3_bucket
- https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/dynamodb_table
在 Terraform 中,您使用“资源”声明需要创建的内容(如果它们不存在),使用“数据源”从已存在且不受 Terraform 管理的内容中读取信息。