Terraform计划在重新运行存储在共享图像库中的自定义图像时销毁并替换Azure VM

Terraform计划在重新运行存储在共享图像库中的自定义图像时销毁并替换Azure VM,azure,terraform,Azure,Terraform,我们计划通过Azure中的Terraform为VM提供存储在共享图像库中的图像。该脚本在最初运行时运行良好 但是,当我们重新运行脚本时,Terraform将替换VM和所有附件。以下是它显示的消息: storage_image_reference { # forces replacement - id = "/subscriptions/cd0de4ca-ad4f-493c-98e5-7995c8844216/resourceGroups/eng-rg-aib-001-sig-eas

我们计划通过Azure中的Terraform为VM提供存储在共享图像库中的图像。该脚本在最初运行时运行良好

但是,当我们重新运行脚本时,Terraform将替换VM和所有附件。以下是它显示的消息:

storage_image_reference { # forces replacement
  - id = "/subscriptions/cd0de4ca-ad4f-493c-98e5-7995c8844216/resourceGroups/eng-rg-aib-001-sig-eastus/providers/Microsoft.Compute/galleries/abc_eng_sig_001/images/winSvrimages-2016/versions/0.0.1" -> null
} 
提到的解决方法之一是创建操作系统磁盘并将其连接到VM,而不是重新创建它。但是,在为操作系统创建托管磁盘时,它无法识别存储在映像库中的映像。给出以下错误:

Failure sending request: StatusCode=400 
-- 
Original Error: 
  Code="InvalidParameter" 
  Message="The value of parameter imageReference is invalid." 
  Target="/subscriptions/cd0de4ca-ad4f-493c-98e5-7995c8844216/resourceGroups/eng-rg-aib-001-sig-eastus/providers/Microsoft.Compute/galleries/abc_eng_sig_001/images/winSvrimages-2016/versions/0.0.1"

  on main.tf line 64, in resource "azurerm_managed_disk" "osdisk":
我还尝试使用数据块从共享图像库中读取图像。但是,它无法找到SIG。SIG是在不同的订阅中创建的-没有用于指定订阅的参数


请告知如何解决此错误。如果你需要进一步的信息,那么很乐意提供。

你应该考虑格式化你的代码。现在,错误和句子都混在一起了。