Terraform destroy从AWS API获得错误响应?

时间:2018-09-04 13:59:41

标签: amazon-web-services terraform terraform-provider-aws

如果其中包含实例,AWS将不允许您删除VPC。

如果我在vpc中创建了一个非tf托管实例(我使用terraform创建了 ),然后进行了Terraform销毁,则tf挂起了等待。

然后我可以转到aws控制台并手动删除vpc,并从aws获得有关无法删除它的有用信息以及可以手动删除的有问题资源的列表。

是否有冗长的开关,terraform会从AWS API吐出这些消息?我假设AWS API返回了此信息,但是也许只有在通过控制台删除时才这样做吗?

我还没有找到任何有关如何使tf destroy命令返回此信息的信息,因此,假设它不可能,但想确认。

1 个答案:

答案 0 :(得分:1)

通过在执行Terraform之前设置TF_LOG变量,可以从terraform中获取更多信息。有几个级别的日志记录,如果您熟悉syslog严重性级别(即INFO,WARN,ERROR等),则应该看起来很熟悉。设置此变量非常有用debugging strategy

设置TF_LOG=DEBUG至少应让您确定正在调用哪些AWS api调用。以我在terraform上的经验来看,api调用失败并不罕见。 terraform有时不会报告错误,挂起或报告错误,但信息充其量只是过时的。这是terraform社区正在努力的事情。还有current github issues open to similar behavior

如果在设置TF_LOG环境变量之后,api调用确实失败了,建议您open a github issue with terraform;然后使用issues contributing guidelines

对其进行格式化