在我的Azure帐户中有一些资源。资源组,应用程序服务,存储帐户...我已经使用Azure门户或Powershell创建了这些资源。然后,我编写了一个terraform脚本来添加其他资源并更新一些现有资源。特别是我对更新应用程序服务感兴趣。我想向其中添加一些设置和托管身份。发生的事情是terraform说:“看,已经有一个具有您指定名称的应用程序服务”。我尝试使用“ terraform导入”将现有的应用程序服务绑定到我的terrafom状态文件,但是这样做是因为我丢失了已放入terraform文件中的设置。
我怎么解决这个问题?谢谢。
terraform import
是要走的路。如果文件中有任何现有设置:删除它们,直到完全导入了应用程序服务。
完整教程-使用资源组而不是应用程序服务,但原理是相同的:https : //azurecitadel.com/automation/terraform/lab6/#lab-importing-resources
Grab the ID for the azure resource: id=$(az group show --name deleteme --query id --output tsv)
在新的import.tf文件中为资源创建一个空节
resource "azurerm_resource_group" "deleteme" {}
terraform import azurerm_resource_group.deleteme $id
terraform-labs$ terraform import azurerm_resource_group.deleteme $id
Acquiring state lock. This may take a few moments...
azurerm_resource_group.deleteme: Importing from ID "/subscriptions/2d31be49-d999-4415-bb65-8aec2c90ba62/resourceGroups/deleteme"...
azurerm_resource_group.deleteme: Import complete!
Imported azurerm_resource_group (ID: /subscriptions/2d31be49-d999-4415-bb65-8aec2c90ba62/resourceGroups/deleteme)
azurerm_resource_group.deleteme: Refreshing state... (ID: /subscriptions/2d31be49-d999-4415-bb65-8aec2c90ba62/resourceGroups/deleteme)
Import successful!
The resources that were imported are shown above. These resources are now in
your Terraform state and will henceforth be managed by Terraform.
terraform plan
,您应该会看到一些错误,因为我们的区块没有被填充terraform state show azurerm_resource_group.deleteme
id = /subscriptions/2d31be49-d999-4415-bb65-8aec2c90ba62/resourceGroups/deleteme
location = westeurope
name = deleteme
tags.% = 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句