configurator: fix single vm scenario load issue

fix single vm scenario load issue

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
This commit is contained in:
Weiyi Feng 2022-04-01 09:59:44 +08:00 committed by acrnsi-robot
parent 578a482626
commit 3f1057b747

View File

@ -268,22 +268,34 @@ export class ProgramLayer extends EventBase {
let scenarioConfig = await this.xmlLayer.loadScenario(scenarioXMLPath)
this.initScenario()
this.scenarioData.hv = scenarioConfig.hv;
scenarioConfig.vm.map((vmConfig, index) => {
let vmType = vmConfig.load_order
if (!this.scenarioData.vm.hasOwnProperty(vmType)) {
try {
ThrowError('VM @id=' + index + ' VMType Does Not Exist')
} catch (e) {
if (scenarioConfig.hasOwnProperty('vm')) {
if (!_.isArray(scenarioConfig.vm)) {
if (_.isObject(scenarioConfig.vm)) {
scenarioConfig.vm = [scenarioConfig.vm]
} else {
console.log(scenarioConfig.vm);
debugger;
this.onScenarioDataUpdateEvent()
return
}
} else {
//fix pci_devs is object issue
if (vmConfig.hasOwnProperty("pci_devs") && vmConfig.pci_devs.hasOwnProperty("pci_dev") && _.isString(vmConfig.pci_devs.pci_dev)) {
vmConfig.pci_devs.pci_dev = [vmConfig.pci_devs.pci_dev]
}
this.addVM(vmType, vmConfig)
}
})
scenarioConfig.vm.map((vmConfig, index) => {
let vmType = vmConfig.load_order
if (!this.scenarioData.vm.hasOwnProperty(vmType)) {
try {
ThrowError('VM @id=' + index + ' VMType Does Not Exist')
} catch (e) {
}
} else {
//fix pci_devs is object issue
if (vmConfig.hasOwnProperty("pci_devs") && vmConfig.pci_devs.hasOwnProperty("pci_dev") && _.isString(vmConfig.pci_devs.pci_dev)) {
vmConfig.pci_devs.pci_dev = [vmConfig.pci_devs.pci_dev]
}
this.addVM(vmType, vmConfig)
}
})
}
this.onScenarioDataUpdateEvent()
}