// AddVirtualCdrom adds a CD-ROM device in a virtual machine. func (s *VirtualMachineConfigSpec) AddVirtualCdrom(device *types.VirtualCdrom) *VirtualMachineConfigSpec { defer trace.End(trace.Begin(s.ID())) device.GetVirtualDevice().Key = s.generateNextKey() device.GetVirtualDevice().Backing = &types.VirtualCdromIsoBackingInfo{ VirtualDeviceFileBackingInfo: types.VirtualDeviceFileBackingInfo{ FileName: s.BootMediaPath(), }, } return s.AddVirtualDevice(device) }
func (l VirtualDeviceList) setDefaultCdromBacking(device *types.VirtualCdrom) { device.Backing = &types.VirtualCdromAtapiBackingInfo{ VirtualDeviceDeviceBackingInfo: types.VirtualDeviceDeviceBackingInfo{ DeviceName: fmt.Sprintf("%s-%d-%d", DeviceTypeCdrom, device.ControllerKey, device.UnitNumber), UseAutoDetect: types.NewBool(false), }, } }
// InsertIso changes the cdrom device backing to use the given iso file. func (l VirtualDeviceList) InsertIso(device *types.VirtualCdrom, iso string) *types.VirtualCdrom { device.Backing = &types.VirtualCdromIsoBackingInfo{ VirtualDeviceFileBackingInfo: types.VirtualDeviceFileBackingInfo{ FileName: iso, }, } return device }