diff --git a/ui/src/components/view/InfoCard.vue b/ui/src/components/view/InfoCard.vue index 267a759b28f..213078f2991 100644 --- a/ui/src/components/view/InfoCard.vue +++ b/ui/src/components/view/InfoCard.vue @@ -551,12 +551,19 @@ {{ resource.serviceofferingname || resource.serviceofferingid }} -
+
{{ $t('label.diskoffering') }}
- {{ resource.diskofferingname || resource.diskofferingid }} - {{ resource.diskofferingname || resource.diskofferingid }} +
+ {{ resource.rootdiskofferingdisplaytext }} + {{ resource.rootdiskofferingdisplaytext }} +
+  |  +
+ {{ resource.datadiskofferingdisplaytext }} + {{ resource.datadiskofferingdisplaytext }} +
diff --git a/ui/src/views/compute/DeployVM.vue b/ui/src/views/compute/DeployVM.vue index 746841e65a1..5720e545b24 100644 --- a/ui/src/views/compute/DeployVM.vue +++ b/ui/src/views/compute/DeployVM.vue @@ -1078,26 +1078,55 @@ export default { return ['User'].includes(this.$store.getters.userInfo.roletype) || store.getters.project.id }, diskSize () { - let dataDiskSize - let rootDiskSize = _.get(this.instanceConfig, 'rootdisksize', 0) - const diskOfferingDiskSize = _.get(this.diskOffering, 'disksize', 0) - const customDiskSize = _.get(this.instanceConfig, 'size', 0) + const customRootDiskSize = _.get(this.instanceConfig, 'rootdisksize', null) + const customDataDiskSize = _.get(this.instanceConfig, 'size', null) + let computeOfferingDiskSize = _.get(this.serviceOffering, 'rootdisksize', null) + computeOfferingDiskSize = computeOfferingDiskSize > 0 ? computeOfferingDiskSize : null + const diskOfferingDiskSize = _.get(this.diskOffering, 'disksize', null) + const overrideDiskOfferingDiskSize = _.get(this.overrideDiskOffering, 'disksize', null) + let rootDiskSize + let dataDiskSize if (this.vm.isoid != null) { - rootDiskSize = diskOfferingDiskSize > 0 ? diskOfferingDiskSize : customDiskSize + rootDiskSize = this.diskOffering?.iscustomized ? customDataDiskSize : diskOfferingDiskSize } else { - dataDiskSize = diskOfferingDiskSize > 0 ? diskOfferingDiskSize : customDiskSize + rootDiskSize = this.overrideDiskOffering?.iscustomized ? customRootDiskSize : overrideDiskOfferingDiskSize || computeOfferingDiskSize || this.dataPreFill.minrootdisksize + dataDiskSize = this.diskOffering?.iscustomized ? customDataDiskSize : diskOfferingDiskSize } const size = [] - if (rootDiskSize > 0) { + if (rootDiskSize) { size.push(`${rootDiskSize} GB (Root)`) } - if (dataDiskSize > 0) { + if (dataDiskSize) { size.push(`${dataDiskSize} GB (Data)`) } return size.join(' | ') }, + rootDiskOffering () { + const rootDiskOffering = this.vm.isoid != null ? this.diskOffering : this.overrideDiskOffering + + const id = _.get(rootDiskOffering, 'id', null) + const displayText = _.get(rootDiskOffering, 'displaytext', null) + + return { + id: id, + displayText: `${displayText} (Root)` + } + }, + dataDiskOffering () { + if (this.vm.isoid != null) { + return null + } + + const id = _.get(this.diskOffering, 'id', null) + const displayText = _.get(this.diskOffering, 'displaytext', null) + + return { + id: id, + displayText: `${displayText} (Data)` + } + }, affinityGroupIds () { return _.map(this.affinityGroups, 'id') }, @@ -1439,18 +1468,12 @@ export default { this.vm.hostname = host.name } - if (this.serviceOffering?.rootdisksize) { - this.vm.disksizetotalgb = this.serviceOffering.rootdisksize - } else if (this.diskSize) { + if (this.diskSize) { this.vm.disksizetotalgb = this.diskSize } else { this.vm.disksizetotalgb = null } - if (this.diskSize) { - this.vm.disksizetotalgb = this.diskSize - } - if (this.networks) { this.vm.networks = this.networks this.vm.defaultnetworkid = this.defaultnetworkid @@ -1498,6 +1521,11 @@ export default { this.vm.diskofferingsize = this.diskOffering.disksize } + this.vm.rootdiskofferingid = this.rootDiskOffering?.id + this.vm.rootdiskofferingdisplaytext = this.rootDiskOffering?.displayText + this.vm.datadiskofferingid = this.dataDiskOffering?.id + this.vm.datadiskofferingdisplaytext = this.dataDiskOffering?.displayText + if (this.affinityGroups) { this.vm.affinitygroup = this.affinityGroups }