Gilad Chaplik has uploaded a new change for review.

Change subject: engine: ManipulateAffinityGroup action group
......................................................................

engine: ManipulateAffinityGroup action group

added action group for all affinity groups CRUD commands
applied on cluster level.

For more information please refer
to: http://www.ovirt.org/Features/VM-Affinity

Change-Id: Ia460f65ded22197e3dc9ca594c66e76e04ce15fc
Bug-Url: https://bugzilla.redhat.com/1036638
Signed-off-by: Gilad Chaplik <gchap...@redhat.com>
---
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/PermitType.java
M 
backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/roles_ui/RoleTreeView.java
M 
frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
M 
frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
M 
frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
A packaging/dbscripts/upgrade/03_04_0310_add_affinity_group_action_group.sql
9 files changed, 28 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/41/22741/1

diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
index 8fa7bc0..bb5b3d1 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
@@ -309,10 +309,9 @@
     UpdateMomPolicy(1900, ActionGroup.MANIPUTLATE_HOST, false, 
QuotaDependency.NONE),
 
     // Affinity Groups
-    // TODO: new action group for affinity groups
-    AddAffinityGroup(1950, ActionGroup.EDIT_CLUSTER_CONFIGURATION, false, 
QuotaDependency.NONE),
-    EditAffinityGroup(1951, ActionGroup.EDIT_CLUSTER_CONFIGURATION, false, 
QuotaDependency.NONE),
-    RemoveAffinityGroup(1952, ActionGroup.EDIT_CLUSTER_CONFIGURATION, false, 
QuotaDependency.NONE);
+    AddAffinityGroup(1950, ActionGroup.MANIPULATE_AFFINITY_GROUPS, false, 
QuotaDependency.NONE),
+    EditAffinityGroup(1951, ActionGroup.MANIPULATE_AFFINITY_GROUPS, false, 
QuotaDependency.NONE),
+    RemoveAffinityGroup(1952, ActionGroup.MANIPULATE_AFFINITY_GROUPS, false, 
QuotaDependency.NONE);
 
     private int intValue;
     private ActionGroup actionGroup;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
index 2ee2a2c..ed17f60 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
@@ -119,8 +119,10 @@
     INJECT_EXTERNAL_EVENTS(1400, RoleType.ADMIN, VdcObjectType.Event, false),
 
     // Inject external tasks action group
-    INJECT_EXTERNAL_TASKS(1500, RoleType.ADMIN, VdcObjectType.ExternalTask, 
false);
+    INJECT_EXTERNAL_TASKS(1500, RoleType.ADMIN, VdcObjectType.ExternalTask, 
false),
 
+    // affinity group CRUD commands
+    MANIPULATE_AFFINITY_GROUPS(1550, RoleType.ADMIN, VdcObjectType.VdsGroups, 
true, ApplicationMode.VirtOnly);
 
     private int id;
     private RoleType roleType;
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/PermitType.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/PermitType.java
index d40c506..1ce1b09 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/PermitType.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/PermitType.java
@@ -107,7 +107,9 @@
     // Login action group
     LOGIN,
     INJECT_EXTERNAL_EVENTS,
-    INJECT_EXTERNAL_TASKS;
+    INJECT_EXTERNAL_TASKS,
+    // affinity groups CRUD commands
+    MANIPULATE_AFFINITY_GROUPS;
 
     public String value() {
         return name().toLowerCase();
diff --git 
a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java
 
b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java
index 7900e63..9469ee7 100644
--- 
a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java
+++ 
b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java
@@ -180,6 +180,8 @@
             return PermitType.INJECT_EXTERNAL_TASKS;
         case ACCESS_IMAGE_STORAGE:
             return PermitType.ACCESS_IMAGE_STORAGE;
+        case MANIPULATE_AFFINITY_GROUPS:
+            return PermitType.MANIPULATE_AFFINITY_GROUPS;
         default:
             return null;
         }
@@ -324,6 +326,8 @@
             return ActionGroup.INJECT_EXTERNAL_TASKS;
         case ACCESS_IMAGE_STORAGE:
             return ActionGroup.ACCESS_IMAGE_STORAGE;
+        case MANIPULATE_AFFINITY_GROUPS:
+            return ActionGroup.MANIPULATE_AFFINITY_GROUPS;
         default:
             return null;
         }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/roles_ui/RoleTreeView.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/roles_ui/RoleTreeView.java
index 9d60713..a55544d 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/roles_ui/RoleTreeView.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/roles_ui/RoleTreeView.java
@@ -223,7 +223,9 @@
                         new RoleNode(ActionGroup.EDIT_CLUSTER_CONFIGURATION,
                                 
getConstants().allowToEditClusterPropertiesRoleTreeTooltip()),
                         new RoleNode(ActionGroup.CONFIGURE_CLUSTER_NETWORK,
-                                
getConstants().allowToEditLogicalNetworksForTheClusterRoleTreeTooltip()) }));
+                                
getConstants().allowToEditLogicalNetworksForTheClusterRoleTreeTooltip()),
+                        new RoleNode(ActionGroup.MANIPULATE_AFFINITY_GROUPS,
+                                
getConstants().allowToManipulateAffinityGroupsForClusterRoleTreeTooltip()) }));
     }
 
     protected static RoleNode createStorageDomainRoleTree() {
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
index 96ae1d8..0c0e925 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
+++ 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
@@ -174,6 +174,7 @@
 
     String ActionGroup___DELETE_NETWORK_VNIC_PROFILE();
 
+    String ActionGroup___MANIPULATE_AFFINITY_GROUPS();
     // Gluster action groups
     String ActionGroup___CREATE_GLUSTER_VOLUME();
 
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
index 4a5dd7b..65baaf9 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
+++ 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
@@ -1117,6 +1117,9 @@
     @DefaultStringValue("Allow to edit Logical Networks properties within the 
Cluster (e.g. non-required or display network)")
     String allowToEditLogicalNetworksForTheClusterRoleTreeTooltip();
 
+    @DefaultStringValue("Allow to add, edit or remove Affinity Groups within 
the Cluster")
+    String allowToManipulateAffinityGroupsForClusterRoleTreeTooltip();
+
     @DefaultStringValue("Allow to add new Host to the Cluster")
     String allowToAddNewHostToTheClusterRoleTreeTooltip();
 
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
 
b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
index 71719e9..5e414d9 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
+++ 
b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
@@ -88,6 +88,7 @@
 ActionGroup___ACCESS_IMAGE_STORAGE=Access Image Storage Domains
 ActionGroup___MANIPULATE_GLUSTER_HOOK=Manipulate Gluster Hook
 ActionGroup___MANIPULATE_GLUSTER_SERVICE=Manipulate Service
+ActionGroup___MANIPULATE_AFFINITY_GROUPS=Manipulate Affinity Groups
 EventNotificationEntity___Host=General Host Events:
 EventNotificationEntity___VirtHost=Virt Host Events:
 EventNotificationEntity___Vm=VM Events:
diff --git 
a/packaging/dbscripts/upgrade/03_04_0310_add_affinity_group_action_group.sql 
b/packaging/dbscripts/upgrade/03_04_0310_add_affinity_group_action_group.sql
new file mode 100644
index 0000000..cf4f84b
--- /dev/null
+++ b/packaging/dbscripts/upgrade/03_04_0310_add_affinity_group_action_group.sql
@@ -0,0 +1,7 @@
+-- Add manipulate affinity action group (1550) to predefined roles
+-- Super user
+INSERT INTO roles_groups(role_id,action_group_id) 
VALUES('00000000-0000-0000-0000-000000000001', 1550);
+-- DC admin role
+INSERT INTO roles_groups(role_id,action_group_id) 
VALUES('DEF00002-0000-0000-0000-DEF000000002', 1550);
+-- Cluster admin role
+INSERT INTO roles_groups(role_id,action_group_id) 
VALUES('DEF00001-0000-0000-0000-DEF000000001', 1550);


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia460f65ded22197e3dc9ca594c66e76e04ce15fc
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Gilad Chaplik <gchap...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to