Merge branch 'master' into disk-cache
Conflicts:
api/src/com/cloud/offering/DiskOffering.java
engine/schema/src/com/cloud/storage/DiskOfferingVO.java
setup/db/db/schema-420to430.sql
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/72f2f127
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/72f2f127
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/72f2f127
Branch: refs/heads/disk-cache
Commit: 72f2f1273a8c0a93114924f383055577f4c58191
Parents: 99d67cb 7aea599
Author: Wido den Hollander <[email protected]>
Authored: Tue Sep 3 11:05:39 2013 +0200
Committer: Wido den Hollander <[email protected]>
Committed: Tue Sep 3 11:05:39 2013 +0200
----------------------------------------------------------------------
.gitignore | 3 +-
LICENSE | 13 +-
.../tomcatconf/commands-simulator.properties.in | 2 +-
api/src/com/cloud/agent/api/Command.java | 4 +
.../configuration/ConfigurationService.java | 42 +-
api/src/com/cloud/deploy/DeploymentPlanner.java | 7 +
.../exception/OperationTimedoutException.java | 62 +
api/src/com/cloud/hypervisor/Hypervisor.java | 22 +
api/src/com/cloud/network/Network.java | 19 +-
api/src/com/cloud/network/NetworkProfile.java | 119 +-
api/src/com/cloud/network/Networks.java | 179 +-
api/src/com/cloud/network/vpc/VpcGateway.java | 2 +-
api/src/com/cloud/offering/DiskOffering.java | 8 +
api/src/com/cloud/offering/ServiceOffering.java | 9 +-
api/src/com/cloud/storage/VolumeApiService.java | 1 +
.../com/cloud/template/TemplateApiService.java | 3 -
.../cloud/template/VirtualMachineTemplate.java | 6 +
.../org/apache/cloudstack/api/ApiConstants.java | 11 -
.../apache/cloudstack/api/LdapValidator.java | 21 +
.../cloudstack/api/ResponseGenerator.java | 3 -
.../command/admin/cluster/AddClusterCmd.java | 18 +-
.../api/command/admin/ldap/LDAPConfigCmd.java | 206 --
.../api/command/admin/ldap/LDAPRemoveCmd.java | 71 -
.../admin/region/ListPortableIpRangesCmd.java | 2 -
.../admin/storage/UpdateStoragePoolCmd.java | 15 +
.../admin/systemvm/ScaleSystemVMCmd.java | 22 +-
.../admin/systemvm/UpgradeSystemVMCmd.java | 8 +-
.../api/command/admin/vm/AssignVMCmd.java | 2 +-
.../user/address/AssociateIPAddrCmd.java | 16 +-
.../user/config/ListCapabilitiesCmd.java | 4 +-
.../firewall/UpdatePortForwardingRuleCmd.java | 19 +
.../loadbalancer/CreateLoadBalancerRuleCmd.java | 14 +-
.../loadbalancer/UpdateLoadBalancerRuleCmd.java | 15 +
.../command/user/network/CreateNetworkCmd.java | 17 +-
.../command/user/network/UpdateNetworkCmd.java | 10 +
.../AuthorizeSecurityGroupIngressCmd.java | 7 -
.../RevokeSecurityGroupEgressCmd.java | 10 +-
.../RevokeSecurityGroupIngressCmd.java | 10 +-
.../api/command/user/vm/DeployVMCmd.java | 20 +-
.../api/command/user/vm/ListVMsCmd.java | 6 +-
.../api/command/user/vm/UpgradeVMCmd.java | 8 +-
.../command/user/volume/MigrateVolumeCmd.java | 1 +
.../api/command/user/vpc/DeleteVPCCmd.java | 9 +
.../api/command/user/vpc/RestartVPCCmd.java | 10 +
.../api/command/user/vpc/UpdateVPCCmd.java | 10 +
.../api/response/CapabilitiesResponse.java | 10 +-
.../api/response/CreateCmdResponse.java | 5 +
.../api/response/LDAPConfigResponse.java | 105 -
.../api/response/LDAPRemoveResponse.java | 26 -
.../api/response/NetworkResponse.java | 9 +-
.../cloudstack/api/response/RegionResponse.java | 15 +-
.../api/response/SecurityGroupRuleResponse.java | 4 +-
.../cloudstack/api/response/UserVmResponse.java | 919 +++--
.../apache/cloudstack/config/Configuration.java | 84 +
.../org/apache/cloudstack/region/Region.java | 4 +-
api/test/com/cloud/network/NetworksTest.java | 21 +-
.../api/command/test/AddClusterCmdTest.java | 15 +-
.../api/command/test/AddHostCmdTest.java | 29 +-
awsapi/pom.xml | 10 +
.../classes/resources/messages.properties | 11 +
.../classes/resources/messages_ja.properties | 490 +--
.../classes/resources/messages_zh_CN.properties | 514 +--
client/pom.xml | 16 +-
client/tomcatconf/applicationContext.xml.in | 24 +-
client/tomcatconf/commands.properties.in | 20 +-
client/tomcatconf/componentContext.xml.in | 8 +-
client/tomcatconf/nonossComponentContext.xml.in | 8 +-
.../tomcatconf/simulatorComponentContext.xml.in | 36 +-
.../GlobalLoadBalancerConfigCommand.java | 4 +
.../exception/OperationTimedoutException.java | 62 -
.../StorageSubsystemCommandHandlerBase.java | 2 +-
.../cloud/storage/template/IsoProcessor.java | 5 +
.../com/cloud/storage/template/Processor.java | 5 +
.../cloud/storage/template/QCOW2Processor.java | 23 +
.../storage/template/RawImageProcessor.java | 5 +
.../storage/template/TemplateLocation.java | 4 +-
.../cloud/storage/template/VhdProcessor.java | 28 +
.../cloud/storage/template/VmdkProcessor.java | 11 +
.../cloudstack/storage/command/CopyCommand.java | 8 +
.../cloudstack/storage/to/SnapshotObjectTO.java | 4 +
.../cloudstack/storage/to/TemplateObjectTO.java | 9 +
.../cloudstack/storage/to/VolumeObjectTO.java | 4 +-
docs/en-US/Book_Info_Release_Notes_4-0.xml | 38 -
docs/en-US/Book_Info_Release_Notes_4.xml | 38 +
docs/en-US/Developers_Guide.xml | 2 +
docs/en-US/LDAP-for-user-authentication.xml | 31 +-
docs/en-US/Release_Notes.xml | 2200 +++++++++++-
docs/en-US/about-primary-storage.xml | 5 +-
docs/en-US/about-regions.xml | 5 +-
docs/en-US/about-secondary-storage.xml | 22 +-
docs/en-US/about-zones.xml | 22 +-
docs/en-US/accessing-system-vms.xml | 66 +
docs/en-US/accounts-users-domains.xml | 88 +-
docs/en-US/add-gateway-vpc.xml | 74 +-
docs/en-US/add-ip-range.xml | 173 +-
docs/en-US/add-load-balancer-rule.xml | 20 +-
docs/en-US/add-loadbalancer-rule-vpc.xml | 47 +-
docs/en-US/add-remove-nic-ui.xml | 6 +-
docs/en-US/add-tier.xml | 3 +-
docs/en-US/added-API-commands-4.2.xml | 342 +-
docs/en-US/admin-alerts.xml | 95 +-
docs/en-US/attaching-volume.xml | 2 +-
docs/en-US/basic-zone-configuration.xml | 2 +-
docs/en-US/best-practices-for-vms.xml | 30 +-
docs/en-US/best-practices-primary-storage.xml | 6 +-
docs/en-US/build-nonoss.xml | 4 +-
docs/en-US/build-rpm.xml | 11 +-
...change-network-offering-on-guest-network.xml | 75 +-
docs/en-US/changed-API-commands-4.2.xml | 27 +-
docs/en-US/changing-service-offering-for-vm.xml | 194 +-
docs/en-US/configure-acl.xml | 14 +-
docs/en-US/create-linux-template.xml | 41 +
docs/en-US/creating-compute-offerings.xml | 4 +
docs/en-US/creating-disk-offerings.xml | 10 +-
docs/en-US/creating-shared-network.xml | 2 +-
docs/en-US/creating-vms.xml | 35 +-
docs/en-US/detach-move-volumes.xml | 5 +-
docs/en-US/egress-firewall-rule.xml | 70 +-
.../example-activedirectory-configuration.xml | 4 +-
docs/en-US/example-openldap-configuration.xml | 4 +-
docs/en-US/getting-release.xml | 2 +-
docs/en-US/global-config.xml | 189 +-
docs/en-US/guest-traffic.xml | 24 +-
docs/en-US/health-checks-for-lb-rules.xml | 51 +
docs/en-US/host-allocation.xml | 105 +-
docs/en-US/hypervisor-host-install-agent.xml | 45 +
docs/en-US/hypervisor-host-install-libvirt.xml | 5 +
docs/en-US/images/add-cluster.png | Bin 35697 -> 37800 bytes
docs/en-US/images/add-ldap-configuration-ad.png | Bin 31803 -> 70112 bytes
.../images/add-ldap-configuration-openldap.png | Bin 30176 -> 65270 bytes
docs/en-US/images/add-tier.png | Bin 14891 -> 19054 bytes
docs/en-US/images/change-affinity-button.png | Bin 0 -> 7300 bytes
docs/en-US/images/dedicate-resource-button.png | Bin 0 -> 7144 bytes
docs/en-US/images/gslb.png | Bin 60354 -> 68556 bytes
docs/en-US/images/plugin1.jpg | Bin 0 -> 32999 bytes
docs/en-US/images/plugin2.jpg | Bin 0 -> 35149 bytes
docs/en-US/images/plugin3.jpg | Bin 0 -> 41983 bytes
docs/en-US/images/plugin4.jpg | Bin 0 -> 32125 bytes
docs/en-US/images/plugin_intro.jpg | Bin 0 -> 22247 bytes
docs/en-US/images/replace-acl-icon.png | Bin 930 -> 982 bytes
docs/en-US/images/traffic-label.png | Bin 0 -> 15520 bytes
docs/en-US/images/vds-name.png | Bin 0 -> 64739 bytes
docs/en-US/images/view-systemvm-details.png | Bin 0 -> 25483 bytes
docs/en-US/ip-vlan-tenant.xml | 15 +-
docs/en-US/limit-accounts-domains.xml | 2 +-
docs/en-US/linux-installation.xml | 55 +-
docs/en-US/load-balancer-rules.xml | 1 +
docs/en-US/manual-live-migration.xml | 13 +-
...migrate-datadisk-volume-new-storage-pool.xml | 61 +-
...te-vm-rootvolume-volume-new-storage-pool.xml | 34 +-
docs/en-US/multiple-ip-nic.xml | 6 +-
docs/en-US/non-contiguous-vlan.xml | 81 +-
...ver-provisioning-service-offering-limits.xml | 140 +-
docs/en-US/password-storage-engine.xml | 30 +-
docs/en-US/prepare-linux-template.xml | 190 +
docs/en-US/primary-storage-add.xml | 99 +-
docs/en-US/pvlan.xml | 28 +-
docs/en-US/region-add.xml | 69 +-
docs/en-US/reserved-ip-addresses-non-csvms.xml | 7 +-
docs/en-US/reset-volume-on-reboot.xml | 32 +
.../runtime-behavior-of-primary-storage.xml | 5 +-
docs/en-US/secondary-storage-add.xml | 45 +-
docs/en-US/shared-networks.xml | 10 +-
docs/en-US/site-to-site-vpn.xml | 11 +-
docs/en-US/snapshot-performance-vmware.xml | 39 +
docs/en-US/stopping-and-starting-vms.xml | 2 +-
docs/en-US/storage-plugins.xml | 144 +
docs/en-US/third-party-ui-plugin.xml | 364 ++
docs/en-US/update-iso-vm.xml | 47 +
docs/en-US/user-data-and-meta-data.xml | 2 +-
docs/en-US/user-services-overview.xml | 6 +-
docs/en-US/verifying-source.xml | 2 +-
docs/en-US/virtual-machines.xml | 6 +
docs/en-US/vlan-assign-isolated-nw.xml | 8 +-
docs/en-US/vm-storage-migration.xml | 26 +-
docs/en-US/vmware-cluster-config-dvswitch.xml | 168 +-
docs/en-US/vmware-install.xml | 2 +-
docs/en-US/vnmc-cisco.xml | 207 +-
docs/en-US/whats-new.xml | 2 +-
docs/en-US/working-with-hosts.xml | 2 +-
docs/en-US/working-with-iso.xml | 1 +
docs/en-US/working-with-snapshots.xml | 3 +-
docs/en-US/working-with-system-vm.xml | 1 +
docs/en-US/working-with-templates.xml | 1 +
docs/en-US/working-with-volumes.xml | 1 +
docs/en-US/zone-add.xml | 33 +-
docs/qig/en-US/Book_Info.xml | 2 +-
docs/qig/publican.cfg | 22 +
engine/api/pom.xml | 5 -
.../src/com/cloud/network/NetworkManager.java | 230 ++
.../src/com/cloud/vm/VirtualMachineGuru.java | 62 +
.../src/com/cloud/vm/VirtualMachineManager.java | 198 +
.../service/VolumeOrchestrationService.java | 95 +
engine/compute/pom.xml | 52 -
.../cloudstack/compute/ComputeOrchestrator.java | 34 -
.../compute/ComputeOrchestratorImpl.java | 42 -
engine/orchestration/pom.xml | 5 +
.../vm/ClusteredVirtualMachineManagerImpl.java | 64 +
.../com/cloud/vm/VirtualMachineManagerImpl.java | 3323 +++++++++++++++++
.../entity/api/VirtualMachineEntityFactory.java | 41 -
.../engine/orchestration/CloudOrchestrator.java | 294 ++
.../orchestration/VolumeOrchestrator.java | 1130 ++++++
.../orchestration/CloudOrchestrator.java | 284 --
.../cloud/vm/VirtualMachineManagerImplTest.java | 477 +++
.../cloudstack/platform/planning/Concierge.java | 36 -
engine/pom.xml | 6 -
.../cloud/configuration/ConfigurationVO.java | 109 -
.../configuration/dao/ConfigurationDao.java | 69 -
.../configuration/dao/ConfigurationDaoImpl.java | 205 --
.../schema/src/com/cloud/dc/dao/ClusterDao.java | 1 +
.../src/com/cloud/dc/dao/ClusterDaoImpl.java | 20 +-
.../src/com/cloud/dc/dao/DataCenterVnetDao.java | 2 +
.../com/cloud/dc/dao/DataCenterVnetDaoImpl.java | 6 +
.../schema/src/com/cloud/dc/dao/HostPodDao.java | 7 +-
.../src/com/cloud/dc/dao/HostPodDaoImpl.java | 22 +-
.../schema/src/com/cloud/host/dao/HostDao.java | 13 +-
.../src/com/cloud/host/dao/HostDaoImpl.java | 14 +-
.../src/com/cloud/keystore/KeystoreDaoImpl.java | 10 +-
.../com/cloud/migration/DiskOffering20Dao.java | 22 -
.../cloud/migration/DiskOffering20DaoImpl.java | 27 -
.../com/cloud/migration/DiskOffering20VO.java | 113 -
.../com/cloud/migration/DiskOffering21Dao.java | 23 -
.../cloud/migration/DiskOffering21DaoImpl.java | 27 -
.../com/cloud/migration/DiskOffering21VO.java | 257 --
.../cloud/migration/ServiceOffering20Dao.java | 22 -
.../migration/ServiceOffering20DaoImpl.java | 27 -
.../cloud/migration/ServiceOffering20VO.java | 199 --
.../cloud/migration/ServiceOffering21Dao.java | 22 -
.../migration/ServiceOffering21DaoImpl.java | 27 -
.../cloud/migration/ServiceOffering21VO.java | 183 -
.../network/dao/Site2SiteCustomerGatewayVO.java | 2 +
.../security/dao/SecurityGroupRulesDaoImpl.java | 8 -
.../src/com/cloud/network/vpc/VpcGatewayVO.java | 6 +-
.../cloud/network/vpc/dao/VpcGatewayDao.java | 5 +-
.../network/vpc/dao/VpcGatewayDaoImpl.java | 8 -
.../src/com/cloud/storage/DiskOfferingVO.java | 57 +-
.../cloud/storage/VMTemplateStoragePoolVO.java | 5 +
.../src/com/cloud/storage/VMTemplateVO.java | 82 +-
.../schema/src/com/cloud/storage/VolumeVO.java | 1 +
.../com/cloud/storage/dao/VMTemplateDao.java | 2 +-
.../cloud/storage/dao/VMTemplateDaoImpl.java | 49 +-
.../src/com/cloud/storage/dao/VolumeDao.java | 10 +-
.../com/cloud/storage/dao/VolumeDaoImpl.java | 94 +-
.../com/cloud/upgrade/dao/Upgrade2214to30.java | 135 +-
.../com/cloud/upgrade/dao/Upgrade302to40.java | 89 +-
.../com/cloud/upgrade/dao/Upgrade304to305.java | 43 +-
.../com/cloud/upgrade/dao/Upgrade410to420.java | 1154 +++++-
.../src/com/cloud/usage/dao/UsageDaoImpl.java | 2 +-
engine/schema/src/com/cloud/vm/dao/NicDao.java | 2 +
.../schema/src/com/cloud/vm/dao/NicDaoImpl.java | 52 +-
.../src/com/cloud/vm/dao/VMInstanceDaoImpl.java | 28 +-
.../org/apache/cloudstack/region/RegionVO.java | 39 +-
.../storage/datastore/db/ImageStoreDao.java | 2 +
.../datastore/db/PrimaryDataStoreDao.java | 15 +-
.../datastore/db/PrimaryDataStoreDaoImpl.java | 9 +-
engine/service/pom.xml | 7 -
.../cache/manager/StorageCacheManagerImpl.java | 5 +-
.../StorageCacheReplacementAlgorithmLRU.java | 5 +-
.../motion/AncientDataMotionStrategy.java | 49 +-
.../storage/image/TemplateServiceImpl.java | 351 +-
.../storage/image/store/TemplateObject.java | 136 +-
.../storage/allocator/StorageAllocatorTest.java | 84 +-
.../storage/test/ChildTestConfiguration.java | 9 +-
.../test/DirectAgentManagerSimpleImpl.java | 15 +-
.../storage/test/EndpointSelectorTest.java | 327 ++
.../test/FakeDriverTestConfiguration.java | 67 +
.../test/FakePrimaryDataStoreDriver.java | 107 +
.../storage/test/SnapshotTestWithFakeData.java | 194 +
.../test/resource/fakeDriverTestContext.xml | 87 +
.../test/resources/storageContext.xml | 3 -
.../storage/snapshot/SnapshotObject.java | 5 +-
.../storage/snapshot/SnapshotServiceImpl.java | 12 +-
.../snapshot/XenserverSnapshotStrategy.java | 10 +-
.../cloudstack/storage/LocalHostEndpoint.java | 5 +-
.../allocator/AbstractStoragePoolAllocator.java | 10 +-
.../GarbageCollectingStoragePoolAllocator.java | 3 +-
.../allocator/LocalStoragePoolAllocator.java | 3 +-
.../allocator/ZoneWideStoragePoolAllocator.java | 34 +
.../storage/datastore/DataStoreManagerImpl.java | 15 +-
.../datastore/ObjectInDataStoreManager.java | 2 +
.../datastore/ObjectInDataStoreManagerImpl.java | 54 +
.../endpoint/DefaultEndPointSelector.java | 36 +-
.../storage/image/BaseImageStoreDriverImpl.java | 8 +-
.../storage/image/TemplateEntityImpl.java | 11 +-
.../storage/image/db/ImageStoreDaoImpl.java | 16 +-
.../image/db/SnapshotDataStoreDaoImpl.java | 2 +
.../image/db/TemplateDataStoreDaoImpl.java | 24 +-
.../cloudstack/storage/image/format/RAW.java | 32 +
.../storage/datastore/PrimaryDataStoreImpl.java | 42 +-
.../cloudstack/storage/volume/VolumeObject.java | 44 +-
.../storage/volume/VolumeServiceImpl.java | 296 +-
.../volume/test/resource/testContext.xml | 2 +-
framework/cluster/pom.xml | 14 +-
.../com/cloud/cluster/ClusterManagerImpl.java | 27 +-
.../cluster/ClusterServiceServletAdapter.java | 10 +-
.../cluster/ClusterServiceServletImpl.java | 2 +-
framework/config/pom.xml | 45 +
.../framework/config/ConfigDepot.java | 27 +
.../framework/config/ConfigDepotAdmin.java | 36 +
.../framework/config/ConfigDepotImpl.java | 106 +
.../cloudstack/framework/config/ConfigKey.java | 84 +
.../framework/config/ConfigValue.java | 78 +
.../framework/config/Configurable.java | 32 +
.../framework/config/ConfigurationVO.java | 175 +
.../framework/config/ScopedConfigValue.java | 43 +
.../framework/config/dao/ConfigurationDao.java | 70 +
.../config/dao/ConfigurationDaoImpl.java | 206 ++
.../framework/config/ConfigDepotAdminTest.java | 131 +
framework/db/pom.xml | 2 +-
.../db/src/com/cloud/utils/db/GenericDao.java | 4 +-
.../src/com/cloud/utils/db/GenericDaoBase.java | 6 +-
.../db/src/com/cloud/utils/db/SqlGenerator.java | 11 +-
framework/ipc/pom.xml | 5 +
.../src/com/cloud/agent/manager/Commands.java | 153 +
.../SampleManagementServerAppContext.xml | 3 +-
framework/jobs/pom.xml | 5 +
.../jobs/impl/AsyncJobManagerImpl.java | 20 +-
framework/pom.xml | 5 +-
packaging/centos63/cloud.spec | 37 +-
packaging/centos63/package.sh | 7 +-
.../debian/config/etc/dnsmasq.conf.tmpl | 2 +
.../debian/config/etc/init.d/cloud-early-config | 24 +-
.../config/opt/cloud/bin/passwd_server_ip | 2 +-
.../config/opt/cloud/bin/serve_password.sh | 2 +-
.../debian/config/root/createIpAlias.sh | 54 +
.../debian/config/root/deleteIpAlias.sh | 17 +-
patches/systemvm/debian/config/root/dnsmasq.sh | 17 +-
.../root/redundant_router/enable_pubip.sh.templ | 8 +-
.../affinity/HostAntiAffinityProcessor.java | 3 +-
.../admin/ratelimit/ResetApiLimitCmd.java | 2 +-
.../command/user/ratelimit/GetApiLimitCmd.java | 2 +-
.../ratelimit/ApiRateLimitServiceImpl.java | 5 +-
.../cloudstack/ratelimit/ApiRateLimitTest.java | 3 +-
.../dedicated/DedicatedResourceManagerImpl.java | 2 +-
.../dedicated/manager/DedicatedApiUnitTest.java | 2 +-
.../implicitplanner/ImplicitPlannerTest.java | 2 +-
.../baremetal/manager/BareMetalDiscoverer.java | 3 +-
.../baremetal/manager/BareMetalPlanner.java | 3 +-
.../BareMetalPingServiceImpl.java | 30 +-
.../networkservice/BareMetalResourceBase.java | 19 +-
.../networkservice/BaremetaNetworkGuru.java | 22 +-
.../BaremetalDhcpManagerImpl.java | 43 +-
.../BaremetalDhcpResourceBase.java | 13 -
.../networkservice/BaremetalDhcpResponse.java | 11 +
.../BaremetalDnsmasqResource.java | 4 +-
.../BaremetalKickStartServiceImpl.java | 39 +-
.../networkservice/BaremetalPxeManager.java | 4 +-
.../networkservice/BaremetalPxeManagerImpl.java | 11 +-
.../networkservice/BaremetalPxeResponse.java | 18 +-
.../networkservice/BaremetalPxeService.java | 4 +-
.../cloudstack/api/AddBaremetalDhcpCmd.java | 14 +-
.../cloudstack/api/AddBaremetalPxeCmd.java | 6 +-
.../cloudstack/api/ListBaremetalDhcpCmd.java | 14 +-
.../api/ListBaremetalPxePingServersCmd.java | 97 -
.../api/ListBaremetalPxeServersCmd.java | 79 +
plugins/hypervisors/kvm/agent-descriptor.xml | 2 +-
.../kvm/src/com/cloud/ha/KVMInvestigator.java | 74 +
.../kvm/resource/BridgeVifDriver.java | 23 +-
.../kvm/resource/LibvirtComputingResource.java | 186 +-
.../hypervisor/kvm/resource/OvsVifDriver.java | 7 +-
.../hypervisor/kvm/storage/KVMPhysicalDisk.java | 6 +-
.../kvm/storage/KVMStoragePoolManager.java | 5 -
.../kvm/storage/KVMStorageProcessor.java | 411 ++-
.../kvm/storage/LibvirtStorageAdaptor.java | 171 +-
.../kvm/storage/LibvirtStoragePool.java | 2 +-
.../hypervisor/kvm/storage/StorageAdaptor.java | 2 -
.../resource/LibvirtComputingResourceTest.java | 14 +-
.../kvm/storage/KVMStorageProcessorTest.java | 42 +
.../cloud/ovm/hypervisor/OvmResourceBase.java | 3 +-
.../agent/manager/SimulatorManagerImpl.java | 15 +-
.../cloud/api/commands/ConfigureSimulator.java | 84 -
.../api/commands/ConfigureSimulatorCmd.java | 84 +
.../resource/SimulatorStorageProcessor.java | 13 +-
.../server/ManagementServerSimulatorImpl.java | 31 -
.../src/com/cloud/ucs/manager/UcsManager.java | 2 +
.../com/cloud/ucs/manager/UcsManagerImpl.java | 97 +-
.../cloudstack/api/DeleteUcsManagerCmd.java | 74 +
.../cloudstack/api/ListUcsManagerCmd.java | 16 +-
plugins/hypervisors/vmware/pom.xml | 5 +
.../com/cloud/hypervisor/guru/VMwareGuru.java | 5 +-
.../hypervisor/vmware/VmwareDatacenterVO.java | 8 +-
.../vmware/VmwareServerDiscoverer.java | 66 +-
.../vmware/manager/VmwareManagerImpl.java | 17 +-
.../vmware/manager/VmwareStorageManager.java | 1 +
.../manager/VmwareStorageManagerImpl.java | 1098 +++---
.../vmware/resource/VmwareResource.java | 153 +-
.../com/cloud/network/VmwareTrafficLabel.java | 16 +-
.../network/element/CiscoNexusVSMElement.java | 36 +-
.../element/CiscoNexusVSMElementService.java | 7 +-
.../VmwareSecondaryStorageResourceHandler.java | 8 +-
.../resource/VmwareStorageProcessor.java | 202 +-
.../VmwareStorageSubsystemCommandHandler.java | 150 +
.../vmware/VmwareDatacenterApiUnitTest.java | 2 +-
.../hypervisor/xen/resource/CitrixHelper.java | 210 +-
.../xen/resource/CitrixResourceBase.java | 135 +-
.../xen/resource/XenServer56FP1Resource.java | 5 +-
.../xen/resource/XenServerStorageProcessor.java | 328 +-
.../xen/resource/CitrixResourceBaseTest.java | 4 +-
.../network/element/BigSwitchVnsElement.java | 30 +-
.../cloud/network/element/CiscoVnmcElement.java | 43 +-
.../network/element/CiscoVnmcElementTest.java | 27 +-
.../element/ElasticLoadBalancerElement.java | 3 +-
.../lb/ElasticLoadBalancerManagerImpl.java | 26 +-
.../element/F5ExternalLoadBalancerElement.java | 4 +-
.../cloud/network/resource/F5BigIpResource.java | 1 +
.../element/InternalLoadBalancerElement.java | 58 +-
.../lb/InternalLoadBalancerVMManagerImpl.java | 31 +-
.../ElementChildTestConfiguration.java | 22 +-
.../InternalLbElementTest.java | 41 +-
.../LbChildTestConfiguration.java | 18 +-
.../JuniperSRXExternalFirewallElement.java | 73 +-
.../network/resource/JuniperSrxResource.java | 1 +
plugins/network-elements/midonet/pom.xml | 2 +-
.../cloud/network/element/MidoNetElement.java | 6 +-
.../network/guru/MidoNetPublicNetworkGuru.java | 39 +-
.../cloud/network/element/NetscalerElement.java | 4 +-
.../network/resource/NetscalerResource.java | 105 +-
.../cloud/network/element/NiciraNvpElement.java | 44 +-
.../network/guru/NiciraNvpGuestNetworkGuru.java | 2 +-
.../guru/NiciraNvpGuestNetworkGuruTest.java | 2 +-
.../cloud/network/ovs/OvsTunnelManagerImpl.java | 13 +-
.../cloudstack/network/element/SspElement.java | 3 +-
.../network/element/SspElementTest.java | 3 +-
plugins/pom.xml | 10 +
.../driver/CloudStackImageStoreDriverImpl.java | 4 +-
.../driver/S3ImageStoreDriverImpl.java | 4 +-
.../CloudStackPrimaryDataStoreDriverImpl.java | 46 +-
...CloudStackPrimaryDataStoreLifeCycleImpl.java | 42 +-
.../driver/SolidfirePrimaryDataStoreDriver.java | 17 +-
.../SolidFirePrimaryDataStoreLifeCycle.java | 11 +
.../storage/datastore/util/SolidFireUtil.java | 2 +
plugins/user-authenticators/ldap/pom.xml | 119 +-
.../server/auth/LDAPUserAuthenticator.java | 173 -
.../api/command/LdapAddConfigurationCmd.java | 99 +
.../api/command/LdapCreateAccountCmd.java | 167 +
.../api/command/LdapDeleteConfigurationCmd.java | 78 +
.../api/command/LdapListConfigurationCmd.java | 110 +
.../api/command/LdapListUsersCmd.java | 123 +
.../api/command/LdapUserSearchCmd.java | 98 +
.../api/response/LdapConfigurationResponse.java | 62 +
.../api/response/LdapUserResponse.java | 99 +
.../cloudstack/ldap/LdapAuthenticator.java | 71 +
.../cloudstack/ldap/LdapConfiguration.java | 145 +
.../cloudstack/ldap/LdapConfigurationVO.java | 66 +
.../cloudstack/ldap/LdapContextFactory.java | 136 +
.../org/apache/cloudstack/ldap/LdapManager.java | 57 +
.../apache/cloudstack/ldap/LdapManagerImpl.java | 232 ++
.../org/apache/cloudstack/ldap/LdapUser.java | 77 +
.../apache/cloudstack/ldap/LdapUserManager.java | 140 +
.../org/apache/cloudstack/ldap/LdapUtils.java | 62 +
.../ldap/NoLdapUserMatchingQueryException.java | 32 +
.../ldap/NoSuchLdapUserException.java | 31 +
.../ldap/dao/LdapConfigurationDao.java | 32 +
.../ldap/dao/LdapConfigurationDaoImpl.java | 72 +
.../ldap/BasicNamingEnumerationImpl.groovy | 56 +
.../ldap/LdapAddConfigurationCmdSpec.groovy | 89 +
.../ldap/LdapAuthenticatorSpec.groovy | 99 +
.../ldap/LdapConfigurationDaoImplSpec.groovy | 29 +
.../ldap/LdapConfigurationResponseSpec.groovy | 49 +
.../ldap/LdapConfigurationSpec.groovy | 223 ++
.../ldap/LdapConfigurationVOSpec.groovy | 36 +
.../ldap/LdapContextFactorySpec.groovy | 127 +
.../ldap/LdapCreateAccountCmdSpec.groovy | 155 +
.../ldap/LdapDeleteConfigurationCmdSpec.groovy | 68 +
.../ldap/LdapListConfigurationCmdSpec.groovy | 98 +
.../cloudstack/ldap/LdapListUsersCmdSpec.groovy | 123 +
.../cloudstack/ldap/LdapManagerImplSpec.groovy | 336 ++
.../ldap/LdapSearchUserCmdSpec.groovy | 72 +
.../cloudstack/ldap/LdapUserManagerSpec.groovy | 206 ++
.../cloudstack/ldap/LdapUserResponseSpec.groovy | 67 +
.../apache/cloudstack/ldap/LdapUserSpec.groovy | 101 +
.../apache/cloudstack/ldap/LdapUtilsSpec.groovy | 68 +
.../NoLdapUserMatchingQueryExceptionSpec.groovy | 30 +
.../ldap/NoSuchLdapUserExceptionSpec.groovy | 30 +
.../ldap/test/resources/cloudstack.org.ldif | 311 ++
.../auth/SHA256SaltedUserAuthenticator.java | 39 +-
.../server/auth/test/AuthenticatorTest.java | 78 +-
pom.xml | 12 +-
.../storage/secondary/cloud-install-sys-tmplt | 2 +-
scripts/vm/hypervisor/xenserver/vmops | 31 +-
scripts/vm/hypervisor/xenserver/xcposs/vmops | 31 +-
.../hypervisor/xenserver/xcposs/vmopsSnapshot | 77 +-
server/pom.xml | 5 +
server/src/com/cloud/agent/AgentManager.java | 4 -
.../cloud/agent/manager/AgentManagerImpl.java | 78 +-
.../manager/ClusteredAgentManagerImpl.java | 71 +-
.../src/com/cloud/agent/manager/Commands.java | 153 -
.../allocator/impl/FirstFitAllocator.java | 3 +-
.../impl/UserConcentratedAllocator.java | 3 +-
.../authn/impl/BasicAgentAuthManager.java | 3 +-
.../src/com/cloud/alert/AlertManagerImpl.java | 4 +-
server/src/com/cloud/api/ApiDBUtils.java | 27 +-
server/src/com/cloud/api/ApiResponseHelper.java | 45 +-
server/src/com/cloud/api/ApiServer.java | 12 +-
server/src/com/cloud/api/ApiServlet.java | 10 +-
.../com/cloud/api/query/QueryManagerImpl.java | 39 +-
.../api/query/dao/AffinityGroupJoinDaoImpl.java | 5 +-
.../api/query/dao/DomainRouterJoinDaoImpl.java | 3 +-
.../cloud/api/query/dao/HostJoinDaoImpl.java | 3 +-
.../api/query/dao/ImageStoreJoinDaoImpl.java | 3 +-
.../cloud/api/query/dao/ProjectJoinDaoImpl.java | 3 +-
.../api/query/dao/ResourceTagJoinDaoImpl.java | 3 +-
.../api/query/dao/SecurityGroupJoinDaoImpl.java | 3 +-
.../api/query/dao/StoragePoolJoinDaoImpl.java | 4 +-
.../api/query/dao/TemplateJoinDaoImpl.java | 2 +-
.../cloud/api/query/dao/UserVmJoinDaoImpl.java | 3 +-
.../cloud/api/query/dao/VolumeJoinDaoImpl.java | 21 +-
.../com/cloud/api/query/vo/UserVmJoinVO.java | 2 +-
.../com/cloud/capacity/CapacityManagerImpl.java | 4 +-
server/src/com/cloud/configuration/Config.java | 34 +-
.../configuration/ConfigurationManager.java | 42 +-
.../configuration/ConfigurationManagerImpl.java | 341 +-
.../AgentBasedConsoleProxyManager.java | 3 +-
.../com/cloud/consoleproxy/AgentHookBase.java | 4 +-
.../ConsoleProxyBalanceAllocator.java | 3 +-
.../consoleproxy/ConsoleProxyManagerImpl.java | 65 +-
.../consoleproxy/StaticConsoleProxyManager.java | 3 +-
.../com/cloud/dc/dao/DedicatedResourceDao.java | 6 +
.../cloud/dc/dao/DedicatedResourceDaoImpl.java | 42 +-
.../deploy/DeploymentPlanningManagerImpl.java | 76 +-
.../src/com/cloud/deploy/FirstFitPlanner.java | 3 +-
.../ha/HighAvailabilityManagerExtImpl.java | 3 +-
.../cloud/ha/HighAvailabilityManagerImpl.java | 6 +-
.../hypervisor/CloudZonesStartupProcessor.java | 3 +-
.../kvm/discoverer/LibvirtServerDiscoverer.java | 3 +-
.../network/ExternalDeviceUsageManagerImpl.java | 6 +-
.../ExternalFirewallDeviceManagerImpl.java | 70 +-
.../network/ExternalIpAddressAllocator.java | 3 +-
.../ExternalLoadBalancerDeviceManagerImpl.java | 47 +-
.../ExternalNetworkDeviceManagerImpl.java | 3 +-
.../src/com/cloud/network/IpAddressManager.java | 181 +
.../com/cloud/network/IpAddressManagerImpl.java | 1919 ++++++++++
.../cloud/network/Ipv6AddressManagerImpl.java | 3 +-
.../src/com/cloud/network/NetworkManager.java | 389 --
.../com/cloud/network/NetworkManagerImpl.java | 2115 ++---------
.../src/com/cloud/network/NetworkModelImpl.java | 53 +-
.../com/cloud/network/NetworkServiceImpl.java | 90 +-
.../cloud/network/NetworkUsageManagerImpl.java | 2 +-
.../com/cloud/network/SshKeysDistriMonitor.java | 3 +-
.../cloud/network/as/AutoScaleManagerImpl.java | 25 +-
.../element/CloudZonesNetworkElement.java | 5 +-
.../network/element/VirtualRouterElement.java | 21 +-
.../element/VpcVirtualRouterElement.java | 2 -
.../network/firewall/FirewallManagerImpl.java | 60 +-
.../cloud/network/guru/ControlNetworkGuru.java | 3 +-
.../cloud/network/guru/DirectNetworkGuru.java | 20 +-
.../network/guru/DirectPodBasedNetworkGuru.java | 15 +-
.../network/guru/ExternalGuestNetworkGuru.java | 30 +-
.../cloud/network/guru/GuestNetworkGuru.java | 47 +-
.../cloud/network/guru/PrivateNetworkGuru.java | 26 +-
.../cloud/network/guru/PublicNetworkGuru.java | 15 +-
.../network/lb/LBHealthCheckManagerImpl.java | 3 +-
.../lb/LoadBalancingRulesManagerImpl.java | 61 +-
.../VirtualNetworkApplianceManagerImpl.java | 110 +-
.../VpcVirtualNetworkApplianceManagerImpl.java | 95 +-
.../cloud/network/rules/RulesManagerImpl.java | 101 +-
.../security/SecurityGroupManagerImpl.java | 52 +-
.../network/vpc/NetworkACLManagerImpl.java | 29 +-
.../network/vpc/PrivateGatewayProfile.java | 2 +-
.../com/cloud/network/vpc/VpcManagerImpl.java | 160 +-
.../network/vpn/RemoteAccessVpnManagerImpl.java | 2 +-
.../network/vpn/Site2SiteVpnManagerImpl.java | 2 +-
.../com/cloud/projects/ProjectManagerImpl.java | 2 +-
.../src/com/cloud/resource/DiscovererBase.java | 3 +-
.../src/com/cloud/resource/ResourceManager.java | 5 +-
.../com/cloud/resource/ResourceManagerImpl.java | 56 +-
.../resourcelimit/ResourceLimitManagerImpl.java | 4 +-
.../com/cloud/server/ConfigurationServer.java | 3 +-
.../cloud/server/ConfigurationServerImpl.java | 22 +-
.../com/cloud/server/ManagementServerImpl.java | 218 +-
server/src/com/cloud/server/StatsCollector.java | 4 +-
.../com/cloud/servlet/ConsoleProxyServlet.java | 2 +-
.../cloud/servlet/RegisterCompleteServlet.java | 2 +-
.../src/com/cloud/storage/StorageManager.java | 8 +-
.../com/cloud/storage/StorageManagerImpl.java | 123 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 1738 +++++++++
server/src/com/cloud/storage/VolumeManager.java | 117 -
.../com/cloud/storage/VolumeManagerImpl.java | 2833 ---------------
.../storage/download/DownloadMonitorImpl.java | 3 +-
.../secondary/SecondaryStorageManagerImpl.java | 198 +-
.../storage/snapshot/SnapshotManagerImpl.java | 33 +-
.../storage/snapshot/SnapshotSchedulerImpl.java | 2 +-
.../cloud/storage/upload/UploadMonitorImpl.java | 2 +-
.../template/HypervisorTemplateAdapter.java | 49 +-
.../com/cloud/template/TemplateAdapterBase.java | 470 +--
.../com/cloud/template/TemplateManagerImpl.java | 86 +-
.../src/com/cloud/usage/UsageServiceImpl.java | 2 +-
.../src/com/cloud/user/AccountManagerImpl.java | 16 +-
.../vm/ClusteredVirtualMachineManagerImpl.java | 64 -
server/src/com/cloud/vm/UserVmManagerImpl.java | 62 +-
server/src/com/cloud/vm/VirtualMachineGuru.java | 62 -
.../src/com/cloud/vm/VirtualMachineManager.java | 183 -
.../com/cloud/vm/VirtualMachineManagerImpl.java | 3378 ------------------
.../com/cloud/vm/VirtualMachineProfileImpl.java | 3 +-
.../vm/snapshot/VMSnapshotManagerImpl.java | 2 +-
.../vm/snapshot/VMSnapshotManagerImpl.java.orig | 913 -----
.../lb/ApplicationLoadBalancerManagerImpl.java | 27 +-
.../GlobalLoadBalancingRulesServiceImpl.java | 11 +-
.../configuration/ConfigurationManagerTest.java | 6 +-
.../network/firewall/FirewallManagerTest.java | 22 +-
.../SecurityGroupManagerTestConfiguration.java | 3 +-
.../cloud/resource/MockResourceManagerImpl.java | 16 +-
.../vm/DeploymentPlanningManagerImplTest.java | 6 +-
server/test/com/cloud/vm/UserVmManagerTest.java | 33 +-
.../cloud/vm/VirtualMachineManagerImplTest.java | 471 ---
.../vm/snapshot/VMSnapshotManagerTest.java | 4 +-
.../cloud/vpc/MockConfigurationManagerImpl.java | 151 +-
.../com/cloud/vpc/MockNetworkManagerImpl.java | 327 +-
.../com/cloud/vpc/NetworkACLManagerTest.java | 8 +
server/test/com/cloud/vpc/VpcTest.java | 2 +-
.../com/cloud/vpc/VpcTestConfiguration.java | 3 +-
.../cloud/vpc/dao/MockConfigurationDaoImpl.java | 5 +-
.../cloudstack/lb/ChildTestConfiguration.java | 14 +-
.../networkoffering/ChildTestConfiguration.java | 8 +-
.../CreateNetworkOfferingTest.java | 4 +-
.../privategw/AclOnPrivateGwTest.java | 6 +-
...GlobalLoadBalancingRulesServiceImplTest.java | 2 +-
services/console-proxy/plugin/pom.xml | 2 +-
services/console-proxy/pom.xml | 4 +-
services/console-proxy/server/js/ajaxkeys.js | 4 +-
services/console-proxy/server/pom.xml | 6 +-
.../LocalNfsSecondaryStorageResource.java | 4 +-
.../resource/NfsSecondaryStorageResource.java | 140 +-
.../resource/SecondaryStorageDiscoverer.java | 3 +-
setup/bindir/cloud-set-guest-sshkey.in | 49 +-
setup/db/db/schema-307to410.sql | 16 +-
setup/db/db/schema-40to410.sql | 3 +-
setup/db/db/schema-410to420.sql | 163 +-
setup/db/db/schema-420to430.sql | 190 +
setup/db/templates.sql | 44 +-
.../component/cpu_limits/__init__.py | 16 +
.../component/cpu_limits/test_cpu_limits.py | 745 ++++
.../component/cpu_limits/test_domain_limits.py | 764 ++++
.../component/cpu_limits/test_maximum_limits.py | 377 ++
.../component/cpu_limits/test_project_limits.py | 347 ++
.../component/maint/test_redundant_router.py | 1589 ++++++++
...test_redundant_router_deployment_planning.py | 51 +-
.../test_redundant_router_network_rules.py | 1427 ++++++++
test/integration/component/test_accounts.py | 184 +-
.../component/test_affinity_groups.py | 365 +-
test/integration/component/test_asa1000v_fw.py | 2 +
.../component/test_custom_hostname.py | 483 +++
.../component/test_egress_fw_rules.py | 952 +++++
.../component/test_explicit_dedication.py | 4 +
.../component/test_implicit_planner.py | 44 +-
test/integration/component/test_ldap.py | 287 +-
.../component/test_netscaler_configs.py | 84 +-
test/integration/component/test_netscaler_lb.py | 340 +-
.../component/test_netscaler_lb_algo.py | 345 +-
.../component/test_netscaler_lb_sticky.py | 49 +-
.../component/test_netscaler_nw_off.py | 670 +++-
.../component/test_network_offering.py | 941 ++---
.../component/test_project_resources.py | 2 +-
.../integration/component/test_project_usage.py | 5 +-
.../component/test_redundant_router.py | 1589 --------
.../test_redundant_router_network_rules.py | 1426 --------
test/integration/component/test_routers.py | 143 +-
.../component/test_shared_networks.py | 252 +-
test/integration/component/test_snapshot_gc.py | 271 +-
.../component/test_snapshot_limits.py | 179 +-
test/integration/component/test_snapshots.py | 346 +-
test/integration/component/test_stopped_vm.py | 4 +-
.../component/test_storage_motion.py | 15 +-
test/integration/component/test_tags.py | 12 +-
test/integration/component/test_templates.py | 76 +-
test/integration/component/test_usage.py | 6 +-
.../component/test_vm_passwdenabled.py | 58 +-
test/integration/component/test_volumes.py | 249 +-
test/integration/component/test_vpc.py | 3 +-
test/integration/component/test_vpc_network.py | 12 +-
.../component/test_vpc_vm_life_cycle.py | 38 +-
.../component/test_vpc_vms_deployment.py | 100 +-
.../smoke/test_multipleips_per_nic.py | 181 +
test/integration/smoke/test_network.py | 3 +
test/integration/smoke/test_nic.py | 13 +-
test/integration/smoke/test_routers.py | 66 +-
test/integration/smoke/test_ssvm.py | 63 +-
test/integration/smoke/test_volumes.py | 10 +-
tools/apidoc/gen_toc.py | 6 +-
tools/apidoc/generatetoc_header.xsl | 2 +-
.../appliance/definitions/builtin/definition.rb | 2 +-
tools/marvin/marvin/deployDataCenter.py | 19 +
tools/marvin/marvin/integration/lib/base.py | 177 +-
tools/marvin/marvin/integration/lib/common.py | 105 +
tools/marvin/marvin/integration/lib/utils.py | 116 +-
tools/marvin/marvin/marvinPlugin.py | 1 +
tools/whisker/LICENSE | 7 +
tools/whisker/descriptor-for-packaging.xml | 11 +
tools/whisker/descriptor.xml | 13 +-
ui/css/cloudstack3.css | 135 +-
ui/dictionary.jsp | 13 +-
ui/index.jsp | 79 +-
ui/modules/infrastructure/infrastructure.css | 19 +
ui/modules/vnmcAsa1000v/vnmcAsa1000v.css | 19 +
.../vnmcNetworkProvider/vnmcNetworkProvider.css | 19 +
ui/scripts/accounts.js | 315 +-
ui/scripts/accountsWizard.js | 288 ++
ui/scripts/affinity.js | 11 +
ui/scripts/cloudStack.js | 92 +-
ui/scripts/configuration.js | 1 -
ui/scripts/docs.js | 53 +-
ui/scripts/events.js | 108 +-
ui/scripts/globalSettings.js | 145 +-
ui/scripts/instanceWizard.js | 24 +-
ui/scripts/instances.js | 27 +-
ui/scripts/network.js | 783 ++--
ui/scripts/plugins.js | 30 +
ui/scripts/sharedFunctions.js | 28 +-
ui/scripts/storage.js | 20 +-
ui/scripts/system.js | 1214 +++----
ui/scripts/templates.js | 136 +-
ui/scripts/ui-custom/accountsWizard.js | 169 +
ui/scripts/ui-custom/autoscaler.js | 3 +
ui/scripts/ui-custom/instanceWizard.js | 13 +-
ui/scripts/ui-custom/zoneChart.js | 7 +-
ui/scripts/ui-custom/zoneWizard.js | 98 +-
ui/scripts/ui/dialog.js | 87 +-
ui/scripts/ui/widgets/detailView.js | 4 +-
ui/scripts/ui/widgets/listView.js | 8 +-
ui/scripts/ui/widgets/multiEdit.js | 11 +-
ui/scripts/vpc.js | 82 +-
ui/scripts/zoneWizard.js | 324 +-
.../com/cloud/usage/UsageAlertManagerImpl.java | 3 +-
usage/src/com/cloud/usage/UsageManagerImpl.java | 5 +-
.../cloud/usage/parser/NetworkUsageParser.java | 7 +-
.../cloud/usage/parser/VmDiskUsageParser.java | 6 +-
.../usage/UsageManagerTestConfiguration.java | 3 +-
utils/src/com/cloud/utils/ProcessUtil.java | 22 +-
utils/src/com/cloud/utils/StringUtils.java | 21 +-
utils/src/com/cloud/utils/UriUtils.java | 15 +-
utils/src/com/cloud/utils/net/NetUtils.java | 3 +
.../apache/cloudstack/config/ConfigDepot.java | 25 -
.../org/apache/cloudstack/config/ConfigKey.java | 98 -
.../apache/cloudstack/config/ConfigValue.java | 76 -
.../apache/cloudstack/config/Configurable.java | 21 -
.../apache/cloudstack/config/Configuration.java | 33 -
utils/test/com/cloud/utils/ProcessUtilTest.java | 73 +
.../com/cloud/utils/QualifierTestContext.xml | 3 +-
.../utils/db/transactionContextBuilderTest.xml | 3 +-
.../cloud/hypervisor/vmware/mo/ClusterMO.java | 2 +-
.../hypervisor/vmware/mo/DatacenterMO.java | 2 +-
.../com/cloud/hypervisor/vmware/mo/HostMO.java | 2 +-
.../hypervisor/vmware/mo/PerfManagerMO.java | 2 +-
.../hypervisor/vmware/mo/VirtualMachineMO.java | 10 +-
744 files changed, 44655 insertions(+), 28248 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/api/src/com/cloud/offering/DiskOffering.java
----------------------------------------------------------------------
diff --cc api/src/com/cloud/offering/DiskOffering.java
index 4ef2df0,a4c7dc3..651e355
--- a/api/src/com/cloud/offering/DiskOffering.java
+++ b/api/src/com/cloud/offering/DiskOffering.java
@@@ -28,22 -28,13 +28,28 @@@ import org.apache.cloudstack.api.Intern
*
*/
public interface DiskOffering extends InfrastructureEntity, Identity,
InternalIdentity {
+ enum State {
+ Inactive,
+ Active,
+ }
+
+ State getState();
+ public enum DiskCacheMode {
+ NONE("none"), WRITEBACK("writeback"), WRITETHROUGH("writethrough");
+
+ private final String _diskCacheMode;
+
+ DiskCacheMode(String cacheMode) {
+ _diskCacheMode = cacheMode;
+ }
+
+ @Override
+ public String toString() {
+ return _diskCacheMode;
+ }
+ };
+
String getUniqueName();
boolean getUseLocalStorage();
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/core/src/org/apache/cloudstack/storage/to/VolumeObjectTO.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/engine/schema/src/com/cloud/storage/DiskOfferingVO.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeObject.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/72f2f127/setup/db/db/schema-420to430.sql
----------------------------------------------------------------------
diff --cc setup/db/db/schema-420to430.sql
index 310c508,7857886..8ca5920
--- a/setup/db/db/schema-420to430.sql
+++ b/setup/db/db/schema-420to430.sql
@@@ -88,4 -88,192 +88,194 @@@ CREATE TABLE `cloud`.`async_job_join_ma
INDEX `i_async_job_join_map__expiration`(`expiration`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+ ALTER TABLE `cloud`.`configuration` ADD COLUMN `default_value` VARCHAR(4095)
COMMENT 'Default value for a configuration parameter';
+ ALTER TABLE `cloud`.`configuration` ADD COLUMN `updated` datetime COMMENT
'Time this was updated by the server. null means this row is obsolete.';
+ ALTER TABLE `cloud`.`configuration` ADD COLUMN `scope` VARCHAR(255) DEFAULT
NULL COMMENT 'Can this parameter be scoped';
+ ALTER TABLE `cloud`.`configuration` ADD COLUMN `is_dynamic` TINYINT(1) NOT
NULL DEFAULT 0 COMMENT 'Can the parameter be change dynamically without
restarting the server';
+
+ UPDATE `cloud`.`configuration` SET `default_value` = `value`;
+
+ #Upgrade the offerings and template table to have actual remove and states
+ ALTER TABLE `cloud`.`disk_offering` ADD COLUMN `state` CHAR(40) NOT NULL
DEFAULT 'Active' COMMENT 'state for disk offering';
+
+ UPDATE `cloud`.`disk_offering` SET `state`='Inactive' WHERE `removed` IS NOT
NULL;
+ UPDATE `cloud`.`disk_offering` SET `removed`=NULL;
+
+ DROP VIEW IF EXISTS `cloud`.`disk_offering_view`;
+ CREATE VIEW `cloud`.`disk_offering_view` AS
+ select
+ disk_offering.id,
+ disk_offering.uuid,
+ disk_offering.name,
+ disk_offering.display_text,
+ disk_offering.disk_size,
+ disk_offering.min_iops,
+ disk_offering.max_iops,
+ disk_offering.created,
+ disk_offering.tags,
+ disk_offering.customized,
+ disk_offering.customized_iops,
+ disk_offering.removed,
+ disk_offering.use_local_storage,
+ disk_offering.system_use,
+ disk_offering.bytes_read_rate,
+ disk_offering.bytes_write_rate,
+ disk_offering.iops_read_rate,
+ disk_offering.iops_write_rate,
+ disk_offering.sort_key,
+ disk_offering.type,
+ disk_offering.display_offering,
+ domain.id domain_id,
+ domain.uuid domain_uuid,
+ domain.name domain_name,
+ domain.path domain_path
+ from
+ `cloud`.`disk_offering`
+ left join
+ `cloud`.`domain` ON disk_offering.domain_id = domain.id
+ where
+ disk_offering.state='ACTIVE';
+
+ DROP VIEW IF EXISTS `cloud`.`service_offering_view`;
+ CREATE VIEW `cloud`.`service_offering_view` AS
+ select
+ service_offering.id,
+ disk_offering.uuid,
+ disk_offering.name,
+ disk_offering.display_text,
+ disk_offering.created,
+ disk_offering.tags,
+ disk_offering.removed,
+ disk_offering.use_local_storage,
+ disk_offering.system_use,
+ disk_offering.bytes_read_rate,
+ disk_offering.bytes_write_rate,
+ disk_offering.iops_read_rate,
+ disk_offering.iops_write_rate,
+ service_offering.cpu,
+ service_offering.speed,
+ service_offering.ram_size,
+ service_offering.nw_rate,
+ service_offering.mc_rate,
+ service_offering.ha_enabled,
+ service_offering.limit_cpu_use,
+ service_offering.host_tag,
+ service_offering.default_use,
+ service_offering.vm_type,
+ service_offering.sort_key,
+ service_offering.is_volatile,
+ service_offering.deployment_planner,
+ domain.id domain_id,
+ domain.uuid domain_uuid,
+ domain.name domain_name,
+ domain.path domain_path
+ from
+ `cloud`.`service_offering`
+ inner join
+ `cloud`.`disk_offering` ON service_offering.id = disk_offering.id
+ left join
+ `cloud`.`domain` ON disk_offering.domain_id = domain.id
+ where
+ disk_offering.state='Active';
+
+ DROP VIEW IF EXISTS `cloud`.`template_view`;
+ CREATE VIEW `cloud`.`template_view` AS
+ select
+ vm_template.id,
+ vm_template.uuid,
+ vm_template.unique_name,
+ vm_template.name,
+ vm_template.public,
+ vm_template.featured,
+ vm_template.type,
+ vm_template.hvm,
+ vm_template.bits,
+ vm_template.url,
+ vm_template.format,
+ vm_template.created,
+ vm_template.checksum,
+ vm_template.display_text,
+ vm_template.enable_password,
+ vm_template.dynamically_scalable,
+ vm_template.guest_os_id,
+ guest_os.uuid guest_os_uuid,
+ guest_os.display_name guest_os_name,
+ vm_template.bootable,
+ vm_template.prepopulate,
+ vm_template.cross_zones,
+ vm_template.hypervisor_type,
+ vm_template.extractable,
+ vm_template.template_tag,
+ vm_template.sort_key,
+ vm_template.removed,
+ vm_template.enable_sshkey,
+ source_template.id source_template_id,
+ source_template.uuid source_template_uuid,
+ account.id account_id,
+ account.uuid account_uuid,
+ account.account_name account_name,
+ account.type account_type,
+ domain.id domain_id,
+ domain.uuid domain_uuid,
+ domain.name domain_name,
+ domain.path domain_path,
+ projects.id project_id,
+ projects.uuid project_uuid,
+ projects.name project_name,
+ data_center.id data_center_id,
+ data_center.uuid data_center_uuid,
+ data_center.name data_center_name,
+ launch_permission.account_id lp_account_id,
+ template_store_ref.store_id,
+ image_store.scope as store_scope,
+ template_store_ref.state,
+ template_store_ref.download_state,
+ template_store_ref.download_pct,
+ template_store_ref.error_str,
+ template_store_ref.size,
+ template_store_ref.destroyed,
+ template_store_ref.created created_on_store,
+ vm_template_details.name detail_name,
+ vm_template_details.value detail_value,
+ resource_tags.id tag_id,
+ resource_tags.uuid tag_uuid,
+ resource_tags.key tag_key,
+ resource_tags.value tag_value,
+ resource_tags.domain_id tag_domain_id,
+ resource_tags.account_id tag_account_id,
+ resource_tags.resource_id tag_resource_id,
+ resource_tags.resource_uuid tag_resource_uuid,
+ resource_tags.resource_type tag_resource_type,
+ resource_tags.customer tag_customer,
+ CONCAT(vm_template.id, '_', IFNULL(data_center.id, 0)) as
temp_zone_pair
+ from
+ `cloud`.`vm_template`
+ inner join
+ `cloud`.`guest_os` ON guest_os.id = vm_template.guest_os_id
+ inner join
+ `cloud`.`account` ON account.id = vm_template.account_id
+ inner join
+ `cloud`.`domain` ON domain.id = account.domain_id
+ left join
+ `cloud`.`projects` ON projects.project_account_id = account.id
+ left join
+ `cloud`.`vm_template_details` ON vm_template_details.template_id =
vm_template.id
+ left join
+ `cloud`.`vm_template` source_template ON source_template.id =
vm_template.source_template_id
+ left join
+ `cloud`.`template_store_ref` ON template_store_ref.template_id =
vm_template.id and template_store_ref.store_role = 'Image'
+ left join
+ `cloud`.`image_store` ON image_store.removed is NULL AND
template_store_ref.store_id is not NULL AND image_store.id =
template_store_ref.store_id
+ left join
+ `cloud`.`template_zone_ref` ON template_zone_ref.template_id =
vm_template.id AND template_store_ref.store_id is NULL AND
template_zone_ref.removed is null
+ left join
+ `cloud`.`data_center` ON (image_store.data_center_id = data_center.id
OR template_zone_ref.zone_id = data_center.id)
+ left join
+ `cloud`.`launch_permission` ON launch_permission.template_id =
vm_template.id
+ left join
+ `cloud`.`resource_tags` ON resource_tags.resource_id = vm_template.id
+ and (resource_tags.resource_type = 'Template' or
resource_tags.resource_type='ISO')
+ where
+ vm_template.state='Active';
++
+ALTER TABLE `disk_offering` ADD `cache_mode` VARCHAR( 16 ) NOT NULL DEFAULT
'none' COMMENT 'The disk cache mode to use for disks created with this
offering';