diff --git a/pkg/harvester/config/feature-flags.js b/pkg/harvester/config/feature-flags.js index 906e6f0f..e50033ad 100644 --- a/pkg/harvester/config/feature-flags.js +++ b/pkg/harvester/config/feature-flags.js @@ -53,7 +53,8 @@ const FEATURE_FLAGS = { 'vmMachineTypeAuto', 'lhV2VolExpansion', 'l2VlanTrunkMode', - 'kubevirtMigration' + 'kubevirtMigration', + 'hotplugNic' ] }; diff --git a/pkg/harvester/detail/kubevirt.io.virtualmachine/index.vue b/pkg/harvester/detail/kubevirt.io.virtualmachine/index.vue index de924ebf..9f97bf4f 100644 --- a/pkg/harvester/detail/kubevirt.io.virtualmachine/index.vue +++ b/pkg/harvester/detail/kubevirt.io.virtualmachine/index.vue @@ -213,6 +213,7 @@ export default { const diskRows = this.getDiskRows(neu); this['diskRows'] = diskRows; + this['networkRows'] = this.getNetworkRows(neu, { fromTemplate: false, init: false }); }, deep: true } @@ -265,6 +266,7 @@ export default { diff --git a/pkg/harvester/dialog/HarvesterAddHotplugNic.vue b/pkg/harvester/dialog/HarvesterAddHotplugNic.vue new file mode 100644 index 00000000..aede3404 --- /dev/null +++ b/pkg/harvester/dialog/HarvesterAddHotplugNic.vue @@ -0,0 +1,212 @@ + + + + + diff --git a/pkg/harvester/dialog/HarvesterAddHotplugModal.vue b/pkg/harvester/dialog/HarvesterAddHotplugVolumeModal.vue similarity index 94% rename from pkg/harvester/dialog/HarvesterAddHotplugModal.vue rename to pkg/harvester/dialog/HarvesterAddHotplugVolumeModal.vue index accf9394..14dcfb2d 100644 --- a/pkg/harvester/dialog/HarvesterAddHotplugModal.vue +++ b/pkg/harvester/dialog/HarvesterAddHotplugVolumeModal.vue @@ -11,7 +11,7 @@ import { LabeledInput } from '@components/Form/LabeledInput'; import LabeledSelect from '@shell/components/form/LabeledSelect'; export default { - name: 'HotplugModal', + name: 'HotplugVolumeModal', emits: ['close'], @@ -90,7 +90,7 @@ export default { if (res._status === 200 || res._status === 204) { this.$store.dispatch('growl/success', { title: this.t('generic.notification.title.succeed'), - message: this.t('harvester.modal.hotplug.success', { diskName: this.diskName, vm: this.actionResource.nameDisplay }) + message: this.t('harvester.modal.hotplugVolume.success', { diskName: this.diskName, vm: this.actionResource.nameDisplay }) }, { root: true }); this.close(); @@ -122,7 +122,7 @@ export default { > diff --git a/pkg/harvester/dialog/HarvesterUnplugVolume.vue b/pkg/harvester/dialog/HarvesterHotUnplug.vue similarity index 63% rename from pkg/harvester/dialog/HarvesterUnplugVolume.vue rename to pkg/harvester/dialog/HarvesterHotUnplug.vue index dd72f8b8..cf3f0ea9 100644 --- a/pkg/harvester/dialog/HarvesterUnplugVolume.vue +++ b/pkg/harvester/dialog/HarvesterHotUnplug.vue @@ -1,13 +1,12 @@ @@ -129,17 +186,28 @@ export default { v-for="(row, i) in rows" :key="i" > - - -

{{ t('harvester.virtualMachine.network.title') }}

- +
+

+ {{ t('harvester.virtualMachine.network.title') }} +

+ + +
diff --git a/pkg/harvester/edit/kubevirt.io.virtualmachine/VirtualMachineVolume/index.vue b/pkg/harvester/edit/kubevirt.io.virtualmachine/VirtualMachineVolume/index.vue index 012cacd7..13c0221c 100644 --- a/pkg/harvester/edit/kubevirt.io.virtualmachine/VirtualMachineVolume/index.vue +++ b/pkg/harvester/edit/kubevirt.io.virtualmachine/VirtualMachineVolume/index.vue @@ -303,55 +303,57 @@ export default { v-for="(volume, i) in rows" :key="volume.id" > - - - -

- - - {{ t('harvester.virtualMachine.volume.edit') }} {{ headerFor(volume.source) }} - - - - +
+

+ - - - + + {{ t('harvester.virtualMachine.volume.edit') }} {{ headerFor(volume.source) }} + - - {{ headerFor(volume.source, !!volume?.volumeBackups) }} - -

+ + + + + + + + {{ headerFor(volume.source, !!volume?.volumeBackups) }} + +

+ + +