0

我们通过 Terragrunt 使用带有 S3 后端的 Terraform。最近,有人尝试使用 Terraform 工作区,随后删除了工作区,而不是我们的远程状态无法找到任何处于正确状态文件中的输出。

查看调试日志后,我可以看到它似乎指向正确的文件,但它没有拾取任何已部署的基础架构或输出

4

1 回答 1

1

Terraform 工作区和 terragrunt 使用不同的后端密钥路径。如果您使用 运行terragrunt,则 s3 存储桶默认启用版本控制。

例如,使用,将创建terraform workspace真实文件以*.tfstate

s3://<nominated_backend_bucket>/env:/<workspace_name>/<tfstate_path>

但是 terragrunt 将创建 tfstate 路径为

s3://<nominated_backup_bucket>/<source_code_directory>/<tfstate_path>

所以在大多数情况下,他们没有机会相互冲突。

我建议清理您的环境并terragrunt plan/apply再次运行。还有一些其他问题比您在原始问题中描述的要多,您需要自己找出。

于 2019-03-08T01:30:47.330 回答