是否有方法运行terraform申请特定的tfstate文件?默认情况下,它使用terraform.tfstate,但我需要重命名它,因为我正在管理azure中的多个状态文件。
文件夹结构:

发布于 2022-10-20 13:49:04
是的,如果您正在使用Azure存储来管理您的远程状态,您可以将状态文件命名为您喜欢的:
terraform {
backend "azurerm" {
resource_group_name = "<resource_group>"
storage_account_name = "<storage_group>"
container_name = "<container_name>"
key = "hello_world.tfstate" <-- tf state filename
}
}此外,请检查Terraform工作区,因为这对您也有帮助。
在本地运行init,并计划在运行apply之前确保没有预期的更改。
通过CI/CD管道将变更推送到main中,没有任何变化可供应用担心。
完成之后,您可以从存储中删除状态文件的旧副本。
发布于 2022-10-20 14:33:27
根据terraform apply帮助,有-state标志:
读取和保存状态的-state=path路径(除非指定了状态输出)。默认为"terraform.tfstate“。
执行:
terraform plan -state=yourfilename,以及以后terraform apply -state=yourfilename;将允许您指定状态文件名。
请注意,文件扩展名不需要是.tfstate,您可以使用任何文件名。
https://stackoverflow.com/questions/74138769
复制相似问题