Jiří Moskovčák has uploaded a new change for review.

Change subject: engine: don't allow to create VM with balloon on ppc64
......................................................................

engine: don't allow to create VM with balloon on ppc64

Change-Id: Iee077b08a825e65de2cddce85bc88573e89da4ab
Bug-Url: https://bugzilla.redhat.com/1127677
Signed-off-by: Jiri Moskovcak <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/ImportVmCommandTest.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
M backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
M 
frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
M 
frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
11 files changed, 101 insertions(+), 13 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/28/32228/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
index de9827d..d28eedb 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
@@ -470,6 +470,12 @@
             return false;
         }
 
+        if (isBalloonEnabled() && 
!osRepository.isBalloonEnabled(getParameters().getVmStaticData().getOsId(),
+                getVdsGroup().getcompatibility_version())) {
+            addCanDoActionMessageVariable("clusterArch", 
getVdsGroup().getArchitecture());
+            return 
failCanDoAction(VdcBllMessages.BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH);
+        }
+
         // otherwise..
         storageToDisksMap =
                 
ImagesHandler.buildStorageToDiskMap(getImagesToCheckDestinationStorageDomains(),
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
index 79b902f..3fbaf20 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
@@ -73,11 +73,13 @@
 import org.ovirt.engine.core.common.errors.VdcBLLException;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
 import org.ovirt.engine.core.common.locks.LockingGroup;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import 
org.ovirt.engine.core.common.queries.GetAllFromExportDomainQueryParameters;
 import org.ovirt.engine.core.common.queries.IdQueryParameters;
 import org.ovirt.engine.core.common.queries.VdcQueryReturnValue;
 import org.ovirt.engine.core.common.queries.VdcQueryType;
 import org.ovirt.engine.core.common.utils.Pair;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.common.validation.group.ImportClonedEntity;
 import org.ovirt.engine.core.common.validation.group.ImportEntity;
 import 
org.ovirt.engine.core.common.vdscommands.GetImageInfoVDSCommandParameters;
@@ -207,6 +209,13 @@
             }
         }
 
+        OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
+        if (getVdsGroup() != null && getVm().isBalloonEnabled() && 
!osRepository.isBalloonEnabled(getVm().getStaticData().getOsId(),
+                getVdsGroup().getcompatibility_version())) {
+            addCanDoActionMessageVariable("clusterArch", 
getVdsGroup().getArchitecture());
+            return 
failCanDoAction(VdcBllMessages.BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH);
+        }
+
         return canDoActionAfterCloneVm(domainsMap);
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java
index 1aadd5b..aa65f00 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java
@@ -552,6 +552,12 @@
             return false;
         }
 
+        if (isBalloonEnabled() && 
!osRepository.isBalloonEnabled(getParameters().getVmStaticData().getOsId(),
+                getVdsGroup().getcompatibility_version())) {
+            addCanDoActionMessageVariable("clusterArch", 
getVdsGroup().getArchitecture());
+            return 
failCanDoAction(VdcBllMessages.BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH);
+        }
+
         return true;
     }
 
@@ -727,7 +733,7 @@
         return VmDeviceUtils.isVirtioScsiControllerAttached(vmId);
     }
 
-    private boolean isBalloonEnabled() {
+    boolean isBalloonEnabled() {
         Boolean balloonEnabled = getParameters().isBalloonEnabled();
         return balloonEnabled != null ? balloonEnabled : 
VmDeviceUtils.isBalloonEnabled(getVmId());
     }
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java
index bd1ed9c..d46a86b 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java
@@ -641,4 +641,27 @@
         cmd.getParameters().getVm().setName("aa-??bb");
         assertFalse("Pattern-based name should not be supported for VM", 
cmd.validateInputs());
     }
+
+    @Test
+    public void refuseBalloonOnPPC() {
+        ArrayList<String> reasons = new ArrayList<String>();
+        final int domainSizeGB = 20;
+        final int sizeRequired = 5;
+        AddVmCommand<VmManagementParametersBase> cmd = 
setupCanAddVmTests(domainSizeGB, sizeRequired);
+        
doReturn(Collections.emptyList()).when(cmd).validateCustomProperties(any(VmStatic.class));
+        doReturn(true).when(cmd).validateSpaceRequirements();
+
+        cmd.getParameters().setBalloonEnabled(true);
+        cmd.getParameters().getVm().setClusterArch(ArchitectureType.ppc64);
+        VDSGroup cluster = new VDSGroup();
+        cluster.setArchitecture(ArchitectureType.ppc64);
+        cluster.setcompatibility_version(Version.getLast());
+        doReturn(cluster).when(cmd).getVdsGroup();
+        doReturn(true).when(cmd).buildAndCheckDestStorageDomains();
+        
when(osRepository.isBalloonEnabled(cmd.getParameters().getVm().getVmOsId(), 
cluster.getcompatibility_version())).thenReturn(false);
+        assertFalse(cmd.canDoAction());
+        assertTrue(cmd.getReturnValue()
+                .getCanDoActionMessages()
+                
.contains(VdcBllMessages.BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH.toString()));
+    }
 }
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/ImportVmCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/ImportVmCommandTest.java
index e2a9ef3..1dd1fac 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/ImportVmCommandTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/ImportVmCommandTest.java
@@ -31,6 +31,7 @@
 import org.mockito.Mock;
 import org.mockito.runners.MockitoJUnitRunner;
 import org.ovirt.engine.core.common.action.ImportVmParameters;
+import org.ovirt.engine.core.common.businessentities.ArchitectureType;
 import 
org.ovirt.engine.core.common.businessentities.BusinessEntitiesDefinitions;
 import org.ovirt.engine.core.common.businessentities.Disk;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
@@ -94,6 +95,36 @@
     }
 
     @Test
+    public void refuseBalloonOnPPC() {
+        final ImportVmCommand<ImportVmParameters> c = setupDiskSpaceTest(0);
+        c.getParameters().getVm().setBalloonEnabled(true);
+        c.getParameters().getVm().setClusterArch(ArchitectureType.ppc64);
+        VDSGroup cluster = new VDSGroup();
+        cluster.setArchitecture(ArchitectureType.ppc64);
+        cluster.setcompatibility_version(Version.getLast());
+        doReturn(cluster).when(c).getVdsGroup();
+        
when(osRepository.isBalloonEnabled(c.getParameters().getVm().getVmOsId(), 
cluster.getcompatibility_version())).thenReturn(false);
+        assertFalse(c.canDoAction());
+        assertTrue(c.getReturnValue()
+                .getCanDoActionMessages()
+                
.contains(VdcBllMessages.BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH.toString()));
+    }
+
+    @Test
+    public void acceptBalloon() {
+        final ImportVmCommand<ImportVmParameters> c = setupDiskSpaceTest(0);
+        c.getParameters().getVm().setBalloonEnabled(true);
+        c.getParameters().getVm().setClusterArch(ArchitectureType.x86_64);
+        VDSGroup cluster = new VDSGroup();
+        cluster.setArchitecture(ArchitectureType.x86_64);
+        cluster.setcompatibility_version(Version.getLast());
+        doReturn(cluster).when(c).getVdsGroup();
+        osRepository.getDisplayTypes().get(0).put(Version.getLast(), 
Arrays.asList(DisplayType.qxl));
+        
when(osRepository.isBalloonEnabled(c.getParameters().getVm().getVmOsId(), 
cluster.getcompatibility_version())).thenReturn(true);
+        assertTrue(c.canDoAction());
+    }
+
+    @Test
     public void sufficientDiskSpace() {
         final int extraDiskSpaceRequired = 0;
         final ImportVmCommand<ImportVmParameters> c = 
setupDiskSpaceTest(extraDiskSpaceRequired);
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java
index 9cb499f..0a2936d 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java
@@ -153,6 +153,8 @@
         doReturn(vm).when(command).getVm();
 
         
doReturn(false).when(command).isVirtioScsiEnabledForVm(any(Guid.class));
+        doReturn(true).when(command).isBalloonEnabled();
+        doReturn(true).when(osRepository).isBalloonEnabled(vm.getVmOsId(), 
group.getcompatibility_version());
     }
 
     @Test
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
index ba3d76f..6002bf9 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
@@ -1049,7 +1049,10 @@
 
     // Kdump detection
     KDUMP_DETECTION_NOT_ENABLED_FOR_VDS(ErrorType.BAD_PARAMETERS),
-    KDUMP_DETECTION_NOT_CONFIGURED_ON_VDS(ErrorType.BAD_PARAMETERS);
+    KDUMP_DETECTION_NOT_CONFIGURED_ON_VDS(ErrorType.BAD_PARAMETERS),
+
+    //balloon on ppc
+    BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH(ErrorType.NOT_SUPPORTED);
 
     private ErrorType messageType;
 
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
index a5cba5d..22761a4 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
@@ -87,7 +87,7 @@
 ACTION_TYPE_FAILED_OVF_DISK_NOT_SUPPORTED=Cannot ${action} ${type}. The 
operation is currently not supported for disks used as OVF store.
 ACTION_TYPE_FAILED_OVF_DISK_NOT_IN_APPLICABLE_STATUS=Cannot ${action} ${type}. 
The operation can be performed only for OVF disks that are in ${status} status.
 VDS_CANNOT_REMOVE_DEFAULT_VDS_GROUP=Cannot remove default Host Cluster.
-VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host. 
+VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host.
 VDS_CANNOT_REMOVE_VDS_GROUP_VDS_DETECTED=Cannot ${action} ${type}. Host 
Cluster contains one or more Hosts.
 VDS_CANNOT_REMOVE_VDS_STATUS_ILLEGAL=Cannot ${action} ${type}. Host is 
operational. Please switch Host to Maintenance mode first.
 VDS_NOT_EXIST=Cannot ${action} ${type}. Internal Error: Host does not exists 
in DB.
@@ -1160,8 +1160,8 @@
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FILTER_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement Filtering.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FUNCTION_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement score function.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_BALANCE_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement load balancing logic.
-ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_FIRST=Cannot 
${action} ${type}. Only a single filter can be selected as first. 
-ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_LAST=Cannot ${action} 
${type}. Only a single filter can be selected as last. 
+ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_FIRST=Cannot 
${action} ${type}. Only a single filter can be selected as first.
+ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_LAST=Cannot ${action} 
${type}. Only a single filter can be selected as last.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FUNCTION_FACTOR_NEGATIVE=Cannot ${action} 
${type}. Function factor cannot be negative.
 ACTION_TYPE_FAILED_CANNOT_REMOVE_POLICY_UNIT_ATTACHED_TO_CLUSTER_POLICY=Cannot 
${action} ${type}. Policy unit is attached to the following cluster policies: 
${cpNames}.
 # External Events Errors Messages
@@ -1256,3 +1256,4 @@
 KDUMP_DETECTION_NOT_ENABLED_FOR_VDS=Cannot ${action} ${type}. Kdump 
integration is not enabled for host '${VdsName}'.
 KDUMP_DETECTION_NOT_CONFIGURED_ON_VDS=Cannot ${action} ${type}. Kdump is not 
properly configured on host '${VdsName}'.
 
+BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH=Cannot ${action} ${type}. Balloon is 
not supported on '${clusterArch}' architecture.
diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
index 323ed14..8e6df66 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
@@ -3348,4 +3348,7 @@
 
     @DefaultStringValue("Cannot ${action} ${type}. Target cluster belongs to 
different Data Center.")
     String VDS_CLUSTER_ON_DIFFERENT_STORAGE_POOL();
+
+    @DefaultStringValue("Cannot ${action} ${type}. Balloon is not supported on 
'${clusterArch}' architecture.")
+    String BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH();
 }
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
index 72154d2..37b8867 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
@@ -84,7 +84,7 @@
 ACTION_TYPE_FAILED_OVF_DISK_NOT_SUPPORTED=Cannot ${action} ${type}. The 
operation is currently not supported for disks used as OVF store.
 ACTION_TYPE_FAILED_OVF_DISK_NOT_IN_APPLICABLE_STATUS=Cannot ${action} ${type}. 
The operation can be performed only for OVF disks that are in ${status} status.
 VDS_CANNOT_REMOVE_DEFAULT_VDS_GROUP=Cannot remove default Host Cluster.
-VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host. 
+VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host.
 VDS_CANNOT_REMOVE_VDS_GROUP_VDS_DETECTED=Cannot ${action} ${type}. Host 
Cluster contains one or more Hosts.
 VDS_CANNOT_REMOVE_VDS_STATUS_ILLEGAL=Cannot ${action} ${type}. Host is 
operational. Please switch Host to Maintenance mode first.
 VDS_PROTOCOL_ERROR=Internal error: Host protocol error.
@@ -497,7 +497,7 @@
 ERROR_CANNOT_DESTROY_LAST_STORAGE_DOMAIN=Cannot destroy the master Storage 
Domain from the Data Center without another active Storage Domain to take its 
place.\n\
        -Either activate another Storage Domain in the Data Center, or remove 
the Data Center.\n\
        -If you have problems with the master Data Domain, consider following 
the recovery process described in the documentation, or contact your system 
administrator.
-       
+
 ERROR_CANNOT_DESTROY_LAST_STORAGE_DOMAIN_HOST_NOT_ACTIVE=In order to complete 
the operation a new master Storage Domain needs to be elected, which requires 
at least one active Host in the Data Center.\n\
                                -Please make sure one of the Hosts is active in 
the Data Center first.
 NETWORK_VLAN_OUT_OF_RANGE=VLAN ID must be a number between 0 and 4094.
@@ -515,7 +515,7 @@
 EN_UNSUPPORTED_NOTIFICATION_EVENT=The notification event ${eventName} is 
unsupported.
 EN_EVENT_UP_SUBJECT_TEXT=Alert Notification.
 EN_EVENT_DOWN_SUBJECT_TEXT=Issue Solved Notification.
-EN_ALREADY_SUBSCRIBED=User is already subscribed to this event with the same 
Notification method. 
+EN_ALREADY_SUBSCRIBED=User is already subscribed to this event with the same 
Notification method.
 EN_NOT_SUBSCRIBED=Cannot ${action} ${type}.User is not subscribed to this 
event with the given Notification method.
 ACTION_TYPE_FAILED_STORAGE_DOMAIN_TYPE_ILLEGAL=Cannot ${action} ${type}. 
Storage Domain type not specified.
 ACTION_TYPE_FAILED_STORAGE_DOMAIN_FORMAT_ILLEGAL=Cannot ${action} ${type}. 
Storage Domain format ${storageFormat} is illegal.
@@ -1047,3 +1047,5 @@
 
 KDUMP_DETECTION_NOT_ENABLED_FOR_VDS=Cannot ${action} ${type}. Kdump 
integration is not enabled for host '${VdsName}'.
 KDUMP_DETECTION_NOT_CONFIGURED_ON_VDS=Cannot ${action} ${type}. Kdump is not 
properly configured on host '${VdsName}'.
+
+BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH=Cannot ${action} ${type}. Balloon is 
not supported on '${clusterArch}' architecture.
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
index 01f8368..e1137cf 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
+++ 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
@@ -87,7 +87,7 @@
 ACTION_TYPE_FAILED_OVF_DISK_NOT_SUPPORTED=Cannot ${action} ${type}. The 
operation is currently not supported for disks used as OVF store.
 ACTION_TYPE_FAILED_OVF_DISK_NOT_IN_APPLICABLE_STATUS=Cannot ${action} ${type}. 
The operation can be performed only for OVF disks that are in ${status} status.
 VDS_CANNOT_REMOVE_DEFAULT_VDS_GROUP=Cannot remove default Host Cluster.
-VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host. 
+VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM=Cannot ${action} ${type}. One or 
more VMs are still running on this Host.
 VDS_CANNOT_REMOVE_VDS_GROUP_VDS_DETECTED=Cannot ${action} ${type}. Host 
Cluster contains one or more Hosts.
 VDS_CANNOT_REMOVE_VDS_STATUS_ILLEGAL=Cannot ${action} ${type}. Host is 
operational. Please switch Host to Maintenance mode first.
 VDS_NOT_EXIST=Cannot ${action} ${type}. Internal Error: Host does not exists 
in DB.
@@ -528,7 +528,7 @@
 ERROR_CANNOT_DESTROY_LAST_STORAGE_DOMAIN=Cannot destroy the master Storage 
Domain from the Data Center without another active Storage Domain to take its 
place.\n\
        -Either activate another Storage Domain in the Data Center, or remove 
the Data Center.\n\
        -If you have problems with the master Data Domain, consider following 
the recovery process described in the documentation, or contact your system 
administrator.
-       
+
 ERROR_CANNOT_DESTROY_LAST_STORAGE_DOMAIN_HOST_NOT_ACTIVE=In order to complete 
the operation a new master Storage Domain needs to be elected, which requires 
at least one active Host in the Data Center.\n\
                                -Please make sure one of the Hosts is active in 
the Data Center first.
 NETWORK_VLAN_OUT_OF_RANGE=VLAN ID must be a number between 0 and 4094.
@@ -548,7 +548,7 @@
 EN_UNSUPPORTED_NOTIFICATION_EVENT=The notification event ${eventName} is 
unsupported.
 EN_EVENT_UP_SUBJECT_TEXT=Alert Notification.
 EN_EVENT_DOWN_SUBJECT_TEXT=Issue Solved Notification.
-EN_ALREADY_SUBSCRIBED=User is already subscribed to this event with the same 
Notification method. 
+EN_ALREADY_SUBSCRIBED=User is already subscribed to this event with the same 
Notification method.
 EN_NOT_SUBSCRIBED=Cannot ${action} ${type}.User is not subscribed to this 
event with the given Notification method.
 ACTION_TYPE_FAILED_STORAGE_DOMAIN_TYPE_ILLEGAL=Cannot ${action} ${type}. 
Storage Domain type not specified.
 ACTION_TYPE_FAILED_STORAGE_DOMAIN_FORMAT_ILLEGAL=Cannot ${action} ${type}. 
Storage Domain format ${storageFormat} is illegal.
@@ -1132,8 +1132,8 @@
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FILTER_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement Filtering.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FUNCTION_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement score function.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_BALANCE_NOT_IMPLEMENTED=Cannot ${action} 
${type}. Policy unit doesn't implement load balancing logic.
-ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_FIRST=Cannot 
${action} ${type}. Only a single filter can be selected as first. 
-ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_LAST=Cannot ${action} 
${type}. Only a single filter can be selected as last. 
+ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_FIRST=Cannot 
${action} ${type}. Only a single filter can be selected as first.
+ACTION_TYPE_FAILED_CLUSTER_POLICY_ONLY_ONE_FILTER_CAN_BE_LAST=Cannot ${action} 
${type}. Only a single filter can be selected as last.
 ACTION_TYPE_FAILED_CLUSTER_POLICY_FUNCTION_FACTOR_NEGATIVE=Cannot ${action} 
${type}. Function factor cannot be negative.
 ACTION_TYPE_FAILED_CANNOT_REMOVE_POLICY_UNIT_ATTACHED_TO_CLUSTER_POLICY=Cannot 
${action} ${type}. Policy unit is attached to the following cluster policies: 
${cpNames}.
 # External Events Errors Messages
@@ -1221,3 +1221,5 @@
 
 KDUMP_DETECTION_NOT_ENABLED_FOR_VDS=Cannot ${action} ${type}. Kdump 
integration is not enabled for host '${VdsName}'.
 KDUMP_DETECTION_NOT_CONFIGURED_ON_VDS=Cannot ${action} ${type}. Kdump is not 
properly configured on host '${VdsName}'.
+
+BALLOON_REQUESTED_ON_NOT_SUPPORTED_ARCH=Cannot ${action} ${type}. Balloon is 
not supported on '${clusterArch}' architecture.


-- 
To view, visit http://gerrit.ovirt.org/32228
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iee077b08a825e65de2cddce85bc88573e89da4ab
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5
Gerrit-Owner: Jiří Moskovčák <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to