-
Notifications
You must be signed in to change notification settings - Fork 770
Description
Describe the bug
Whenever attempting to create First Class Disk providing a target path, it fails with msg = 'A specified parameter was not correct: '. Many path formats have been tested, but no luck. In case path parameter is not set, the task completes Successfully.
backing_spec = vim.vslm.CreateSpec.DiskFileBackingSpec()
backing_spec.datastore = fcd.datastore_obj
**backing_spec.path** = f"[fcd.datastore_obj.name] fcd/{fcd.disk_name}.vmdk"
#backing_spec.path = f"[fcd.datastore_obj.name] fcd/"
#backing_spec.path = f"fcd/{fcd.disk_name}.vmdk"
#backing_spec.path = f"{fcd.disk_name}.vmdk"
#backing_spec.path = f"fcd/"
vslm_create_spec = vim.vslm.CreateSpec()
vslm_create_spec.backingSpec = backing_spec
vslm_create_spec.capacityInMB = fcd.size_mb
vslm_create_spec.name = fcd.disk_name
task = fcd.content.vStorageObjectManager.CreateDisk_Task(vslm_create_spec)
TaskInfo output is as following:
(vim.TaskInfo) {
dynamicType = ,
dynamicProperty = (vmodl.DynamicProperty) [],
key = 'task-11204',
task = 'vim.Task:task-11204',
description = ,
name = vim.vslm.vcenter.VStorageObjectManager.CreateDisk,
descriptionId = 'vslm.vcenter.VStorageObjectManager.createDisk',
entity = 'vim.HostSystem:host-26',
locked = (vim.ManagedEntity) [],
state = 'error',
cancelled = false,
cancelable = false,
error = (vmodl.fault.InvalidArgument) {
dynamicType = ,
dynamicProperty = (vmodl.DynamicProperty) [],
msg = 'A specified parameter was not correct: ',
faultCause = ,
faultMessage = (vmodl.LocalizableMessage) [],
invalidProperty = ''
},
result = ,
progress = ,
reason = (vim.TaskReasonUser) {
...
changeTag = ,
parentTaskKey = ,
rootTaskKey = ,
activationId =
}
Reproduction steps
- Create DiskFileBackingSpec with path parameter provided
- Execute CreateDisk_Task with the above spec
backing_spec = vim.vslm.CreateSpec.DiskFileBackingSpec()
backing_spec.datastore = fcd.datastore_obj
backing_spec.path = f"[fcd.datastore_obj.name] fcd/{fcd.disk_name}.vmdk"
vslm_create_spec = vim.vslm.CreateSpec()
vslm_create_spec.backingSpec = backing_spec
vslm_create_spec.capacityInMB = fcd.size_mb
vslm_create_spec.name = fcd.disk_name
task = fcd.content.vStorageObjectManager.CreateDisk_Task(vslm_create_spec)`
- Check task.info.state
Expected behavior
First class disk is created with the provided path.
Additional context
- vSphere version: 7.0.3
- pyvmomi release: 7.0.3