我希望在现有资源组中创建一个新的WebApp资源。这个问题和这个职位解释了如何导入现有资源(而不是每次创建新资源)。
我能够使用下面的命令导入我现有的资源组
terraform import azurerm_resource_group.rg-myResourceGroup /subscriptions/00000-my-subscription-id-0000000/resourceGroups/rg-myResourceGroup执行此命令后,我可以看到创建了名为'terraform.tfstate'的新文件,下面是该文件的内容。
{
"version": 3,
"terraform_version": "0.11.11",
"serial": 1,
"lineage": "-----------------------------",
"modules": [
{
"path": [
"root"
],
"outputs": {},
"resources": {
"azurerm_resource_group.rg-ResourceGroupName": {
"type": "azurerm_resource_group",
"depends_on": [],
"primary": {
"id": "/subscriptions/subscription-id-00000000000/resourceGroups/rg-hemant",
"attributes": {
"id": "/subscriptions/subscription-id-00000000000/resourceGroups/rg-hemant",
"location": "australiaeast",
"name": "rg-ResourceGroupName",
"tags.%": "0"
},
"meta": {},
"tainted": false
},
"deposed": [],
"provider": "provider.azurerm"
}
},
"depends_on": []
}
]
}现在我的问题是如何在我的main.tf中访问/引用/包括main.tf
resource "azurerm_resource_group" "rg-hemant" {
#name = it should be rg-ResourceGroupName
#location = it should be australiaeast
}更新1
mysubscription1‘中有一个资源组'rg-exising’webapp1、storageaccount1terraform apply操作之后,rg-exising应该有以下资源- webapp1
- storageaccount1
- newWebapp1 ( added by new `terraform apply` script )
4)请注意,我不希望terraform创建(如果是apply )或删除(如果是destroy )我的现有资源属于rg-exising
发布于 2018-12-15 22:42:28
在这些帖子中挖掘了更多信息,并找到了一个解决方案这里。
我们可以使用额外的参数来破坏地形,特别提到我们想要破坏的资源。
terraform destroy -target RESOURCE_TYPE.NAME -target RESOURCE_TYPE2.NAME注意:我学到的是,在这种情况下,不需要使用terraform import命令。
发布于 2018-12-15 10:03:18
实际上,您只需要将资源映射到tfstate中的状态,所以只需:
resource "azurerm_resource_group" "rg-hemant" {
name = 'rg-ResourceGroupName'
location = 'australiaeast'
}tf应该将此资源识别为状态文件中的资源。
https://stackoverflow.com/questions/53791274
复制相似问题