Terraform Remote State использует неверный файл
Мы используем Terraform с бэкэндом S3 через Terragrunt. Недавно кто-то пытался использовать рабочее пространство Terraform и впоследствии удалил рабочее пространство, но наше удаленное состояние не может найти какие-либо выходные данные, которые находятся в правильном файле состояния.
Посмотрев журнал отладки, я вижу, что он, похоже, указывает на нужный файл, но он не получает какую-либо уже развернутую инфраструктуру или выходные данные.
1 ответ
Terraform рабочее пространство и terragrunt, используя различные пути бэкэнд-ключа. И если вы бежите с terragrunt
, в корзине s3 по умолчанию включен контроль версий.
Например, используя terraform workspace
, реальный *.tfstate
файл будет создан для
s3://<nominated_backend_bucket>/env:/<workspace_name>/<tfstate_path>
Но Terragrunt создаст путь
s3://<nominated_backup_bucket>/<source_code_directory>/<tfstate_path>
Так что в большинстве случаев у них не будет шансов вступить в конфликт друг с другом.
Я рекомендую очистить вашу среду и запустить terragrunt plan/apply
снова. Есть некоторые другие проблемы, которые вы описали в своем первоначальном вопросе, и вам нужно выяснить их самостоятельно.