feat: enable snapshot and clone for LHv2 (#379)

Now that Longhorn supports volume clone with the V2 data engine, we
can enable volume snapshot and clone.

Related issue: https://github.com/harvester/harvester/issues/6710

Signed-off-by: Tim Serong <tserong@suse.com>
This commit is contained in:
Tim Serong
2025-11-06 16:18:37 +11:00
committed by GitHub
parent db58024351
commit a1cf41bda9
2 changed files with 8 additions and 23 deletions
@@ -87,17 +87,11 @@ const IgnoreMessages = ['pod has unbound immediate PersistentVolumeClaims'];
export default class VirtVm extends HarvesterResource {
get availableActions() {
let out = super._availableActions;
const out = super._availableActions;
const clone = out.find((action) => action.action === 'goToClone');
// VM attached with Longhorn V2 volume doesn't support clone feature
if (this.longhornV2Volumes.length > 0) {
out = out.filter((action) => action.action !== 'goToClone');
} else {
const clone = out.find((action) => action.action === 'goToClone');
if (clone) {
clone.action = 'goToCloneVM';
}
if (clone) {
clone.action = 'goToCloneVM';
}
return [
@@ -159,7 +153,7 @@ export default class VirtVm extends HarvesterResource {
},
{
action: 'takeVMSnapshot',
enabled: (!!this.actions?.snapshot || !!this.action?.backup) && !this.longhornV2Volumes.length,
enabled: (!!this.actions?.snapshot || !!this.action?.backup),
icon: 'icon icon-snapshot',
label: this.t('harvester.action.vmSnapshot')
},