-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/19021/#review36891
-----------------------------------------------------------



plugins/storage/volume/cloudbyte/pom.xml
<https://reviews.apache.org/r/19021/#comment68083>

    Looks like the license section is having some trouble with end-line chars



plugins/storage/volume/cloudbyte/pom.xml
<https://reviews.apache.org/r/19021/#comment68080>

    Spaces should be used instead of other white space



plugins/storage/volume/cloudbyte/pom.xml
<https://reviews.apache.org/r/19021/#comment68081>

    Spaces should be used instead of other white space



plugins/storage/volume/cloudbyte/resources/META-INF/cloudstack/storage-volume-cloudbyte/spring-storage-volume-cloudbyte-context.xml
<https://reviews.apache.org/r/19021/#comment68084>

    White-space issue



plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/client/BaseCommand.java
<https://reviews.apache.org/r/19021/#comment68086>

    Generally vendor-specific classes are not placed in generic CloudStack 
packages.
    
    Could you give me a little background regarding what an ElastiCenter 
command is?
    
    Are these commands sent from your storage plug-in to your SAN?
    
    Please place all CloudByte classes/interfaces in CloudByte packages.
    
    Feel free to reference the SolidFire plug-in as an example.



plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/driver/ElastistorPrimaryDataStoreDriver.java
<https://reviews.apache.org/r/19021/#comment68090>

    It looks like many of these member variables are not in use.
    
    As of CloudStack 4.4, this will fail a stringent compile.
    
    Please comment out or remove (same goes for unused imports).



plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/driver/ElastistorPrimaryDataStoreDriver.java
<https://reviews.apache.org/r/19021/#comment68087>

    It's OK to override this method, but if you're just going to call the base 
implementation, it would be faster to not override this method.



plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/driver/ElastistorPrimaryDataStoreDriver.java
<https://reviews.apache.org/r/19021/#comment68088>

    It's OK to override this method, but if you're just going to call the base 
implementation, it would be faster to not override this method.



plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/driver/ElastistorPrimaryDataStoreDriver.java
<https://reviews.apache.org/r/19021/#comment68089>

    It's OK to override this method, but if you're just going to call the base 
implementation, it would be faster to not override this method.


- Mike Tutkowski


On March 11, 2014, 7:28 a.m., punith s wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/19021/
> -----------------------------------------------------------
> 
> (Updated March 11, 2014, 7:28 a.m.)
> 
> 
> Review request for cloudstack, edison su and Mike Tutkowski.
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This patch implements a basic storage plug-in for cloudbyte elastistor 
> v1.3.0, The plug-in is a new feature for cloudstack 4.4 and above.
> 
> this does not implement managed storage yet, it is been integrated only with 
> CreateStoragePool and DeleteStoragePool api's.
> 
> the desired behavior of the plugin are:
> 
> * Allow an Admin to create a primary storage at cluster level, hence creates 
> a volume in elastistor and gets attached to the host with the given 
> capacityiops and capacitybytes through CreateStoragePool api with provider 
> being elastistor.
> 
> *Allow an admin to delete a primary storage at cluster level, hence it 
> deletes the volume from host in cloudstack and deletes the respective volume 
> in elastistor.
> 
> * volume and datadisks fuctions performs the default storage fuctions, ie. 
> the driver extends the CloudStackPrimaryDataStoreDriverImpl.
> 
> * support for both nfs and icsci primary storage.
> 
> 
> Diffs
> -----
> 
>   client/pom.xml af724b1 
>   plugins/pom.xml 097f224 
>   plugins/storage/volume/cloudbyte/pom.xml PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/resources/META-INF/cloudstack/storage-volume-cloudbyte/module.properties
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/resources/META-INF/cloudstack/storage-volume-cloudbyte/spring-storage-volume-cloudbyte-context.xml
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/client/BaseCommand.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/client/ElastiCenterClient.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/client/ElastiCenterCommand.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/AddQosGroupCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/CreateTsmCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/CreateVolumeCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/DeleteTsmCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/DeleteVolumeCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/ListCapabilitiesCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/ListTsmCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/command/QueryAsyncJobResultCmd.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/driver/ElastistorPrimaryDataStoreDriver.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/lifecycle/ElastistorPrimaryDataStoreLifeCycle.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/Async.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/Capabilities.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/FileSystem.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/FileSystemWrapper.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/FilesystemQoSWrapper.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/JobId.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/QoSGroup.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/QoSGroupWrapper.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/StorageVolume.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/StorageVolumeWrapper.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/StorageVolumes.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/Tsm.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/TsmWrapper.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/Tsms.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/model/VolumeProperties.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/provider/ElastistorHostListener.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/provider/ElastistorPrimaryDataStoreProvider.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/AddQoSGroupResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/AddQosGroupCmdResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/CreateTsmCmdResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/CreateVolumeCmdResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/DeleteTsmResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/DeleteVolumeResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/ListCapabilitiesResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/ListTsmsResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/response/QueryAsyncJobResultResponse.java
>  PRE-CREATION 
>   
> plugins/storage/volume/cloudbyte/src/org/apache/cloudstack/storage/datastore/util/ElastistorUtil.java
>  PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/19021/diff/
> 
> 
> Testing
> -------
> 
> Build test using, 
> 
> mvn -P developer,systemvm clean install, which is successful.
> 
> Manual testing has been performed using cloudmonkey.
> 
> * Creating a primary storage based on cloudbyte storage plugin.
> 
> cloudmonkey# create storagepool scope=cluster 
> zoneid=dac7223c-6d09-4dcb-82fb-bdecf7c657f5 
> podid=20a613c4-eccf-4fdc-b8ca-c51df483326f 
> clusterid=9a89bc12-bf00-496b-b1d8-8e92cdf1795f name=cloudbytevolume 
> provider=elastistor url=nfs://10.10.171.137/cloudbytetest capacityiops=500 
> capacitybytes=214748364800 tags=cloudbytetest
> storagepool:
> name = cloudbytevolume
> id = 57f70aa4-659b-3b53-b8ab-2f712474f107
> capacityiops = 500
> clusterid = 9a89bc12-bf00-496b-b1d8-8e92cdf1795f
> clustername = test000
> created = 2014-03-11T12:42:38+0530
> disksizeallocated = 0
> disksizetotal = 214748364800
> hypervisor = Any
> ipaddress = 10.10.171.137
> path = /cloudbytetest
> podid = 20a613c4-eccf-4fdc-b8ca-c51df483326f
> podname = test00
> scope = CLUSTER
> state = Up
> tags = cloudbytetest
> type = NetworkFilesystem
> zoneid = dac7223c-6d09-4dcb-82fb-bdecf7c657f5
> zonename = DevCloud0
> 
> * Deleting the primary storage based on cloudbyte storage plugin.
> 
> cloudmonkey# delete storagepool id=57f70aa4-659b-3b53-b8ab-2f712474f107
> success = true
> 
> * creation of primary storage with negative capacityiops throws an exception.
> 
> * creation of primary storage with already available name and ip throws an 
> exception.
> 
> 
> Thanks,
> 
> punith s
> 
>

Reply via email to