Merge branch 'master' into vmsync
Conflicts:
plugins/hypervisors/kvm/src/org/apache/cloudstack/utils/qemu/QemuImgException.java
server/src/com/cloud/async/AsyncJobManagerImpl.java
server/src/com/cloud/async/SyncQueueManager.java
server/src/com/cloud/hypervisor/kvm/discoverer/LxcServerDiscoverer.java
server/src/com/cloud/storage/VolumeManagerImpl.java
utils/src/com/cloud/utils/component/AdapterList.java
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/2ee8fd21
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/2ee8fd21
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/2ee8fd21
Branch: refs/heads/vmsync
Commit: 2ee8fd21528b83dafa212edbcb3667a1d5d2a1d7
Parents: a410652 685a8a7
Author: Kelven Yang <[email protected]>
Authored: Tue Apr 9 14:39:09 2013 -0700
Committer: Kelven Yang <[email protected]>
Committed: Tue Apr 9 14:39:09 2013 -0700
----------------------------------------------------------------------
.gitignore | 8 +
LICENSE | 64 -
agent/conf/agent.properties | 9 +
api/src/com/cloud/agent/api/Command.java | 2 +
api/src/com/cloud/agent/api/RebootCommand.java | 1 +
api/src/com/cloud/agent/api/StopCommand.java | 7 +-
api/src/com/cloud/event/EventTypes.java | 3 +
api/src/com/cloud/hypervisor/Hypervisor.java | 3 +
api/src/com/cloud/network/Network.java | 3 +-
api/src/com/cloud/network/NetworkModel.java | 4 +-
api/src/com/cloud/network/Networks.java | 1 +
api/src/com/cloud/network/PhysicalNetwork.java | 3 +-
api/src/com/cloud/network/vpc/Vpc.java | 43 +-
api/src/com/cloud/network/vpc/VpcOffering.java | 21 +-
.../cloud/network/vpc/VpcProvisioningService.java | 46 +
api/src/com/cloud/network/vpc/VpcService.java | 95 +-
api/src/com/cloud/storage/Storage.java | 3 +-
api/src/org/apache/cloudstack/api/BaseCmd.java | 2 +
.../command/admin/account/CreateAccountCmd.java | 2 +-
.../api/command/admin/user/CreateUserCmd.java | 2 +-
.../api/command/admin/user/UpdateUserCmd.java | 2 +-
.../command/admin/vpc/CreateVPCOfferingCmd.java | 4 +-
.../command/admin/vpc/DeleteVPCOfferingCmd.java | 2 +-
.../command/admin/vpc/UpdateVPCOfferingCmd.java | 2 +-
.../api/command/user/network/UpdateNetworkCmd.java | 9 +-
.../ha/gslb/ListGlobalLoadBalancerRuleCmd.java | 2 +-
.../api/command/user/vpc/ListVPCOfferingsCmd.java | 2 +-
.../cloudstack/api/response/ServiceResponse.java | 9 +-
.../api/response/StoragePoolResponse.java | 17 +
.../network/ExternalNetworkDeviceManager.java | 1 -
client/pom.xml | 115 +-
client/tomcatconf/applicationContext.xml.in | 174 +-
client/tomcatconf/componentContext.xml.in | 223 +-
client/tomcatconf/db-enc.properties.in | 68 -
client/tomcatconf/nonossComponentContext.xml.in | 213 +-
client/tomcatconf/server-ssl.xml.in | 4 +-
client/tomcatconf/server.xml.in | 231 -
client/tomcatconf/simulatorComponentContext.xml.in | 220 +
client/tomcatconf/tomcat6-ssl.conf.in | 2 +-
debian/cloudstack-agent.install | 6 +-
debian/cloudstack-common.install | 9 +-
debian/cloudstack-management.install | 13 +-
debian/cloudstack-management.postinst | 25 +-
debian/control | 4 +-
debian/rules | 35 +-
developer/developer-prefill.sql | 2 +-
docs/en-US/Book_Info.xml | 39 +-
docs/en-US/Book_Info_Release_Notes_4-0.xml | 7 +-
docs/en-US/Installation_Guide.xml | 3 +
docs/en-US/Release_Notes.xml | 4141 +++++----------
docs/en-US/add-clusters-vsphere.xml | 103 +-
docs/en-US/choosing-a-hypervisor.xml | 136 +
docs/en-US/global-config.xml | 79 +
docs/en-US/hypervisor-host-install-firewall.xml | 4 +-
docs/en-US/hypervisor-host-install-network.xml | 8 +-
docs/en-US/hypervisor-installation.xml | 1 +
docs/en-US/images/add-cluster.png | Bin 35697 -> 46302 bytes
docs/en-US/images/dvswitch-config.png | Bin 41955 -> 0 bytes
docs/en-US/images/dvswitchconfig.png | Bin 38642 -> 0 bytes
docs/en-US/lxc-install.xml | 110 +
docs/en-US/lxc-topology-req.xml | 24 +
docs/en-US/management-server-install-systemvm.xml | 4 +
docs/en-US/minimum-system-requirements.xml | 1 +
docs/en-US/prepare-system-vm-template.xml | 4 +
docs/en-US/topology-req.xml | 3 +-
docs/en-US/vmware-cluster-config-dvswitch.xml | 192 -
docs/en-US/vmware-install.xml | 515 +--
docs/publican-cloudstack/defaults.cfg | 4 +-
docs/publican-cloudstack/en-US/Feedback.xml | 56 +-
.../engine/datacenter/entity/api/HostEntity.java | 89 +-
.../rest/service/api/ClusterRestService.java | 172 +-
.../rest/service/api/NetworkRestService.java | 124 +-
.../engine/rest/service/api/PodRestService.java | 158 +-
.../service/api/VirtualMachineRestService.java | 112 +-
.../engine/rest/service/api/VolumeRestService.java | 152 +-
.../engine/rest/service/api/ZoneRestService.java | 174 +-
.../subsystem/api/storage/DataStoreStatus.java | 23 -
.../org/apache/cloudstack/compute/ComputeGuru.java | 68 +-
.../engine/cloud/entity/api/VMEntityManager.java | 50 +-
.../cloud/entity/api/VirtualMachineEntityImpl.java | 444 +-
.../engine/cloud/entity/api/db/VMComputeTagVO.java | 102 +-
.../engine/cloud/entity/api/db/VMEntityVO.java | 2 +-
.../engine/cloud/entity/api/db/VMNetworkMapVO.java | 110 +-
.../cloud/entity/api/db/VMReservationVO.java | 222 +-
.../cloud/entity/api/db/VMRootDiskTagVO.java | 102 +-
.../cloud/entity/api/db/VolumeReservationVO.java | 168 +-
.../cloud/entity/api/db/dao/VMComputeTagDao.java | 30 +-
.../entity/api/db/dao/VMComputeTagDaoImpl.java | 146 +-
.../cloud/entity/api/db/dao/VMNetworkMapDao.java | 30 +-
.../entity/api/db/dao/VMNetworkMapDaoImpl.java | 138 +-
.../cloud/entity/api/db/dao/VMReservationDao.java | 36 +-
.../entity/api/db/dao/VMReservationDaoImpl.java | 190 +-
.../cloud/entity/api/db/dao/VMRootDiskTagDao.java | 30 +-
.../entity/api/db/dao/VMRootDiskTagDaoImpl.java | 144 +-
.../entity/api/db/dao/VolumeReservationDao.java | 30 +-
.../api/db/dao/VolumeReservationDaoImpl.java | 104 +-
.../datacenter/entity/api/ClusterEntityImpl.java | 386 +-
.../entity/api/DataCenterResourceManager.java | 68 +-
.../entity/api/DataCenterResourceManagerImpl.java | 226 +-
.../datacenter/entity/api/HostEntityImpl.java | 398 +-
.../datacenter/entity/api/PodEntityImpl.java | 422 +-
.../datacenter/entity/api/ZoneEntityImpl.java | 402 +-
.../datacenter/entity/api/db/EngineCluster.java | 46 +-
.../datacenter/entity/api/db/EngineDataCenter.java | 46 +-
.../entity/api/db/EngineDataCenterVO.java | 210 +-
.../datacenter/entity/api/db/EngineHost.java | 48 +-
.../datacenter/entity/api/db/EngineHostPodVO.java | 170 +-
.../engine/datacenter/entity/api/db/EnginePod.java | 46 +-
.../entity/api/db/dao/EngineHostDao.java | 2 +-
.../entity/api/db/dao/EngineHostPodDao.java | 20 +-
.../entity/api/db/dao/EngineHostPodDaoImpl.java | 142 +-
.../service/api/ProvisioningServiceImpl.java | 340 +-
.../engine/provisioning/test/ProvisioningTest.java | 242 +-
.../ClusterScopeStoragePoolAllocator.java | 1 +
.../GarbageCollectingStoragePoolAllocator.java | 2 +-
.../allocator/LocalStoragePoolAllocator.java | 9 +-
.../allocator/ZoneWideStoragePoolAllocator.java | 3 +-
.../jackson/CSJacksonAnnotationIntrospector.java | 120 +-
.../ws/jackson/CSJacksonAnnotationModule.java | 94 +-
.../framework/ws/jackson/UriSerializer.java | 116 +-
.../framework/ws/jackson/UrisSerializer.java | 142 +-
.../cloudstack/framework/ws/jackson/Url.java | 106 +-
.../ws/jackson/CSJacksonAnnotationTest.java | 166 +-
packaging/centos63/cloud-agent.rc | 3 +-
packaging/centos63/cloud.spec | 83 +-
packaging/centos63/package.sh | 218 +-
packaging/debian/init/cloud-management | 11 +-
packaging/debian/replace.properties | 2 +-
patches/systemvm/debian/config/root/edithosts.sh | 3 +-
.../api/response/ApiDiscoveryResponse.java | 4 +
.../api/response/ApiResponseResponse.java | 15 +-
.../discovery/ApiDiscoveryServiceImpl.java | 167 +-
.../baremetal/manager/AddBaremetalHostCmd.java | 48 +-
.../baremetal/manager/BareMetalDiscoverer.java | 2 +-
.../cloud/baremetal/manager/BaremetalManager.java | 2 +-
.../manager/BaremetalPlannerSelector.java | 78 +-
.../AddBaremetalKickStartPxeCmd.java | 28 +-
.../networkservice/BareMetalResourceBase.java | 28 +-
.../networkservice/BaremetaNetworkGuru.java | 208 +-
.../BaremetalKickStartPxeResource.java | 322 +-
.../BaremetalKickStartServiceImpl.java | 398 +-
.../BaremetalPxeKickStartResponse.java | 32 +-
.../networkservice/BaremetalPxeManagerImpl.java | 6 +-
.../networkservice/BaremetalUserdataElement.java | 256 +-
.../PrepareKickstartPxeServerCommand.java | 92 +-
.../networkservice/SecurityGroupHttpClient.java | 76 +-
plugins/hypervisors/kvm/pom.xml | 131 +-
.../hypervisor/kvm/resource/DirectVifDriver.java | 65 +
.../kvm/resource/LibvirtComputingResource.java | 227 +-
.../hypervisor/kvm/resource/LibvirtConnection.java | 52 +-
.../kvm/resource/LibvirtDomainXMLParser.java | 25 +-
.../kvm/resource/LibvirtStorageVolumeDef.java | 6 +-
.../hypervisor/kvm/resource/LibvirtVMDef.java | 86 +-
.../hypervisor/kvm/storage/KVMPhysicalDisk.java | 14 +-
.../hypervisor/kvm/storage/KVMStoragePool.java | 2 +-
.../kvm/storage/KVMStoragePoolManager.java | 13 +-
.../kvm/storage/LibvirtStorageAdaptor.java | 250 +-
.../hypervisor/kvm/storage/LibvirtStoragePool.java | 2 +-
.../hypervisor/kvm/storage/StorageAdaptor.java | 2 +-
.../org/apache/cloudstack/utils/qemu/QemuImg.java | 352 ++
.../cloudstack/utils/qemu/QemuImgException.java | 25 +
.../apache/cloudstack/utils/qemu/QemuImgFile.java | 72 +
.../hypervisor/kvm/resource/LibvirtVMDefTest.java | 14 +
.../cloudstack/utils/qemu/QemuImgFileTest.java | 62 +
.../apache/cloudstack/utils/qemu/QemuImgTest.java | 289 +
.../agent/manager/MockStorageManagerImpl.java | 36 +-
.../src/com/cloud/ucs/database/UcsBladeDao.java | 16 +-
.../com/cloud/ucs/database/UcsBladeDaoImpl.java | 22 +-
.../ucs/src/com/cloud/ucs/database/UcsBladeVO.java | 140 +-
.../src/com/cloud/ucs/database/UcsManagerDao.java | 32 +-
.../com/cloud/ucs/database/UcsManagerDaoImpl.java | 21 +-
.../src/com/cloud/ucs/database/UcsManagerVO.java | 140 +-
.../com/cloud/ucs/manager/AddUcsManagerCmd.java | 198 +-
.../ucs/manager/AssociateUcsProfileToBladeCmd.java | 156 +-
.../src/com/cloud/ucs/manager/ListUcsBladeCmd.java | 174 +-
.../com/cloud/ucs/manager/ListUcsManagerCmd.java | 114 +-
.../com/cloud/ucs/manager/ListUcsProfileCmd.java | 114 +-
.../src/com/cloud/ucs/manager/StringTemplate.java | 46 +-
.../com/cloud/ucs/manager/UcsBladeResponse.java | 168 +-
.../ucs/src/com/cloud/ucs/manager/UcsCommands.java | 168 +-
.../src/com/cloud/ucs/manager/UcsHttpClient.java | 68 +-
.../ucs/src/com/cloud/ucs/manager/UcsManager.java | 32 +-
.../src/com/cloud/ucs/manager/UcsManagerImpl.java | 554 +-
.../com/cloud/ucs/manager/UcsManagerResponse.java | 102 +-
.../com/cloud/ucs/manager/UcsProfileResponse.java | 38 +-
.../src/com/cloud/ucs/structure/ComputeBlade.java | 332 +-
.../src/com/cloud/ucs/structure/UcsProfile.java | 76 +-
.../hypervisor/vmware/VmwareServerDiscoverer.java | 17 +-
.../network/CiscoNexusVSMDeviceManagerImpl.java | 96 -
.../network/element/CiscoNexusVSMElement.java | 100 +-
.../element/CiscoNexusVSMElementService.java | 7 +
.../xen/resource/CitrixResourceBase.java | 12 +-
.../cloudstack/network/element/DnsNotifier.java | 244 +-
plugins/network-elements/midokura-midonet/pom.xml | 30 -
.../network/element/MidokuraMidonetElement.java | 131 -
.../guru/MidokuraMidonetGuestNetworkGuru.java | 48 -
plugins/network-elements/midonet/pom.xml | 66 +
.../com/cloud/network/element/MidoNetElement.java | 1685 ++++++
.../cloud/network/element/SimpleFirewallRule.java | 210 +
.../network/guru/MidoNetGuestNetworkGuru.java | 170 +
.../network/guru/MidoNetPublicNetworkGuru.java | 241 +
.../cloud/network/resource/MidoNetVifDriver.java | 179 +
.../cloud/network/element/MidoNetElementTest.java | 178 +
plugins/network-elements/netscaler/pom.xml | 6 +-
plugins/pom.xml | 4 +-
.../CloudStackPrimaryDataStoreLifeCycleImpl.java | 2 +
.../cloud/server/auth/LDAPUserAuthenticator.java | 5 +-
.../cloud/server/auth/MD5UserAuthenticator.java | 4 +
.../server/auth/PlainTextUserAuthenticator.java | 32 +-
.../server/auth/SHA256SaltedUserAuthenticator.java | 3 +
pom.xml | 116 +-
scripts/storage/secondary/cloud-install-sys-tmplt | 6 +-
server/conf/cloudstack-limits.conf.in | 4 +-
server/conf/cloudstack-sudoers.in | 2 +-
server/pom.xml | 3 +
.../com/cloud/agent/manager/AgentManagerImpl.java | 2 +-
.../src/com/cloud/agent/manager/AgentMonitor.java | 35 +-
.../cloud/agent/manager/AgentMonitorService.java | 2 +-
server/src/com/cloud/api/ApiDBUtils.java | 77 +-
server/src/com/cloud/api/ApiResponseHelper.java | 1 +
.../api/query/dao/StoragePoolJoinDaoImpl.java | 1 +
.../src/com/cloud/api/query/vo/ProjectJoinVO.java | 2 +-
.../com/cloud/api/query/vo/StoragePoolJoinVO.java | 19 +
.../cloud/api/response/ApiResponseSerializer.java | 32 +-
.../api/response/EmptyFieldExclusionStrategy.java | 40 +
.../src/com/cloud/async/AsyncJobManagerImpl.java | 378 +-
server/src/com/cloud/async/SyncQueueManager.java | 4 +-
.../src/com/cloud/async/SyncQueueManagerImpl.java | 22 +-
server/src/com/cloud/async/dao/SyncQueueDao.java | 2 +-
.../src/com/cloud/async/dao/SyncQueueItemDao.java | 4 +-
server/src/com/cloud/configuration/Config.java | 4 +
.../configuration/ConfigurationManagerImpl.java | 2 +-
.../AgentBasedConsoleProxyManager.java | 4 +-
.../consoleproxy/ConsoleProxyManagerImpl.java | 12 +-
.../deploy/AbstractDeployPlannerSelector.java | 168 +-
.../com/cloud/deploy/DeployPlannerSelector.java | 48 +-
server/src/com/cloud/deploy/FirstFitPlanner.java | 2 +-
.../cloud/deploy/HypervisorVmPlannerSelector.java | 108 +-
.../src/com/cloud/ha/UserVmDomRInvestigator.java | 6 +-
server/src/com/cloud/host/dao/HostDao.java | 4 +-
server/src/com/cloud/hypervisor/LXCGuru.java | 58 +
.../dao/HypervisorCapabilitiesDaoImpl.java | 15 +-
.../kvm/discoverer/KvmServerDiscoverer.java | 371 +--
.../kvm/discoverer/LibvirtServerDiscoverer.java | 393 ++
.../kvm/discoverer/LxcServerDiscoverer.java | 33 +
.../network/ExternalFirewallDeviceManagerImpl.java | 4 +-
.../ExternalLoadBalancerDeviceManagerImpl.java | 32 +-
server/src/com/cloud/network/NetworkManager.java | 7 +-
.../src/com/cloud/network/NetworkManagerImpl.java | 27 +-
server/src/com/cloud/network/NetworkModelImpl.java | 22 +-
.../src/com/cloud/network/NetworkServiceImpl.java | 31 +-
.../com/cloud/network/SshKeysDistriMonitor.java | 3 +-
.../src/com/cloud/network/as/AutoScaleManager.java | 32 +-
.../as/dao/AutoScalePolicyConditionMapDao.java | 32 +-
.../as/dao/AutoScalePolicyConditionMapDaoImpl.java | 38 +-
.../cloud/network/as/dao/AutoScalePolicyDao.java | 32 +-
.../network/as/dao/AutoScalePolicyDaoImpl.java | 38 +-
.../cloud/network/as/dao/AutoScaleVmGroupDao.java | 32 +-
.../network/as/dao/AutoScaleVmGroupDaoImpl.java | 38 +-
.../as/dao/AutoScaleVmGroupPolicyMapDaoImpl.java | 38 +-
.../network/as/dao/AutoScaleVmProfileDao.java | 32 +-
.../network/as/dao/AutoScaleVmProfileDaoImpl.java | 38 +-
.../network/element/VpcVirtualRouterElement.java | 21 +-
.../com/cloud/network/guru/DirectNetworkGuru.java | 6 +-
.../network/guru/DirectPodBasedNetworkGuru.java | 9 +-
.../router/VirtualNetworkApplianceManagerImpl.java | 18 +-
.../router/VpcVirtualNetworkApplianceManager.java | 6 +
.../VpcVirtualNetworkApplianceManagerImpl.java | 15 +-
.../network/security/dao/SecurityGroupDaoImpl.java | 22 +-
server/src/com/cloud/network/vpc/VpcManager.java | 84 +-
.../src/com/cloud/network/vpc/VpcManagerImpl.java | 84 +-
.../src/com/cloud/network/vpc/VpcOfferingVO.java | 1 -
server/src/com/cloud/network/vpc/VpcVO.java | 7 -
.../src/com/cloud/server/ManagementServerImpl.java | 15 +-
server/src/com/cloud/server/StatsCollector.java | 10 +-
server/src/com/cloud/storage/StorageManager.java | 2 +-
.../src/com/cloud/storage/StorageManagerImpl.java | 27 +-
.../src/com/cloud/storage/VolumeManagerImpl.java | 11 +
.../src/com/cloud/storage/dao/VMTemplateDao.java | 10 +-
.../com/cloud/storage/dao/VMTemplateDaoImpl.java | 20 +-
.../storage/download/DownloadMonitorImpl.java | 17 +-
.../secondary/SecondaryStorageManagerImpl.java | 9 +-
.../cloud/template/HypervisorTemplateAdapter.java | 3 +
.../src/com/cloud/upgrade/dao/Upgrade30xBase.java | 622 ++--
.../src/com/cloud/upgrade/dao/Upgrade410to420.java | 78 +-
server/src/com/cloud/user/AccountManagerImpl.java | 16 +-
server/src/com/cloud/vm/NicVO.java | 6 +-
server/src/com/cloud/vm/UserVmManagerImpl.java | 22 +-
.../com/cloud/vm/VirtualMachineManagerImpl.java | 27 +-
server/src/com/cloud/vm/dao/NicDao.java | 1 +
server/src/com/cloud/vm/dao/NicDaoImpl.java | 9 +
server/src/com/cloud/vm/dao/UserVmDaoImpl.java | 824 ++--
.../cloud/vm/snapshot/VMSnapshotManagerImpl.java | 8 +-
server/src/com/cloud/vm/snapshot/VMSnapshotVO.java | 224 -
.../test/com/cloud/async/TestSyncQueueManager.java | 306 +-
.../com/cloud/network/MockNetworkManagerImpl.java | 3 +-
.../com/cloud/network/MockNetworkModelImpl.java | 8 +-
.../SecurityGroupManagerTestConfiguration.java | 316 +-
.../network/security/SecurityGroupQueueTest.java | 2 +-
.../snapshot/SnapshotDaoTestConfiguration.java | 144 +-
.../dao/StoragePoolDaoTestConfiguration.java | 106 +-
.../cloud/vm/snapshot/VMSnapshotManagerTest.java | 372 +-
.../test/com/cloud/vpc/MockNetworkManagerImpl.java | 3 +-
.../test/com/cloud/vpc/MockNetworkModelImpl.java | 8 +-
server/test/com/cloud/vpc/MockVpcManagerImpl.java | 106 +-
.../vpc/MockVpcVirtualNetworkApplianceManager.java | 6 +
server/test/com/cloud/vpc/VpcApiUnitTest.java | 37 +-
.../test/com/cloud/vpc/VpcTestConfiguration.java | 462 +-
services/console-proxy/server/pom.xml | 12 +
setup/bindir/cloud-setup-databases.in | 2 +-
setup/bindir/cloud-setup-encryption.in | 2 +-
setup/db/create-schema.sql | 82 +-
setup/db/db/schema-40to410.sql | 7 +-
setup/db/db/schema-410to420-cleanup.sql | 8 +-
setup/db/db/schema-410to420.sql | 16 +-
setup/db/templates.simulator.sql | 4 +-
setup/dev/advanced.cfg | 195 +
setup/dev/basic.cfg | 178 +
.../integration/component/test_vm_passwdenabled.py | 242 +
test/integration/smoke/test_vm_life_cycle.py | 332 +-
tools/apidoc/build-apidoc.sh | 2 +-
tools/apidoc/pom.xml | 3 +-
tools/cli/cloudmonkey/cloudmonkey.py | 45 +-
tools/cli/cloudmonkey/config.py | 2 +-
tools/cli/cloudmonkey/requester.py | 63 +-
tools/marvin/marvin/TestCaseExecuteEngine.py | 13 +-
tools/marvin/marvin/cloudstackTestClient.py | 7 +-
tools/marvin/marvin/codegenerator.py | 241 +-
tools/marvin/marvin/deployAndRun.py | 40 +-
tools/marvin/marvin/integration/lib/base.py | 2 +
tools/marvin/marvin/marvinPlugin.py | 4 +-
tools/marvin/marvin/remoteSSHClient.py | 9 +-
.../marvin/sandbox/demo/simulator/simulator.cfg | 196 -
.../sandbox/demo/simulator/simulator_setup.py | 2 +-
tools/marvin/marvin/setup.py | 52 -
tools/marvin/marvin/testSetupSuccess.py | 9 +-
tools/marvin/pom.xml | 165 +-
tools/marvin/setup.py | 59 +-
tools/waf/javadir.py | 38 -
tools/waf/mkisofs.py | 84 -
tools/waf/tar.py | 79 -
tools/waf/tomcat.py | 57 -
tools/waf/usermgmt.py | 140 -
tools/whisker/LICENSE | 64 -
tools/whisker/descriptor-for-packaging.xml | 24 -
tools/whisker/descriptor.xml | 24 -
ui/css/cloudstack3.css | 15 +-
ui/scripts/cloud.core.callbacks.js | 41 +-
ui/scripts/cloudStack.js | 24 +-
ui/scripts/events.js | 2 -
ui/scripts/instances.js | 41 +
ui/scripts/network.js | 2 +-
ui/scripts/regions.js | 323 +-
ui/scripts/sharedFunctions.js | 2 +-
ui/scripts/system.js | 314 +-
ui/scripts/templates.js | 4 +
ui/scripts/ui-custom/healthCheck.js | 10 +-
ui/scripts/ui-custom/regions.js | 4 +-
ui/scripts/ui/widgets/detailView.js | 11 +-
ui/scripts/ui/widgets/multiEdit.js | 16 +-
ui/scripts/zoneWizard.js | 14 +-
.../src/com/cloud/utils/component/AdapterList.java | 34 +
.../utils/component/SpringComponentScanUtils.java | 82 +-
utils/src/com/cloud/utils/script/Script.java | 21 +-
utils/src/com/cloud/utils/xmlobject/XmlObject.java | 354 +-
.../com/cloud/utils/xmlobject/XmlObjectParser.java | 214 +-
.../com/cloud/utils/xmlobject/TestXmlObject.java | 66 +-
.../com/cloud/utils/xmlobject/TestXmlObject2.java | 74 +-
368 files changed, 18934 insertions(+), 16068 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/client/tomcatconf/applicationContext.xml.in
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/server/src/com/cloud/async/AsyncJobManagerImpl.java
----------------------------------------------------------------------
diff --cc server/src/com/cloud/async/AsyncJobManagerImpl.java
index 85e2a56,47d793f..3c6d672
--- a/server/src/com/cloud/async/AsyncJobManagerImpl.java
+++ b/server/src/com/cloud/async/AsyncJobManagerImpl.java
@@@ -75,20 -75,21 +75,20 @@@ import com.cloud.utils.mgmt.JmxUtil
import com.cloud.utils.net.MacAddress;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
-
+
@Component
- @Local(value={AsyncJobManager.class})
- public class AsyncJobManagerImpl extends ManagerBase implements
AsyncJobManager, ClusterManagerListener {
- public static final Logger s_logger =
Logger.getLogger(AsyncJobManagerImpl.class.getName());
+ @Local(value={AsyncJobManager.class})
+ public class AsyncJobManagerImpl extends ManagerBase implements
AsyncJobManager, ClusterManagerListener {
+ public static final Logger s_logger =
Logger.getLogger(AsyncJobManagerImpl.class.getName());
private static final int ACQUIRE_GLOBAL_LOCK_TIMEOUT_FOR_COOPERATION = 3;
// 3 seconds
-
- private static final int MAX_ONETIME_SCHEDULE_SIZE = 50;
+
+ private static final int MAX_ONETIME_SCHEDULE_SIZE = 50;
private static final int HEARTBEAT_INTERVAL = 2000;
private static final int GC_INTERVAL = 10000;
// 10 seconds
-
- @Inject private AsyncJobExecutorContext _context;
- @Inject private SyncQueueManager _queueMgr;
+
+ @Inject private SyncQueueManager _queueMgr;
@Inject private ClusterManager _clusterMgr;
- @Inject private AccountManager _accountMgr;
+ @Inject private AccountManager _accountMgr;
@Inject private AccountDao _accountDao;
@Inject private AsyncJobDao _jobDao;
@Inject private ConfigurationDao _configDao;
@@@ -312,59 -317,60 +312,59 @@@
return _jobDao.findById(cmd.getId());
}
- @Override @DB
- public AsyncJobResult queryAsyncJobResult(long jobId) {
+ @Override @DB
+ public AsyncJobResult queryAsyncJobResult(long jobId) {
if(s_logger.isTraceEnabled()) {
s_logger.trace("Query async-job status, job-" + jobId);
- }
-
- Transaction txt = Transaction.currentTxn();
- AsyncJobResult jobResult = new AsyncJobResult(jobId);
-
- try {
- txt.start();
- AsyncJobVO job = _jobDao.findById(jobId);
- if(job != null) {
- jobResult.setCmdOriginator(job.getCmdOriginator());
- jobResult.setJobStatus(job.getStatus());
- jobResult.setProcessStatus(job.getProcessStatus());
- jobResult.setResult(job.getResult());
+ }
+
+ Transaction txt = Transaction.currentTxn();
+ AsyncJobResult jobResult = new AsyncJobResult(jobId);
+
+ try {
+ txt.start();
+ AsyncJobVO job = _jobDao.findById(jobId);
+ if(job != null) {
+ jobResult.setJobStatus(job.getStatus());
+ jobResult.setProcessStatus(job.getProcessStatus());
+ jobResult.setResult(job.getResult());
jobResult.setResultCode(job.getResultCode());
- jobResult.setUuid(job.getUuid());
-
- if(job.getStatus() == AsyncJobResult.STATUS_SUCCEEDED ||
- job.getStatus() == AsyncJobResult.STATUS_FAILED) {
-
+ jobResult.setUuid(job.getUuid());
+
+ if(job.getStatus() == AsyncJobResult.STATUS_SUCCEEDED ||
+ job.getStatus() == AsyncJobResult.STATUS_FAILED) {
+
if(s_logger.isDebugEnabled()) {
s_logger.debug("Async job-" + jobId + " completed");
- }
- } else {
- job.setLastPolled(DateUtil.currentGMTTime());
- _jobDao.update(jobId, job);
- }
- } else {
+ }
+ } else {
+ job.setLastPolled(DateUtil.currentGMTTime());
+ _jobDao.update(jobId, job);
+ }
+ } else {
if(s_logger.isDebugEnabled()) {
s_logger.debug("Async job-" + jobId + " does not exist,
invalid job id?");
- }
-
- jobResult.setJobStatus(AsyncJobResult.STATUS_FAILED);
- jobResult.setResult("job-" + jobId + " does not exist");
- }
- txt.commit();
- } catch(Exception e) {
- s_logger.error("Unexpected exception while querying async job-" +
jobId + " status: ", e);
-
- jobResult.setJobStatus(AsyncJobResult.STATUS_FAILED);
- jobResult.setResult("Exception: " + e.toString());
- txt.rollback();
- }
-
+ }
+
+ jobResult.setJobStatus(AsyncJobResult.STATUS_FAILED);
+ jobResult.setResult("job-" + jobId + " does not exist");
+ }
+ txt.commit();
+ } catch(Exception e) {
+ s_logger.error("Unexpected exception while querying async job-" +
jobId + " status: ", e);
+
+ jobResult.setJobStatus(AsyncJobResult.STATUS_FAILED);
+ jobResult.setResult("Exception: " + e.toString());
+ txt.rollback();
+ }
+
if(s_logger.isTraceEnabled()) {
s_logger.trace("Job status: " + jobResult.toString());
- }
-
- return jobResult;
+ }
+
+ return jobResult;
}
-
+
private void scheduleExecution(final AsyncJobVO job) {
scheduleExecution(job, false);
}
@@@ -537,51 -539,48 +537,51 @@@
}
}
- @Override
- public void releaseSyncSource(AsyncJobExecutor executor) {
- if(executor.getSyncSource() != null) {
+ @Override
+ public void releaseSyncSource() {
+ AsyncJobExecutionContext executionContext =
AsyncJobExecutionContext.getCurrentExecutionContext();
+ assert(executionContext != null);
+
+ if(executionContext.getSyncSource() != null) {
if(s_logger.isDebugEnabled()) {
- s_logger.debug("Release sync source for job-" +
executor.getJob().getId() + " sync source: "
- + executor.getSyncSource().getContentType() + "-"
- + executor.getSyncSource().getContentId());
+ s_logger.debug("Release sync source for job-" +
executionContext.getJob().getId() + " sync source: "
+ + executionContext.getSyncSource().getContentType() +
"-"
+ + executionContext.getSyncSource().getContentId());
}
- _queueMgr.purgeItem(executor.getSyncSource().getId());
- checkQueue(executor.getSyncSource().getQueueId());
- }
- }
-
- private void checkQueue(long queueId) {
- while(true) {
- try {
- SyncQueueItemVO item = _queueMgr.dequeueFromOne(queueId,
getMsid());
- if(item != null) {
+ _queueMgr.purgeItem(executionContext.getSyncSource().getId());
+ checkQueue(executionContext.getSyncSource().getQueueId());
+ }
+ }
+
+ private void checkQueue(long queueId) {
+ while(true) {
+ try {
+ SyncQueueItemVO item = _queueMgr.dequeueFromOne(queueId,
getMsid());
+ if(item != null) {
if(s_logger.isDebugEnabled()) {
s_logger.debug("Executing sync queue item: " +
item.toString());
- }
-
- executeQueueItem(item, false);
- } else {
- break;
- }
- } catch(Throwable e) {
- s_logger.error("Unexpected exception when kicking sync
queue-" + queueId, e);
- break;
- }
- }
- }
-
- private Runnable getHeartbeatTask() {
- return new Runnable() {
+ }
+
+ executeQueueItem(item, false);
+ } else {
+ break;
+ }
+ } catch(Throwable e) {
+ s_logger.error("Unexpected exception when kicking sync
queue-" + queueId, e);
+ break;
+ }
+ }
+ }
+
+ private Runnable getHeartbeatTask() {
+ return new Runnable() {
@Override
- public void run() {
+ public void run() {
try {
- List<SyncQueueItemVO> l =
_queueMgr.dequeueFromAny(getMsid(), MAX_ONETIME_SCHEDULE_SIZE);
- if(l != null && l.size() > 0) {
- for(SyncQueueItemVO item: l) {
+ List<SyncQueueItemVO> l =
_queueMgr.dequeueFromAny(getMsid(), MAX_ONETIME_SCHEDULE_SIZE);
+ if(l != null && l.size() > 0) {
+ for(SyncQueueItemVO item: l) {
if(s_logger.isDebugEnabled()) {
s_logger.debug("Execute sync-queue item: " +
item.toString());
}
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/server/src/com/cloud/async/SyncQueueManager.java
----------------------------------------------------------------------
diff --cc server/src/com/cloud/async/SyncQueueManager.java
index fb4f2d3,2641a10..80ca7a7
--- a/server/src/com/cloud/async/SyncQueueManager.java
+++ b/server/src/com/cloud/async/SyncQueueManager.java
@@@ -20,13 -20,14 +20,13 @@@ import java.util.List
import com.cloud.utils.component.Manager;
-
-public interface SyncQueueManager extends Manager {
- public SyncQueueVO queue(String syncObjType, long syncObjId, String
itemType, long itemId, long queueSizeLimit);
- public SyncQueueItemVO dequeueFromOne(long queueId, Long msid);
- public List<SyncQueueItemVO> dequeueFromAny(Long msid, int maxItems);
- public void purgeItem(long queueItemId);
+public interface SyncQueueManager extends Manager {
+ public SyncQueueVO queue(String syncObjType, long syncObjId, String
itemType, long itemId, long queueSizeLimit);
+ public SyncQueueItemVO dequeueFromOne(long queueId, Long msid);
+ public List<SyncQueueItemVO> dequeueFromAny(Long msid, int maxItems);
+ public void purgeItem(long queueItemId);
public void returnItem(long queueItemId);
-
+
public List<SyncQueueItemVO> getActiveQueueItems(Long msid, boolean
exclusive);
public List<SyncQueueItemVO> getBlockedQueueItems(long thresholdMs,
boolean exclusive);
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/server/src/com/cloud/async/SyncQueueManagerImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/server/src/com/cloud/server/ManagementServerImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2ee8fd21/server/src/com/cloud/storage/VolumeManagerImpl.java
----------------------------------------------------------------------