File tree Expand file tree Collapse file tree 3 files changed +21
-1
lines changed Expand file tree Collapse file tree 3 files changed +21
-1
lines changed Original file line number Diff line number Diff line change @@ -151,6 +151,23 @@ resource "vsphere_virtual_machine" "vm" {
151151 io_share_count = length (var. io_share_level ) > 0 && var. io_share_level [template_disks . key ] == " custom" ? var. io_share_count [template_disks . key ] : null
152152 }
153153 }
154+ // Disk for template from Content Library
155+ dynamic "disk" {
156+ for_each = var. content_library == null ? [] : [1 ]
157+ iterator = template_disks
158+ content {
159+ label = length (var. disk_label ) > 0 ? var. disk_label [template_disks . key ] : " disk${ template_disks . key } "
160+ size = var. disk_size_gb [template_disks . key ]
161+ unit_number = var. scsi_controller != null ? var. scsi_controller * 15 + template_disks. key : template_disks. key
162+ // thin_provisioned = data.vsphere_virtual_machine.template[0].disks[template_disks.key].thin_provisioned
163+ // eagerly_scrub = data.vsphere_virtual_machine.template[0].disks[template_disks.key].eagerly_scrub
164+ datastore_id = var. disk_datastore != " " ? data. vsphere_datastore . disk_datastore [0 ]. id : null
165+ storage_policy_id = length (var. template_storage_policy_id ) > 0 ? var. template_storage_policy_id [template_disks . key ] : null
166+ io_reservation = length (var. io_reservation ) > 0 ? var. io_reservation [template_disks . key ] : null
167+ io_share_level = length (var. io_share_level ) > 0 ? var. io_share_level [template_disks . key ] : " normal"
168+ io_share_count = length (var. io_share_level ) > 0 && var. io_share_level [template_disks . key ] == " custom" ? var. io_share_count [template_disks . key ] : null
169+ }
170+ }
154171 // Additional disks defined by Terraform config
155172 dynamic "disk" {
156173 for_each = var. data_disk
Original file line number Diff line number Diff line change 11# Smoke Test
22
3- You need to run the plan using vars .tfvars
3+ You need to run the plan using private .tfvars
44
55### Example:
66
2626 network = {
2727 "VM Networks" = ["10.13.13.2"],
2828 }
29+ disk_size_gb = [ 20 ]
2930 }
3031}
3132```
Original file line number Diff line number Diff line change @@ -16,6 +16,7 @@ variable "vm" {
1616 is_windows_image = bool
1717 instances = number
1818 network = map (list (string ))
19+ disk_size_gb = list (number )
1920 vmgateway = string
2021 dns_servers = list (string )
2122 }))
@@ -33,6 +34,7 @@ module "example-server-basic" {
3334 vmrp = each. value . vmrp
3435 vmfolder = each. value . vmfolder
3536 network = each. value . network
37+ disk_size_gb = each. value . disk_size_gb
3638 vmgateway = each. value . vmgateway
3739 dc = each. value . dc
3840 datastore = each. value . datastore # Either
You can’t perform that action at this time.
0 commit comments