Shubhendu Tripathi has uploaded a new change for review.

Change subject: restapi: Activate the bricks after data migration
......................................................................

restapi: Activate the bricks after data migration

Activates the set of bricks of data migration is over on them. If user
decide to retain the set of bricks for further use, this action can be
invoked.

Usage:
    api/clusters/<cluster-Id>/glustervolumes/<volume-id>/bricks/activate

Input Parameters:
    <action>
        <bricks>
            <brick>
                <name><Brick1-Name></name>
            </brick>
            <brick>
                <name><Brick2-Name></name>
            </brick>
        </bricks>
    </action>

Change-Id: Iee2e7234ac2ca78b741bac12d53fc6441d8c7d80
Signed-off-by: Shubhendu Tripathi <[email protected]>
---
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java
4 files changed, 49 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/66/21166/1

diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java
index 6efa9b0..d82fba7 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java
@@ -82,6 +82,13 @@
     @Path("stopmigrate")
     public Response stopMigrate(Action action);
 
+    @POST
+    @Formatted
+    @Consumes({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
+    @Actionable
+    @Path("activate")
+    public Response activate(Action action);
+
     /**
      * Sub-resource locator method, returns individual GlusterBrickResource on 
which the remainder of the URI is
      * dispatched.
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
index bbccef7..29e29ae 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
@@ -3908,6 +3908,20 @@
     headers:
       Content-Type: {value: application/xml|json, required: true}
       Correlation-Id: {value: 'any string', required: false}
+- name: 
/api/clusters/{cluster:id}/glustervolumes/{glustervolume:id}/bricks/stopmigrate|rel=activate
+  description: activates the bricks post migration of data for reuse
+  request:
+    body:
+      parameterType: Bricks
+      signatures:
+      - mandatoryArguments:
+          bricks--COLLECTION: {brick.name: 'xs:string'}
+        optionalArguments: {}
+        description: activates the bricks post migration of data for reuse
+    urlparams: {}
+    headers:
+      Content-Type: {value: application/xml|json, required: true}
+      Correlation-Id: {value: 'any string', required: false}
 - name: 
/api/clusters/{cluster:id}/glustervolumes/{glustervolume:id}/bricks/{brick:id}/replace|rel=replace
   description: replace the specified brick with a new brick directory in the 
gluster volume attached to the cluster
   request:
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java
index 5e926d6..833b4a3 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java
@@ -316,6 +316,11 @@
     }
 
     @Override
+    public Response activate(Action action) {
+        return stopMigrate(action);
+    }
+
+    @Override
     public ActionResource getActionSubresource(String action, String id) {
         return inject(new BackendActionResource(action, id));
     }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java
index 8d34616..c894d2a 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java
@@ -238,6 +238,29 @@
         collection.stopMigrate(action);
     }
 
+    @Test
+    public void testActivate() throws Exception {
+        GlusterBrick brick = new GlusterBrick();
+        GlusterVolume volume = new GlusterVolume();
+        brick.setName(serverName + ":" + brickDir);
+        volume.setId(volumeId.toString());
+        brick.setGlusterVolume(volume);
+
+        GlusterBricks bricks = control.createMock(GlusterBricks.class);
+        
expect(bricks.getGlusterBricks()).andReturn(Collections.singletonList(brick)).anyTimes();
+
+        
setUriInfo(setUpActionExpectations(VdcActionType.StopRemoveGlusterVolumeBricks,
+                GlusterVolumeRemoveBricksParameters.class,
+                new String[] {},
+                new Object[] {},
+                true,
+                true));
+
+        Action action = new Action();
+        action.setBricks(bricks);
+        collection.stopMigrate(action);
+    }
+
     /**
      * Overriding this as the bricks collection doesn't support search queries
      */


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iee2e7234ac2ca78b741bac12d53fc6441d8c7d80
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Shubhendu Tripathi <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to