diff --git a/builder/vsphere/iso/step_create.go b/builder/vsphere/iso/step_create.go index 67a59b35e..f3366a0b5 100644 --- a/builder/vsphere/iso/step_create.go +++ b/builder/vsphere/iso/step_create.go @@ -70,8 +70,14 @@ type CreateConfig struct { func (c *CreateConfig) Prepare() []error { var errs []error - if c.DiskSize == 0 { - errs = append(errs, fmt.Errorf("'disk_size' is required")) + if len(c.Storage) > 0 { + for i, storage := range c.Storage { + if storage.DiskSize == 0 { + errs = append(errs, fmt.Errorf("storage[%d].'disk_size' is required", i)) + } + } + } else if c.DiskSize == 0 { + errs = append(errs, fmt.Errorf("'disk_size' or 'storage' is required")) } if c.GuestOSType == "" {