This is an automated email from the ASF dual-hosted git repository.

joao pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 7d95952bc1a Enable Backup and Recovery for Shared Filesystems (#9676)
7d95952bc1a is described below

commit 7d95952bc1a997dbc1ab0422fec06ab46e499137
Author: Abhisar Sinha <[email protected]>
AuthorDate: Wed Sep 18 18:54:21 2024 +0530

    Enable Backup and Recovery for Shared Filesystems (#9676)
---
 .../cloudstack/backup/BackupManagerImpl.java       | 28 ----------------------
 ui/src/config/section/compute.js                   |  8 +++----
 2 files changed, 4 insertions(+), 32 deletions(-)

diff --git 
a/server/src/main/java/org/apache/cloudstack/backup/BackupManagerImpl.java 
b/server/src/main/java/org/apache/cloudstack/backup/BackupManagerImpl.java
index 4f99a22c9fc..6e13ba135df 100644
--- a/server/src/main/java/org/apache/cloudstack/backup/BackupManagerImpl.java
+++ b/server/src/main/java/org/apache/cloudstack/backup/BackupManagerImpl.java
@@ -31,8 +31,6 @@ import java.util.stream.Collectors;
 import com.amazonaws.util.CollectionUtils;
 import com.cloud.storage.VolumeApiService;
 import com.cloud.utils.fsm.NoTransitionException;
-import com.cloud.vm.UserVmManager;
-import com.cloud.vm.UserVmVO;
 import com.cloud.vm.VirtualMachineManager;
 import javax.inject.Inject;
 import javax.naming.ConfigurationException;
@@ -296,13 +294,6 @@ public class BackupManagerImpl extends ManagerBase 
implements BackupManager {
             throw new CloudRuntimeException("VM is not in running or stopped 
state");
         }
 
-        if (vm.getType().equals(VirtualMachine.Type.User)) {
-            UserVmVO userVm = userVmDao.findById(vmId);
-            if (userVm != null && 
UserVmManager.SHAREDFSVM.equals(userVm.getUserVmType())) {
-                throw new InvalidParameterValueException("Operation not 
supported on Shared FileSystem Instance");
-            }
-        }
-
         validateForZone(vm.getDataCenterId());
 
         accountManager.checkAccess(CallContext.current().getCallingAccount(), 
null, true, vm);
@@ -431,12 +422,6 @@ public class BackupManagerImpl extends ManagerBase 
implements BackupManager {
         }
 
         final VMInstanceVO vm = findVmById(vmId);
-        if (vm.getType().equals(VirtualMachine.Type.User)) {
-            UserVmVO userVm = userVmDao.findById(vmId);
-            if (userVm != null && 
UserVmManager.SHAREDFSVM.equals(userVm.getUserVmType())) {
-                throw new InvalidParameterValueException("Operation not 
supported on Shared FileSystem Instance");
-            }
-        }
         validateForZone(vm.getDataCenterId());
         accountManager.checkAccess(CallContext.current().getCallingAccount(), 
null, true, vm);
 
@@ -504,13 +489,6 @@ public class BackupManagerImpl extends ManagerBase 
implements BackupManager {
         validateForZone(vm.getDataCenterId());
         accountManager.checkAccess(CallContext.current().getCallingAccount(), 
null, true, vm);
 
-        if (vm.getType().equals(VirtualMachine.Type.User)) {
-            UserVmVO userVm = userVmDao.findById(vmId);
-            if (userVm != null && 
UserVmManager.SHAREDFSVM.equals(userVm.getUserVmType())) {
-                throw new InvalidParameterValueException("Operation not 
supported on Shared FileSystem Instance");
-            }
-        }
-
         if (vm.getBackupOfferingId() == null) {
             throw new CloudRuntimeException("VM has not backup offering 
configured, cannot create backup before assigning it to a backup offering");
         }
@@ -784,12 +762,6 @@ public class BackupManagerImpl extends ManagerBase 
implements BackupManager {
         validateForZone(backup.getZoneId());
 
         final VMInstanceVO vm = findVmById(vmId);
-        if (vm.getType().equals(VirtualMachine.Type.User)) {
-            UserVmVO userVm = userVmDao.findById(vmId);
-            if (userVm != null && 
UserVmManager.SHAREDFSVM.equals(userVm.getUserVmType())) {
-                throw new InvalidParameterValueException("Operation not 
supported on Shared FileSystem Instance");
-            }
-        }
         accountManager.checkAccess(CallContext.current().getCallingAccount(), 
null, true, vm);
 
         if (vm.getBackupOfferingId() != null && 
!BackupEnableAttachDetachVolumes.value()) {
diff --git a/ui/src/config/section/compute.js b/ui/src/config/section/compute.js
index c6d16d6ea78..5a82c1ce48a 100644
--- a/ui/src/config/section/compute.js
+++ b/ui/src/config/section/compute.js
@@ -222,7 +222,7 @@ export default {
           docHelp: 'adminguide/virtual_machines.html#backup-offerings',
           dataView: true,
           args: ['virtualmachineid', 'backupofferingid'],
-          show: (record) => { return !record.backupofferingid && record.vmtype 
!== 'sharedfsvm' },
+          show: (record) => { return !record.backupofferingid },
           mapping: {
             virtualmachineid: {
               value: (record, params) => { return record.id }
@@ -237,7 +237,7 @@ export default {
           docHelp: 'adminguide/virtual_machines.html#creating-vm-backups',
           dataView: true,
           args: ['virtualmachineid'],
-          show: (record) => { return record.backupofferingid && record.vmtype 
!== 'sharedfsvm' },
+          show: (record) => { return record.backupofferingid },
           mapping: {
             virtualmachineid: {
               value: (record, params) => { return record.id }
@@ -251,7 +251,7 @@ export default {
           docHelp: 'adminguide/virtual_machines.html#creating-vm-backups',
           dataView: true,
           popup: true,
-          show: (record) => { return record.backupofferingid && record.vmtype 
!== 'sharedfsvm' },
+          show: (record) => { return record.backupofferingid },
           component: shallowRef(defineAsyncComponent(() => 
import('@/views/compute/BackupScheduleWizard.vue'))),
           mapping: {
             virtualmachineid: {
@@ -270,7 +270,7 @@ export default {
           docHelp: 'adminguide/virtual_machines.html#restoring-vm-backups',
           dataView: true,
           args: ['virtualmachineid', 'forced'],
-          show: (record) => { return record.backupofferingid && record.vmtype 
!== 'sharedfsvm' },
+          show: (record) => { return record.backupofferingid },
           mapping: {
             virtualmachineid: {
               value: (record, params) => { return record.id }

Reply via email to