7921 Commits

Author SHA1 Message Date
Edison Su
70b2c0150d rebase to spring changes 2013-10-25 18:15:36 -07:00
Edison Su
51a8086cf6 Merge branch 'pluggable_vm_snapshot'
Conflicts:
	client/tomcatconf/applicationContext.xml.in
	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/SnapshotTest.java
	engine/storage/integration-test/test/resources/storageContext.xml
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
	server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java
2013-10-25 16:47:17 -07:00
Darren Shepherd
ad74948480 Move LockMasterListener initialization to system context
This reverts commit d178b25daa484dda44bb34e63cb719d1c3cc1519 and moves
the initialization to the system context, which really where it should have
been from the beginning.
2013-10-25 15:11:47 -07:00
Edison Su
a6ce66e55a move a lot of code into vmsnapshot strategy
fix compile

fix compile

add vm_snapshot_details table in db

add vmsnapshot test cases
2013-10-25 15:09:04 -07:00
Laszlo Hornyak
56f1277339 fix master build
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-25 23:54:10 +02:00
Alena Prokharchyk
300f626d42 Renamed ResourceDetailDaoImpl to ResourceDetailDaoBase 2013-10-25 14:21:20 -07:00
Alena Prokharchyk
aa9f8e64ae Resource details: added way of generic access of resource DAO based on the resourceType passed in (was hardcoded before) 2013-10-25 11:57:17 -07:00
Alena Prokharchyk
0fb4d9d5a2 Made all resource details DAOs (nic_details, user_vm_details, template_details, volume_details, service_offering_details) extend from the same base class as although details are being stored in diff tables, those tables have the same structure and same accessors. 2013-10-25 10:56:19 -07:00
Darren Shepherd
a77435dab5 Add missing extensible type registries
The following types were not setup to discover extensions

com.cloud.network.element.FirewallServiceProvider
com.cloud.network.element.PortForwardingServiceProvider
com.cloud.network.element.StaticNatServiceProvider
com.cloud.network.element.NetworkACLServiceProvider
com.cloud.network.element.LoadBalancingServiceProvider
com.cloud.network.element.Site2SiteVpnServiceProvider
2013-10-24 20:20:55 -07:00
Sheng Yang
1528725949 CLOUDSTACK-754: Enable Remote Access VPN for VPC
With integration smoke test case.
2013-10-24 17:34:41 -07:00
Alena Prokharchyk
24725f8e21 ResourceDetails:
1) Added support for Zone resource details
2) Renamed DcDetailsDao to DataCenterDetailsDao to follow the CS name convention for DataCenter related classes
2013-10-24 15:54:49 -07:00
Darren Shepherd
d178b25daa Move LockMasterListener initialization to earlier in the code
This is not perfect fix but should address 99% of the issues.  The only
time an issue could happen is if something in the bootstrap or system
context tried to lock a row.  Which shouldn't happen at the moment.  If
we find that to be an issue, the LockMasterListener could move to system
context and be inject here.
2013-10-24 15:35:21 -07:00
Alena Prokharchyk
765832a5cf CLOUDSTACK-4649: added support to removeResourceDetail to remove details for UserVm/Templates
Conflicts:
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-24 10:34:21 -07:00
Wei Zhou
059e3beb28 CLOUDSTACK-4505: add ExpungeVM command to expunge a destroyed VM on demand 2013-10-24 11:52:00 +02:00
Alena Prokharchyk
2bb716efd8 ResourceMetaData (Resource details) fixes:
* changed name for TaggedResourceType enum to ResourceObjectType as this enum is used both by ResourceMetaData and ResourceTags code
* enhanced the enum with extra fields resourceTagsSupport (boolean) and metadataSupport identifying if the resource supports tags and/or metadata.
* cleanup unused @Inject objects from the ResourceMetaDataManager
2013-10-23 17:39:16 -07:00
Alena Prokharchyk
e52e7a5634 CLOUDSTACK-4874: rever the previous commits. Service offering details are already being returned in "serviceofferingdetails" field of the service offering response 2013-10-23 17:17:14 -07:00
Anthony Xu
b747549597 CLOUDSTACK-4649:
get VM details from DB

Anthony
2013-10-23 16:02:44 -07:00
Darren Shepherd
891b85d516 Add missing licenses 2013-10-23 15:20:08 -07:00
John Kinsella
45e4d4fc3b Summary: Updated sudoers approved commands for cloud user
Detail: Previously the cloud user has full password-less sudo access.
This commit changes that to only allow access to a specific list of
commands. Been tested in production on ACS 4.0 and 4.2 mangement servers.

BUG-ID: CLOUDSTACK-967
Bugfix-for:
Reviewed-by:
Reported-by:
Signed-off-by: John Kinsella <jlk@stratosec.co> 1382560936 -0700
2013-10-23 13:42:16 -07:00
Darren Shepherd
c9101966e0 Added StorageStrategyFactory to centralize and deduplicate some logic 2013-10-23 12:40:41 -07:00
Darren Shepherd
81d01369d7 Merge commit 'df728fcf41ba0dfddabfaadea8cbcb77d18bfa96'
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-10-23 12:31:53 -07:00
Chris Suich
0ed7ebd7e7 Squashed & merged commit of the following:
commit c9ee0d12e191e803fb341f3f96e95ca434a36f6c
Author: Wei Zhou <w.zhou@leaseweb.com>
Date:   Wed Oct 23 16:55:10 2013 +0200

    CLOUDSTACK-4931, CLOUDSTACK-4937: setDetails to user VMs only
    (cherry picked from commit a94acc5a43aeaf5f18f1912e2653a92f6041a6e5)

commit fe1586c71377bc6d219db2dcf088c40b65dd1fc4
Author: Anthony Xu <anthony.xu@citrix.com>
Date:   Tue Oct 22 11:20:27 2013 -0700

    CLOUDSTACK-4649:
            vm sync tracks the pv driver version for xenserver

     Anthony

commit 56a218f66eda540b4b4b04030ee71fc6863f8532
Author: Anthony Xu <anthony.xu@citrix.com>
Date:   Mon Oct 21 16:10:07 2013 -0700

    CLOUDSTACK-4649:
        xs 6.1/6.2 introduce the new virtual platform, so there are two virtual platforms, windows PV driver version must match virtual platforms,
    this patch tracks PV driver versions in vm details and template details.

    Anthony

commit 4e85d28c678a6f96b5b70d8d33fc60f9d1ea3df6
Author: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Date:   Mon Oct 21 21:17:33 2013 +0200

    removed unused static field

    - s_httpClientManager was not used

    Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>

commit d4121fa26023db236f7396cea455ef090672ae9a
Author: Chris Suich <chris.suich@netapp.com>
Date:   Tue Oct 22 10:45:22 2013 -0400

    Updated DataMotionServiceImpl and ApiResponseHelper based on review feedback.

commit aaf026e1e4204d405bcda2ae4f1a01b1d0f7e7cb
Author: Chris Suich <chris.suich@netapp.com>
Date:   Thu Oct 17 14:27:12 2013 -0400

    Added context to strategy sorting error responses
    Added TODOs for DRYing out pickStrategy() overloading

commit a221f4aa3fb2ddc255bc35cf753f98f88f5bf44e
Author: Chris Suich <chris.suich@netapp.com>
Date:   Wed Oct 16 09:57:28 2013 -0400

    Updated inefficient strategy sorting/selection
    Removed unnecessary canRevertSnapshot from PrimaryDataStoreDriver
    Other general cleaup and fixes from reviews

commit 7d58949c6a1b7e853e891b59387a9620e8cd7a91
Author: Chris Suich <chris.suich@netapp.com>
Date:   Mon Oct 14 14:01:22 2013 -0400

    Added volume snapshot revert capability to SnapshotResponse
    Updated UI to hide/show snapshot revert action per snapshot

Signed-off-by: Edison Su <sudison@gmail.com>
2013-10-23 12:21:43 -07:00
Laszlo Hornyak
4b530c874f Safe properties loader
- new utility method introduced in PropertiesUtil to load properties objects from files
- RegionManagerImpl modified to use the utility method
- Tests added for both

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-23 20:50:00 +02:00
Darren Shepherd
e3280bdba2 Merge remote-tracking branch 'origin/spring-modularization'
Conflicts:
	client/tomcatconf/applicationContext.xml.in
	client/tomcatconf/nonossComponentContext.xml.in
	client/tomcatconf/simulatorComponentContext.xml.in
	framework/db/src/com/cloud/utils/db/Transaction.java
	plugins/hypervisors/simulator/src/com/cloud/agent/manager/MockAgentManagerImpl.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
2013-10-23 11:14:42 -07:00
Darren Shepherd
80509f9ba2 Update to new Transaction API 2013-10-23 11:03:47 -07:00
Darren Shepherd
205a77a5bb Merge remote-tracking branch 'origin/txn-refactor'
Conflicts:
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2013-10-23 10:40:44 -07:00
Darren Shepherd
edeaf98117 Cleaner and more type safe Transaction API for checked exceptions 2013-10-23 10:02:43 -07:00
Anthony Xu
e33ae74067 CLOUDSTACK-4649:
xs 6.1/6.2 introduce the new virtual platform, so there are two virtual platforms, windows PV driver version must match virtual platforms,
this patch tracks PV driver versions in vm details and template details.

Anthony
2013-10-22 17:54:51 -07:00
Alena Prokharchyk
d79135f4e6 CLOUDSTACK-4649: allow to update template details with addResourceDetails API
Conflicts:
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-22 14:01:54 -07:00
Alena Prokharchyk
3ec14c4baf CLOUDSTACK-4649: addResourceDetail - added support for userVm resource. Now "hypervisortoolsversion" get stored in user_vm_details table, and being returned as a part of listVirtualMachines call ("details" parameter)
Conflicts:
	api/src/org/apache/cloudstack/api/response/UserVmResponse.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDao.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
	server/src/com/cloud/api/query/vo/UserVmJoinVO.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-22 13:50:43 -07:00
Alena Prokharchyk
8685661339 CLOUDSTACK-4743: durning the accountCleanup, never attempt to release the public ips when the guest networks of the account failed to cleanup 2013-10-22 09:48:46 -07:00
dhoogland
c0c46268ac CLOUDSTACK-4328 httpclose/mode as keepAliveEnabled 2013-10-22 12:44:23 +02:00
alex@alexhitchins.com
7eb05fa221 Bug 4071 - Fixed Typo In Default Text 2013-10-22 05:27:06 -04:00
Alena Prokharchyk
25d6e6ec66 CLOUDSTACK-4894: DestroyVirtualMachine API - added "expunge" admin-only parameter. When passed as true, the vm gets expunged immediately (false by default to preserve the initial command behavior)
Conflicts:
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/command/user/vm/DestroyVMCmd.java
2013-10-21 11:11:42 -07:00
Wei Zhou
90521a3e15 allow Domain Admin to list usage records in the domain 2013-10-21 14:30:17 +02:00
Wei Zhou
cd72e2afee fix a bug in listServiceOffering with vmId 2013-10-21 14:05:53 +02:00
Hugo Trippaers
7623c4527a Fix wome warning due to conflicting xml libraries 2013-10-21 09:45:31 +01:00
Murali Reddy
a3b1a49c30 CLOUDSTACK-3911: [PortableIP] there is no check while adding a zone
public range to see whether the same VLAN exists in portable IP range.

added check to enusre a VLAN id used for a public IP range is not used
for portable ip range

Conflicts:
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
2013-10-18 17:34:03 +05:30
Koushik Das
0c1800f70f CLOUDSTACK-4681: data disk with local disk offering are geting created on shared storage
The cluster and zone wide storage pool allocators returned shared pools even for volumes meant to be on local storage pool.
If the VM uses local disk then cluster and zone storage allocators should not handle it and return null or empty list.

Also fixed the deployment planner to avoid a cluster if
a. avoid set returned by storage pool allocators is empty OR
b. all local or shared pools in a cluster are in avoid state

Conflicts:
	engine/storage/src/org/apache/cloudstack/storage/allocator/ClusterScopeStoragePoolAllocator.java
	engine/storage/src/org/apache/cloudstack/storage/allocator/ZoneWideStoragePoolAllocator.java
2013-10-18 17:10:17 +05:30
Damodar Reddy
a92095a4a6 CLOUDSTACK-4811:Fixed zone creation wizard is allowing to accept wrong sub net mask which is cauing wrong cidr value for a given ip range
Signed-off-by: Jayapal <jayapal@apache.org>
2013-10-18 15:51:51 +05:30
Murali Reddy
aaa99cd9de CLOUDSTACK-4596: CloudStack is currently allowing same ip range to be
defined in different VLANs across public and portable ranges

added checks to restric same ip range to be configure as both public ip
range and portable ip range
2013-10-18 15:38:41 +05:30
Sheng Yang
85dc65c7f7 CLOUDSTACK-4786: Reset Redundant Router priority after all the routers are stopped
This patch would reset the priority in such condition:
1. All redundant routers are stopped, e.g. due to network GC
2. User start one VM in the network
3. The routers would be brought up with reseted priority(100 & 99).

This would resolve the issue of network GC result in lower limit of redundant router priority reached.
2013-10-17 20:00:48 -07:00
Sheng Yang
c3df348264 CLOUDSTACK-4836: Fix VPN user are not programmed after restart network
Also refactor VPN code.
2013-10-17 17:55:52 -07:00
Sheng Yang
ab124a17fa Remove Network Parameter for VPN service provider
It's unnecessary since RemoteAccessVpnVO already have network ID binding with it.
2013-10-17 17:55:47 -07:00
Darren Shepherd
9cbb309d6b Refactor missed classes 2013-10-17 16:00:11 -07:00
Alena Prokharchyk
aa570783e8 Added resource tag support for Zone 2013-10-17 15:26:28 -07:00
Min Chen
25acfbad78 CLOUDSTACK-4816:provide configurable option to choose single vs
multipart upload to S3 object storage based on object size.
2013-10-17 10:28:59 -07:00
Koushik Das
9fc471dddd CLOUDSTACK-4551: Migrating the data volume from NFS to local storage ,underlying disk offering is not changed.
Even though the volume may get migrated from shared to local storage, it is not possible to update the disk offering.
The fix is to disallow migration from shared to local store.
2013-10-17 15:56:33 +05:30
Koushik Das
e58bef22c1 CLOUDSTACK-4682: VMs are getting deployed with shared service offering and local compute offering
VM deployment is fine, issue is in attach volume where all possible scenarios are not handled.
The following needs to be logic of attached volume:
1. if data volume scope is zone then allow attach (this is already there)
2. if data volume scope is cluster
   a. if root volume scope is host, allow if both are in same cluster (already there)
   b. if root volume scope is zone, allow if vm and data volume in same cluster (fixed as part of this commit)
3. if data volume scope is host allow if vm and data volume in same host (fixed as part of this commit)
2013-10-17 15:27:25 +05:30
Darren Shepherd
711ad386d1 Random cleanup 2013-10-16 16:18:49 -07:00