Terraform:如何在创建VM时使用目录名

Terraform:如何在创建VM时使用目录名,terraform,Terraform,我正在尝试使用terraform VCD provider在VmWare Vcloud数据中心中创建虚拟机。下面是完整的代码 我所做的 provider "vcd" { user = "abc" password = "xyz" org = "I1250-Se" vdc = "I1250-Se" url = "https

我正在尝试使用terraform VCD provider在VmWare Vcloud数据中心中创建虚拟机。下面是完整的代码

我所做的

provider "vcd" {
  user                 = "abc"
  password             = "xyz"
  org                  = "I1250-Se"
  vdc                  = "I1250-Se"
  url                  = "https://nlu02.abc.com/api"
  max_retry_timeout    = "30"
  allow_unverified_ssl = "true"
}

resource "vcd_vapp" "web" {
  name = "web"
  power_on = "true"
}

data "vcd_vapp" "web" {
  name             = "web"
  org              = "I1250-Se"
}

data "vcd_catalog_item" "my-cat-item" {
  org  = "I1250-Se"
  name = data.vcd_catalog.my-cat.name
  catalog = data.vcd_catalog.my-cat.name
}

data "vcd_catalog" "my-cat" {
  org  = ""
  name = "ID120_ISO"
}


resource "vcd_vapp_vm" "web1" {
  vapp_name     = data.vcd_vapp.web.name
  name          = var.vmname
  catalog_name  = "ID120_ISO"
  template_name = ""
  memory        = 2048
  cpus          = 2
  cpu_cores     = 1
}
错误是什么

provider "vcd" {
  user                 = "abc"
  password             = "xyz"
  org                  = "I1250-Se"
  vdc                  = "I1250-Se"
  url                  = "https://nlu02.abc.com/api"
  max_retry_timeout    = "30"
  allow_unverified_ssl = "true"
}

resource "vcd_vapp" "web" {
  name = "web"
  power_on = "true"
}

data "vcd_vapp" "web" {
  name             = "web"
  org              = "I1250-Se"
}

data "vcd_catalog_item" "my-cat-item" {
  org  = "I1250-Se"
  name = data.vcd_catalog.my-cat.name
  catalog = data.vcd_catalog.my-cat.name
}

data "vcd_catalog" "my-cat" {
  org  = ""
  name = "ID120_ISO"
}


resource "vcd_vapp_vm" "web1" {
  vapp_name     = data.vcd_vapp.web.name
  name          = var.vmname
  catalog_name  = "ID120_ISO"
  template_name = ""
  memory        = 2048
  cpus          = 2
  cpu_cores     = 1
}
vcd_vapp_vm.web1:正在创建

错误:查找目录时出错:[ENF]未找到实体

在main.tf第33行的资源“vcd_vapp_vm”web1中:33:resource “vcd_vapp_vm”“web1”{

环境

provider "vcd" {
  user                 = "abc"
  password             = "xyz"
  org                  = "I1250-Se"
  vdc                  = "I1250-Se"
  url                  = "https://nlu02.abc.com/api"
  max_retry_timeout    = "30"
  allow_unverified_ssl = "true"
}

resource "vcd_vapp" "web" {
  name = "web"
  power_on = "true"
}

data "vcd_vapp" "web" {
  name             = "web"
  org              = "I1250-Se"
}

data "vcd_catalog_item" "my-cat-item" {
  org  = "I1250-Se"
  name = data.vcd_catalog.my-cat.name
  catalog = data.vcd_catalog.my-cat.name
}

data "vcd_catalog" "my-cat" {
  org  = ""
  name = "ID120_ISO"
}


resource "vcd_vapp_vm" "web1" {
  vapp_name     = data.vcd_vapp.web.name
  name          = var.vmname
  catalog_name  = "ID120_ISO"
  template_name = ""
  memory        = 2048
  cpus          = 2
  cpu_cores     = 1
}
地形v0.12.18

操作系统:

Linux jenvm 4.4.0-142-generic#168 Ubuntu SMP周三1月16日21:00:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

预期的内容

provider "vcd" {
  user                 = "abc"
  password             = "xyz"
  org                  = "I1250-Se"
  vdc                  = "I1250-Se"
  url                  = "https://nlu02.abc.com/api"
  max_retry_timeout    = "30"
  allow_unverified_ssl = "true"
}

resource "vcd_vapp" "web" {
  name = "web"
  power_on = "true"
}

data "vcd_vapp" "web" {
  name             = "web"
  org              = "I1250-Se"
}

data "vcd_catalog_item" "my-cat-item" {
  org  = "I1250-Se"
  name = data.vcd_catalog.my-cat.name
  catalog = data.vcd_catalog.my-cat.name
}

data "vcd_catalog" "my-cat" {
  org  = ""
  name = "ID120_ISO"
}


resource "vcd_vapp_vm" "web1" {
  vapp_name     = data.vcd_vapp.web.name
  name          = var.vmname
  catalog_name  = "ID120_ISO"
  template_name = ""
  memory        = 2048
  cpus          = 2
  cpu_cores     = 1
}
脚本应该接受目录名(已经存在)并创建VM。另一点需要注意的是,我所指的目录名不包含nay VApp模板,因此不确定它将如何运行。 我所期望的是,它应该接受目录名并使用介质(ISO映像)通过terraform在新创建的VM上安装操作系统


请建议。

目前正在审查在没有Vapp模板的情况下创建虚拟机的功能。目录名称应包含Vapp模板,ISO图像不能视为目录名称


因此,为了解决此问题,请将有效的OVA文件上载为VApp模板,并在代码中使用。谢谢

请提出建议。这对我们来说至关重要,也是一个拦截器