You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by mc...@apache.org on 2013/10/29 04:53:40 UTC

[50/50] [abbrv] git commit: updated refs/heads/object_store_migration to 5ec2a44

Rebase with latest master.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/5ec2a44c
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/5ec2a44c
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/5ec2a44c

Branch: refs/heads/object_store_migration
Commit: 5ec2a44ce91198e9fd55161b0cb48572058f51f1
Parents: afcf09e 271a7df
Author: Min Chen <mi...@citrix.com>
Authored: Mon Oct 28 20:51:34 2013 -0700
Committer: Min Chen <mi...@citrix.com>
Committed: Mon Oct 28 20:51:34 2013 -0700

----------------------------------------------------------------------
 .../cloud/agent/dao/impl/PropertiesStorage.java |  14 +-
 .../agent/dao/impl/PropertiesStorageTest.java   |  69 +++
 api/src/com/cloud/agent/api/to/DiskTO.java      |  36 +-
 api/src/com/cloud/event/EventTypes.java         |   1 +
 api/src/com/cloud/network/RemoteAccessVpn.java  |   3 +-
 .../network/vpn/RemoteAccessVpnService.java     |   3 +-
 .../cloud/server/ResourceMetaDataService.java   |  16 +-
 api/src/com/cloud/server/ResourceTag.java       |  62 +-
 .../com/cloud/server/TaggedResourceService.java |  30 +-
 api/src/com/cloud/vm/UserVmService.java         |   5 +
 .../org/apache/cloudstack/api/APICommand.java   |   4 +
 .../org/apache/cloudstack/api/ApiConstants.java |   2 +-
 .../apache/cloudstack/api/ResourceDetail.java   |   6 +-
 .../api/command/admin/vm/ExpungeVMCmd.java      | 116 ++++
 .../user/offering/ListServiceOfferingsCmd.java  |  22 -
 .../api/command/user/tag/CreateTagsCmd.java     |   4 +-
 .../api/command/user/tag/DeleteTagsCmd.java     |   4 +-
 .../user/volume/AddResourceDetailCmd.java       |   2 +-
 .../user/volume/ListResourceDetailsCmd.java     |  11 +-
 .../user/volume/RemoveResourceDetailCmd.java    |   2 +-
 .../user/vpn/CreateRemoteAccessVpnCmd.java      |  17 +-
 .../api/response/ServiceOfferingResponse.java   |  10 -
 .../cloudstack/api/response/ZoneResponse.java   |   9 +
 .../apache/cloudstack/context/CallContext.java  |  46 +-
 .../classes/resources/messages.properties       |   4 +
 client/tomcatconf/commands.properties.in        |   1 +
 .../core/spring-core-registry-core-context.xml  |  78 ++-
 ...re-lifecycle-network-context-inheritable.xml |  38 +-
 ...ng-lifecycle-storage-context-inheritable.xml |   6 +
 .../cloud/agent/api/CreateVMSnapshotAnswer.java |  12 +-
 .../agent/api/CreateVMSnapshotCommand.java      |   4 +-
 .../cloud/agent/api/DeleteVMSnapshotAnswer.java |  12 +-
 .../agent/api/DeleteVMSnapshotCommand.java      |   3 +-
 .../src/com/cloud/agent/api/MigrateCommand.java |  11 +-
 .../agent/api/RevertToVMSnapshotAnswer.java     |  14 +-
 .../agent/api/RevertToVMSnapshotCommand.java    |   3 +-
 core/src/com/cloud/agent/api/StartAnswer.java   |  11 +
 .../cloud/agent/api/VMSnapshotBaseCommand.java  |  10 +-
 .../api/routing/RemoteAccessVpnCfgCommand.java  |  35 +-
 .../virtualnetwork/VirtualRoutingResource.java  |   2 +
 .../storage/command/AttachCommand.java          |  72 ---
 .../cloudstack/storage/to/VolumeObjectTO.java   |  12 +
 debian/cloudstack-management.install            |   3 -
 debian/control                                  |   2 +-
 .../api/storage/StorageStrategyFactory.java     |  12 +-
 .../api/storage/VMSnapshotStrategy.java         |  28 +
 .../com/cloud/vm/VirtualMachineManagerImpl.java |  67 ++-
 .../orchestration/VolumeOrchestrator.java       |  38 +-
 .../spring-engine-schema-core-daos-context.xml  |   7 +-
 .../com/cloud/capacity/dao/CapacityDaoImpl.java |   2 +-
 .../src/com/cloud/dc/DataCenterDetailVO.java    |  74 +++
 engine/schema/src/com/cloud/dc/DcDetailVO.java  |  79 ---
 .../src/com/cloud/dc/dao/DataCenterDaoImpl.java |  12 +-
 .../com/cloud/dc/dao/DataCenterDetailsDao.java  |  25 +
 .../cloud/dc/dao/DataCenterDetailsDaoImpl.java  |  49 ++
 .../src/com/cloud/dc/dao/DcDetailsDao.java      |  37 --
 .../src/com/cloud/dc/dao/DcDetailsDaoImpl.java  | 133 -----
 .../cloud/network/dao/FirewallRulesDaoImpl.java |  10 +-
 .../com/cloud/network/dao/IPAddressDaoImpl.java |   4 +-
 .../com/cloud/network/dao/NetworkDaoImpl.java   |   4 +-
 .../com/cloud/network/dao/NetworkDetailVO.java  |  38 +-
 .../cloud/network/dao/NetworkDetailsDao.java    |  16 +-
 .../network/dao/NetworkDetailsDaoImpl.java      |  71 +--
 .../cloud/network/dao/RemoteAccessVpnDao.java   |   3 +-
 .../network/dao/RemoteAccessVpnDaoImpl.java     |   9 +
 .../cloud/network/dao/RemoteAccessVpnVO.java    |  15 +-
 .../security/dao/SecurityGroupDaoImpl.java      |   6 +-
 .../network/vpc/dao/StaticRouteDaoImpl.java     |   4 +-
 .../com/cloud/network/vpc/dao/VpcDaoImpl.java   |   4 +-
 .../com/cloud/projects/dao/ProjectDaoImpl.java  |   4 +-
 .../cloud/service/ServiceOfferingDetailsVO.java |  22 +-
 .../service/dao/ServiceOfferingDaoImpl.java     |  13 +-
 .../service/dao/ServiceOfferingDetailsDao.java  |   8 +-
 .../dao/ServiceOfferingDetailsDaoImpl.java      |  72 +--
 .../com/cloud/storage/VMTemplateDetailVO.java   |  34 +-
 .../src/com/cloud/storage/VolumeDetailVO.java   |  33 +-
 .../com/cloud/storage/dao/SnapshotDaoImpl.java  |   4 +-
 .../storage/dao/StoragePoolDetailsDaoImpl.java  |  63 +-
 .../cloud/storage/dao/VMTemplateDaoImpl.java    |  33 +-
 .../cloud/storage/dao/VMTemplateDetailsDao.java |  14 +-
 .../storage/dao/VMTemplateDetailsDaoImpl.java   |  85 +--
 .../com/cloud/storage/dao/VolumeDaoImpl.java    |   4 +-
 .../com/cloud/storage/dao/VolumeDetailsDao.java |  16 +-
 .../cloud/storage/dao/VolumeDetailsDaoImpl.java |  91 +--
 .../src/com/cloud/tags/ResourceTagVO.java       |   6 +-
 .../src/com/cloud/tags/dao/ResourceTagDao.java  |   6 +-
 .../com/cloud/tags/dao/ResourceTagsDaoImpl.java |   6 +-
 engine/schema/src/com/cloud/vm/NicDetailVO.java |  34 +-
 .../schema/src/com/cloud/vm/UserVmDetailVO.java |  34 +-
 .../src/com/cloud/vm/dao/NicDetailDao.java      |  35 --
 .../src/com/cloud/vm/dao/NicDetailDaoImpl.java  | 105 ----
 .../src/com/cloud/vm/dao/NicDetailsDao.java     |  25 +
 .../src/com/cloud/vm/dao/NicDetailsDaoImpl.java |  34 ++
 .../src/com/cloud/vm/dao/UserVmDaoImpl.java     |  20 +-
 .../src/com/cloud/vm/dao/UserVmDetailsDao.java  |  18 +-
 .../com/cloud/vm/dao/UserVmDetailsDaoImpl.java  | 107 +---
 .../src/com/cloud/vm/dao/VMInstanceDaoImpl.java |   4 +-
 .../cloud/vm/snapshot/VMSnapshotDetailsVO.java  |  87 +++
 .../src/com/cloud/vm/snapshot/VMSnapshotVO.java |   2 +-
 .../vm/snapshot/dao/VMSnapshotDetailsDao.java   |  28 +
 .../snapshot/dao/VMSnapshotDetailsDaoImpl.java  |  52 ++
 .../resourcedetail/FirewallRuleDetailVO.java    |  72 +++
 .../resourcedetail/ResourceDetailsDao.java      |  42 ++
 .../resourcedetail/ResourceDetailsDaoBase.java  | 116 ++++
 .../dao/FirewallRuleDetailsDao.java             |  26 +
 .../dao/FirewallRuleDetailsDaoImpl.java         |  34 ++
 .../datastore/db/PrimaryDataStoreDaoImpl.java   |  14 +-
 .../datastore/db/PrimaryDataStoreDetailVO.java  |  34 +-
 .../db/PrimaryDataStoreDetailsDao.java          |  10 +-
 .../datastore/db/StoragePoolDetailVO.java       |  38 +-
 .../datastore/db/StoragePoolDetailsDao.java     |  10 +-
 .../motion/AncientDataMotionStrategy.java       |  26 -
 .../vm/snapshot/dao/VmSnapshotDaoTest.java      |  46 ++
 .../storage/test/ChildTestConfiguration.java    |  51 +-
 .../cloudstack/storage/test/SnapshotTest.java   |  89 +--
 .../test/resources/storageContext.xml           |   5 +
 .../core/spring-engine-storage-core-context.xml |   2 +
 engine/storage/snapshot/pom.xml                 |  32 +
 ...-engine-storage-snapshot-storage-context.xml |   7 +-
 .../storage/snapshot/SnapshotServiceImpl.java   |  44 +-
 .../snapshot/XenserverSnapshotStrategy.java     |   3 +-
 .../vmsnapshot/DefaultVMSnapshotStrategy.java   | 371 ++++++++++++
 .../storage/vmsnapshot/VMSnapshotHelper.java    |  38 ++
 .../vmsnapshot/VMSnapshotHelperImpl.java        | 148 +++++
 .../snapshot/test/resources/db.properties       |  70 +++
 .../test/src/VMSnapshotStrategyTest.java        | 256 ++++++++
 .../helper/StorageStrategyFactoryImpl.java      |  79 ++-
 .../db/PrimaryDataStoreDetailsDaoImpl.java      |  50 +-
 .../api/storage/StrategyPriorityTest.java       |  93 ++-
 .../storage/volume/VolumeServiceImpl.java       |  85 ++-
 .../com/cloud/cluster/ClusterManagerImpl.java   |   3 +-
 .../cluster/ClusterServiceServletAdapter.java   |   3 +-
 .../com/cloud/utils/db/TransactionLegacy.java   |   1 +
 .../jobs/impl/AsyncJobManagerImpl.java          |   3 +-
 .../debian/config/opt/cloud/bin/savepassword.sh |  62 --
 .../acl/StaticRoleBasedAPIAccessChecker.java    |  37 +-
 .../kvm/resource/LibvirtComputingResource.java  |  66 +--
 .../hypervisor/kvm/storage/KVMStoragePool.java  |  12 +-
 .../kvm/storage/KVMStoragePoolManager.java      | 112 +++-
 .../kvm/storage/KVMStorageProcessor.java        |   8 +-
 .../kvm/storage/LibvirtStorageAdaptor.java      |  47 ++
 .../kvm/storage/LibvirtStoragePool.java         |  11 +
 .../hypervisor/kvm/storage/StorageAdaptor.java  |  13 +
 .../kvm/storage/iScsiAdmStorageAdaptor.java     | 373 ++++++++++++
 .../kvm/storage/iScsiAdmStoragePool.java        | 167 ++++++
 .../simulator-planner/module.properties         |  18 -
 .../simulator-planner/spring-context.xml        |  34 --
 .../manager/VmwareStorageManagerImpl.java       |  87 ++-
 .../vmware/resource/VmwareResource.java         |   2 +
 .../resource/VmwareStorageProcessor.java        |  45 +-
 .../xen/discoverer/XcpServerDiscoverer.java     |   3 +
 .../xen/resource/CitrixResourceBase.java        | 164 ++++-
 .../xen/resource/XenServerStorageProcessor.java |  33 +-
 .../api/ConfigureNexusVsmForAsaCommand.java     |   3 +
 .../cloud/network/element/CiscoVnmcElement.java | 206 ++++---
 .../SolidFirePrimaryDataStoreLifeCycle.java     |  37 +-
 .../provider/SolidFireHostListener.java         | 102 ++++
 .../SolidfirePrimaryDataStoreProvider.java      |  10 +-
 scripts/vm/hypervisor/xenserver/s3xen           |  68 ++-
 scripts/vm/network/vnet/modifyvxlan.sh          |   9 +-
 .../spring-server-core-managers-context.xml     |  20 +-
 .../system/spring-server-system-context.xml     |  36 ++
 server/src/com/cloud/api/ApiDBUtils.java        |  24 +-
 server/src/com/cloud/api/ApiResponseHelper.java |  22 +-
 .../com/cloud/api/query/QueryManagerImpl.java   |  97 +--
 .../api/query/dao/DataCenterJoinDaoImpl.java    |   6 +-
 .../cloud/api/query/dao/ResourceTagJoinDao.java |   4 +-
 .../api/query/dao/ResourceTagJoinDaoImpl.java   |   4 +-
 .../query/dao/ServiceOfferingJoinDaoImpl.java   |  10 -
 .../com/cloud/api/query/vo/ProjectJoinVO.java   |   6 +-
 .../cloud/api/query/vo/ResourceTagJoinVO.java   |   6 +-
 .../cloud/api/query/vo/SecurityGroupJoinVO.java |   6 +-
 .../com/cloud/api/query/vo/TemplateJoinVO.java  |   6 +-
 .../com/cloud/api/query/vo/UserVmJoinVO.java    |   6 +-
 .../com/cloud/api/query/vo/VolumeJoinVO.java    |   6 +-
 .../configuration/ConfigurationManagerImpl.java |  36 +-
 .../hypervisor/CloudZonesStartupProcessor.java  |  13 +-
 .../cloud/hypervisor/HypervisorGuruBase.java    |   4 +-
 .../metadata/ResourceMetaDataManagerImpl.java   | 272 ++++-----
 .../ExternalFirewallDeviceManagerImpl.java      |   2 +-
 .../com/cloud/network/NetworkServiceImpl.java   |   4 +-
 .../network/element/VirtualRouterElement.java   |  15 +-
 .../element/VpcVirtualRouterElement.java        |  45 ++
 .../network/firewall/FirewallManagerImpl.java   |  55 +-
 .../lb/LoadBalancingRulesManagerImpl.java       |  14 +-
 .../VirtualNetworkApplianceManagerImpl.java     |  11 +-
 .../VpcVirtualNetworkApplianceManager.java      |  29 +
 .../VpcVirtualNetworkApplianceManagerImpl.java  | 118 +++-
 .../cloud/network/rules/RulesManagerImpl.java   |   4 +-
 .../network/vpc/NetworkACLManagerImpl.java      |  10 +-
 .../network/vpc/NetworkACLServiceImpl.java      |   4 +-
 .../com/cloud/network/vpc/VpcManagerImpl.java   |   6 +-
 .../network/vpn/RemoteAccessVpnManagerImpl.java |  89 ++-
 .../network/vpn/Site2SiteVpnManagerImpl.java    |  12 +-
 .../com/cloud/server/ManagementServerImpl.java  |  22 +-
 .../com/cloud/storage/StorageManagerImpl.java   |   2 +-
 .../com/cloud/storage/VolumeApiServiceImpl.java |  43 +-
 .../storage/listener/StoragePoolMonitor.java    |   3 +
 .../storage/snapshot/SnapshotManagerImpl.java   |  97 +--
 .../cloud/tags/TaggedResourceManagerImpl.java   |  87 ++-
 .../com/cloud/template/TemplateManagerImpl.java |  10 +-
 .../com/cloud/uuididentity/dao/IdentityDao.java |   4 +-
 .../cloud/uuididentity/dao/IdentityDaoImpl.java |   6 +-
 server/src/com/cloud/vm/UserVmManagerImpl.java  |  49 ++
 .../vm/snapshot/VMSnapshotManagerImpl.java      | 451 ++------------
 .../lb/ApplicationLoadBalancerManagerImpl.java  |   4 +-
 .../metadata/ResourceMetaDataManagerTest.java   |  41 +-
 .../SecurityGroupManagerTestConfiguration.java  |   4 +-
 .../vm/snapshot/VMSnapshotManagerTest.java      |   7 -
 .../MockVpcVirtualNetworkApplianceManager.java  |  22 +
 .../com/cloud/vpc/VpcTestConfiguration.java     |   4 +-
 .../networkoffering/ChildTestConfiguration.java |   4 +-
 setup/db/db/schema-421to430.sql                 |  25 +
 .../debian/vpn/opt/cloud/bin/vpc_vpn_l2tp.sh    | 178 ------
 .../debian/vpn/opt/cloud/bin/vpn_l2tp.sh        |  95 ++-
 .../component/maint/test_multiple_ip_ranges.py  | 557 ++++++++++-------
 test/integration/component/test_egress_rules.py | 207 -------
 .../component/test_resource_limits.py           |   2 +-
 test/integration/smoke/test_vpc_vpn.py          | 192 ++++++
 .../systemvm64template/postinstall.sh           |   1 +
 .../definitions/systemvm64template/zerodisk.sh  |   2 +-
 tools/marvin/marvin/codes.py                    |   6 +-
 tools/marvin/marvin/configGenerator.py          |   8 +-
 tools/marvin/marvin/deployDataCenter.py         |  18 +-
 tools/marvin/marvin/integration/lib/utils.py    |  35 ++
 tools/marvin/marvin/marvinPlugin.py             |  39 +-
 ui/css/cloudstack3.css                          | 593 +++++++++----------
 ui/dictionary.jsp                               |   4 +
 ui/images/header-gradient.png                   | Bin 0 -> 62651 bytes
 ui/images/logo-login-oss.png                    | Bin 4567 -> 22165 bytes
 ui/images/logo.png                              | Bin 3886 -> 21781 bytes
 ui/images/overlay-pattern.png                   | Bin 0 -> 14969 bytes
 ui/index.jsp                                    |   6 +-
 ui/scripts/instances.js                         | 115 +++-
 ui/scripts/network.js                           |   2 +-
 ui/scripts/system.js                            |   1 +
 ui/scripts/templates.js                         |  40 +-
 ui/scripts/ui/core.js                           |   2 +-
 ui/scripts/ui/widgets/cloudBrowser.js           |  52 +-
 ui/scripts/ui/widgets/detailView.js             |  43 +-
 ui/scripts/ui/widgets/listView.js               |   3 +-
 ui/scripts/ui/widgets/treeView.js               |   1 +
 utils/src/com/cloud/utils/ProcessUtil.java      |   5 +-
 utils/src/com/cloud/utils/PropertiesUtil.java   |   2 +-
 .../com/cloud/utils/crypt/DBEncryptionUtil.java |   2 +-
 .../utils/crypt/EncryptionSecretKeyChecker.java |   3 +-
 .../com/cloud/utils/PropertiesUtilsTest.java    |  13 +
 .../hypervisor/vmware/util/VmwareClient.java    |   5 +-
 .../vmware/util/VmwareContextPool.java          |   4 +-
 249 files changed, 6253 insertions(+), 4173 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/api/src/com/cloud/event/EventTypes.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/client/tomcatconf/commands.properties.in
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/XenserverSnapshotStrategy.java
----------------------------------------------------------------------
diff --cc engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/XenserverSnapshotStrategy.java
index 111e9a3,15335bf..7eec5ff
--- a/engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/XenserverSnapshotStrategy.java
+++ b/engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/XenserverSnapshotStrategy.java
@@@ -16,13 -16,17 +16,14 @@@
  // under the License.
  package org.apache.cloudstack.storage.snapshot;
  
 -import com.cloud.exception.InvalidParameterValueException;
 -import com.cloud.storage.DataStoreRole;
 -import com.cloud.storage.Snapshot;
 -import com.cloud.storage.SnapshotVO;
 -import com.cloud.storage.Volume;
 -import com.cloud.storage.dao.SnapshotDao;
 -import com.cloud.storage.snapshot.SnapshotManager;
 -import com.cloud.utils.NumbersUtil;
 -import com.cloud.utils.db.DB;
 -import com.cloud.utils.exception.CloudRuntimeException;
 -import com.cloud.utils.fsm.NoTransitionException;
++
 +import java.util.List;
 +
 +import javax.inject.Inject;
 +
 +import org.apache.log4j.Logger;
 +import org.springframework.stereotype.Component;
 +
  import org.apache.cloudstack.engine.subsystem.api.storage.DataStore;
  import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager;
  import org.apache.cloudstack.engine.subsystem.api.storage.ObjectInDataStoreStateMachine.Event;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/plugins/storage/volume/solidfire/src/org/apache/cloudstack/storage/datastore/lifecycle/SolidFirePrimaryDataStoreLifeCycle.java
----------------------------------------------------------------------
diff --cc plugins/storage/volume/solidfire/src/org/apache/cloudstack/storage/datastore/lifecycle/SolidFirePrimaryDataStoreLifeCycle.java
index a16ebad,038e89b..120a357
--- a/plugins/storage/volume/solidfire/src/org/apache/cloudstack/storage/datastore/lifecycle/SolidFirePrimaryDataStoreLifeCycle.java
+++ b/plugins/storage/volume/solidfire/src/org/apache/cloudstack/storage/datastore/lifecycle/SolidFirePrimaryDataStoreLifeCycle.java
@@@ -23,6 -25,6 +25,8 @@@ import java.util.StringTokenizer
  
  import javax.inject.Inject;
  
++import org.apache.log4j.Logger;
++
  import org.apache.cloudstack.engine.subsystem.api.storage.ClusterScope;
  import org.apache.cloudstack.engine.subsystem.api.storage.DataStore;
  import org.apache.cloudstack.engine.subsystem.api.storage.HostScope;
@@@ -33,25 -35,33 +37,32 @@@ import org.apache.cloudstack.storage.da
  import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao;
  import org.apache.cloudstack.storage.datastore.util.SolidFireUtil;
  import org.apache.cloudstack.storage.volume.datastore.PrimaryDataStoreHelper;
 -import org.apache.log4j.Logger;
  
 +import com.cloud.agent.api.StoragePoolInfo;
  import com.cloud.dc.DataCenterVO;
  import com.cloud.dc.dao.DataCenterDao;
+ import com.cloud.host.HostVO;
  import com.cloud.hypervisor.Hypervisor.HypervisorType;
 -import com.cloud.agent.api.StoragePoolInfo;
+ import com.cloud.resource.ResourceManager;
 +import com.cloud.storage.Storage.StoragePoolType;
+ import com.cloud.storage.StorageManager;
  import com.cloud.storage.StoragePoolAutomation;
  import com.cloud.utils.exception.CloudRuntimeException;
  
  public class SolidFirePrimaryDataStoreLifeCycle implements PrimaryDataStoreLifeCycle {
-     @Inject PrimaryDataStoreDao storagePoolDao;
-     @Inject PrimaryDataStoreHelper dataStoreHelper;
-     @Inject StoragePoolAutomation storagePoolAutomation;
-     @Inject StoragePoolDetailsDao storagePoolDetailsDao;
-     @Inject DataCenterDao zoneDao;
+     private static final Logger s_logger = Logger.getLogger(SolidFirePrimaryDataStoreLifeCycle.class);
+ 
+     @Inject private DataCenterDao zoneDao;
+     @Inject private PrimaryDataStoreDao storagePoolDao;
+     @Inject private PrimaryDataStoreHelper dataStoreHelper;
+     @Inject private ResourceManager _resourceMgr;
+     @Inject StorageManager _storageMgr;
+     @Inject private StoragePoolAutomation storagePoolAutomation;
+     @Inject private StoragePoolDetailsDao storagePoolDetailsDao;
 -
 +    
      private static final int DEFAULT_MANAGEMENT_PORT = 443;
      private static final int DEFAULT_STORAGE_PORT = 3260;
 -
 +    
      // invoked to add primary storage that is based on the SolidFire plug-in
      @Override
      public DataStore initialize(Map<String, Object> dsInfos) {
@@@ -300,15 -310,29 +311,29 @@@
      public boolean attachCluster(DataStore store, ClusterScope scope) {
      	return true; // should be ignored for zone-wide-only plug-ins like SolidFire's
      }
 -
 +    
      @Override
      public boolean attachZone(DataStore dataStore, ZoneScope scope, HypervisorType hypervisorType) {
 -        dataStoreHelper.attachZone(dataStore);
 -
 +    	dataStoreHelper.attachZone(dataStore);
 +    	
-         return true;
+         List<HostVO> xenServerHosts = _resourceMgr.listAllUpAndEnabledHostsInOneZoneByHypervisor(HypervisorType.XenServer, scope.getScopeId());
+         List<HostVO> kvmHosts = _resourceMgr.listAllUpAndEnabledHostsInOneZoneByHypervisor(HypervisorType.KVM, scope.getScopeId());
+         List<HostVO> hosts = new ArrayList<HostVO>();
+ 
+         hosts.addAll(xenServerHosts);
+         hosts.addAll(kvmHosts);
+ 
+         for (HostVO host : hosts) {
+             try {
+                 _storageMgr.connectHostToSharedPool(host.getId(), dataStore.getId());
+             } catch (Exception e) {
+                 s_logger.warn("Unable to establish a connection between " + host + " and " + dataStore, e);
+             }
 -        }
 +    }
  
+         return true;
+     }
 -
 +    
      @Override
      public boolean maintain(DataStore dataStore) {
          storagePoolAutomation.maintain(dataStore);

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/server/src/com/cloud/server/ManagementServerImpl.java
----------------------------------------------------------------------
diff --cc server/src/com/cloud/server/ManagementServerImpl.java
index 5273203,058a756..79b20d0
--- a/server/src/com/cloud/server/ManagementServerImpl.java
+++ b/server/src/com/cloud/server/ManagementServerImpl.java
@@@ -3878,6 -3883,14 +3886,14 @@@ public class ManagementServerImpl exten
  
      @Inject
      public void setStoragePoolAllocators(List<StoragePoolAllocator> storagePoolAllocators) {
 -        this._storagePoolAllocators = storagePoolAllocators;
 +        _storagePoolAllocators = storagePoolAllocators;
      }
+ 
+     public LockMasterListener getLockMasterListener() {
+         return _lockMasterListener;
+     }
+ 
+     public void setLockMasterListener(LockMasterListener lockMasterListener) {
+         this._lockMasterListener = lockMasterListener;
+     }
  }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/server/src/com/cloud/storage/StorageManagerImpl.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/server/src/com/cloud/storage/VolumeApiServiceImpl.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5ec2a44c/server/src/com/cloud/template/TemplateManagerImpl.java
----------------------------------------------------------------------