使用 Terraform Cloud 在目录中创建一个工作区
首先
Terraform Cloud是最強大的工具,可以在Terraform Cloud上管理State文件。
请根据下面的文章参考强项和基本用法。
-
- Terraform Cloud、個人で使ってもめちゃくちゃ便利
- 5人まで無料! Terraform Cloudを使ってみた
這個問題
在Terraform中,有时需要在一个仓库中管理多个状态,这些状态称为工作区。
.
└── services
├── common # workspace ここで一つのtfstateを管理する
│ └── main.tf
├── prod # workspace ここで一つのtfstateを管理する
│ └── main.tf
├── stage # workspace ここで一つのtfstateを管理する
│ └── main.tf
└── test # workspace ここで一つのtfstateを管理する
└── main.tf
例如,您可以在common文件中放置与网络相关的通用配置管理,然后首先执行terraform apply命令,这样可以避免每次改变代码都需要重新执行apply操作。
在Terraform Cloud中,您还可以轻松地进行该配置。

在创建 Workspace 时,只需将路径从存储库根目录指定到 Terraform 工作目录即可。
此外,Terraform Cloud可以与CI进行集成,而且可以将其触发器限制在仅仅是仓库变更,而非路径以下的变更上。(自动运行触发)

只需指定名称,就可以轻松地从另一个工作区的状态文件中提取数据。
data "terraform_remote_state" "foo" {
backend = "remote"
config = {
organization = "hikimochi"
workspaces = {
name = "hikimochi-terraform-other-workspace"
}
}
}
此外,在Terraform Cloud上进行管理时,即使没有指定backend,状态文件也会自动保存在该工作区上。(如果有不正确之处,请指出)
好酷啊。
最后
我发现之前在22号头疼写的东西一点点赞都没有,所以我又写了一篇。