On Fri, May 17, 2013 at 08:19:57AM -0400, David Nalley wrote: > On Fri, May 17, 2013 at 4:11 AM, Edison Su <edison...@citrix.com> wrote: > > Hi all, > > Min and I worked on object_store branch during the last one and half > > month. We made a lot of refactor on the storage code, mostly related to > > secondary storage, but also on the general storage framework. The following > > goals are made: > > > > 1. An unified storage framework. Both secondary storages(nfs/s3/swift > > etc) and primary storages will share the same plugin model, the same > > interface. Add any other new storages into cloudstack will much easier and > > straightforward. > > > > 2. The storage interface between mgt server and resource is unified, > > currently there are only 5 commands send out by mgt server: > > copycommand/createobjectcommand/deletecommand/attachcommand/dettachcommand, > > and each storage vendor can decode/encode all the > > entities(volume/snapshot/storage pool/ template etc) by its own. > > > > 3. NFS secondary storage is not explicitly depended on by other > > components. For example, when registering template into S3, template will > > be write into S3 directly, instead of storing into nfs secondary storage, > > then push to S3. If s3 is used as secondary storage, then nfs storage will > > be used as cache storage, but from other components point of view, cache > > storage is invisible. So, it's possible to make nfs storage as optional if > > s3 is used for certain hypervisors. > > The detailed FS is at > > https://cwiki.apache.org/confluence/display/CLOUDSTACK/Storage+Backup+Object+Store+Plugin+Framework > > The test we did: > > > > 1. We modified marvin to use new storage api > > > > 2. Test_volume and test_vm_life_cycle, test_template under smoke test > > folder are executed against xenserver/kvm/vmware and devcloud, some of them > > are failed, it's partly due to bugs introduced by our code, partly master > > branch itself has issue(e.g. resizevolume doesn't work). We want to fix > > these issues after merging into master. > > > > The basic follow does work: create user vm, attach/detach volume, register > > template, create template from volume/snapshot, take snapshot, create > > volume from snapshot. > > It's a huge change, around 60k LOC patch, to review the code, you can > > try: git diff master..object_store, will show all the diff. > > Comments/feedback are welcome. Thanks. > > > > > > > Given the amount of change, can we get at least a BVT run against your > branch done before merge? > > --David >
+1 to BVT please.