Provides a VMware vSphere virtual machine file resource. This can be used to upload files (e.g. vmdk disks) from the Terraform host machine to a remote vSphere. The file resource can also be used to copy files within vSphere. Files can be copied between Datacenters and/or Datastores.

Updates to file resources will handle moving a file to a new destination (datacenter and/or datastore and/or destination_file). If any source parameter (e.g. source_datastore, source_datacenter or source_file) are changed, this results in a new resource (new file uploaded or copied and old one being deleted).

Example Usages

Upload file to vSphere:

resource "vsphere_file" "ubuntu_disk_upload" {
  datacenter = "my_datacenter"
  datastore = "local"
  source_file = "/home/ubuntu/my_disks/custom_ubuntu.vmdk"
  destination_file = "/my_path/disks/custom_ubuntu.vmdk"

Copy file within vSphere:

resource "vsphere_file" "ubuntu_disk_copy" {
  source_datacenter = "my_datacenter"
  datacenter = "my_datacenter"
  source_datastore = "local"
  datastore = "local"
  source_file = "/my_path/disks/custom_ubuntu.vmdk"
  destination_file = "/my_path/custom_ubuntu_id.vmdk"

Argument Reference

If source_datacenter and source_datastore are not provided, the file resource will upload the file from Terraform host. If either source_datacenter or source_datastore are provided, the file resource will copy from within specified locations in vSphere.

The following arguments are supported:

See the source of this document at Terraform.io