忽略地形远程状态
Ignore terraform remote state
我不小心从 S3 删除了远程文件,如何推送我的本地文件?我尝试了 terraform remote push -force。它抛出以下错误。
Failed to load state: Remote state found, but state file 'terraform.tfstate' also present.
问题可能是您的本地目录中有两个状态文件,如下所示:
.terraform/terraform.tfstate
terraform.tfstate
如果是,则 .terraform/terraform.tfstate
处的那个是 s3 远程状态的本地副本。 terraform.tfstate
处的那个是纯本地状态。但是 terraform 只希望看到一个或另一个,因此出现错误消息。
将两个文件复制到安全的地方,然后尝试决定将哪个文件复制回 .terraform/terraform.tfstate
。这可能是显而易见的:一个可能比另一个更新或更大。
如果一切都失败了,一次复制一个到 .terraform/terraform.tfstate
和 terraform refresh
,然后保留更好的版本。
解决方法是手动将本地状态缓存 (.terraform/terraform.tfstate) 中的序列号更改为当前序列号之上的值,然后重试
我不小心从 S3 删除了远程文件,如何推送我的本地文件?我尝试了 terraform remote push -force。它抛出以下错误。
Failed to load state: Remote state found, but state file 'terraform.tfstate' also present.
问题可能是您的本地目录中有两个状态文件,如下所示:
.terraform/terraform.tfstate
terraform.tfstate
如果是,则 .terraform/terraform.tfstate
处的那个是 s3 远程状态的本地副本。 terraform.tfstate
处的那个是纯本地状态。但是 terraform 只希望看到一个或另一个,因此出现错误消息。
将两个文件复制到安全的地方,然后尝试决定将哪个文件复制回 .terraform/terraform.tfstate
。这可能是显而易见的:一个可能比另一个更新或更大。
如果一切都失败了,一次复制一个到 .terraform/terraform.tfstate
和 terraform refresh
,然后保留更好的版本。
解决方法是手动将本地状态缓存 (.terraform/terraform.tfstate) 中的序列号更改为当前序列号之上的值,然后重试