Commit Graph

703 Commits

Author SHA1 Message Date
Rajesh Battala 19e9849d86 Enabled the traffic lable support the hyperv hypervisor type. Modified the physical_network_traffic_types table to introduce hyperv_network lable column.
Modified associated VO's and impls classes. Modified the List/Update/Add TrafficType command api's and response classes.
Fixed the Unit tests
2013-11-08 20:21:18 +05:30
Syed 0076307863 Squashed merge of Ssl Termination feature
Bug: https://issues.apache.org/jira/browse/CLOUDSTACK-4821
FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/SSL+Termination+Support

This patch implements the SSL offload feature for loadbalancers
and includes the implementaion for this to work with Netscaler.

The following are the new API's that this patch adds

uploadSslCert
deleteSslCert
listSslCert
assignCertToLoadBalancer
removeCertFromLoadBalancer

Unit tests are also included in the patch.
2013-11-08 16:49:16 +05:30
Sebastien Goasguen b36ed1289a CLOUDSTACK-4998 additional bug fixed 2013-11-08 10:39:49 +01:00
Edison Su 0997ccac22 fix compile 2013-11-07 16:56:41 -08:00
Edison Su c233492bfc Add quiencevm option on createsnapshotcmd 2013-11-07 14:57:05 -08:00
Kishan Kavala 3f5b8f7063 CLOUDSTACK-4793 : Added UpgradeRouterTemplate API. Added filters to listRouters API. listRouters response includes verion and required upgrade flag. Min VR version is checked before sending commands to router 2013-11-07 19:49:05 +05:30
Bharat Kumar 7095ea2b5e CLOUDSTACK-4738 Dynamic compute offering.
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-07 12:41:20 +05:30
Mike Tutkowski 10c513a259 CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-06 21:02:39 -07:00
Hugo Trippaers a7201a81b2 The VPC offering has the option internaly to specify the compute offering (service offering), expose this via the api.
Added a field to the command for serviceOfferingId and changed the internal interface to accept the service offering as parameter

Applied automated code cleanup
2013-11-06 22:13:00 +01:00
Will Stevens 8f8ad3f38e Squashed commit of the Palo Alto Networks firewall integration plugin.
This patch adds a network plugin to support Palo Alto Networks firewall (their appliance and their VM series firewall).

More information in the FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Palo+Alto+Firewall+Integration

Features supported are:
- List/Add/Delete Palo Alto service provider
- List/Add/Delete Palo Alto network service offering
- List/Add/Delete Palo Alto network with above service offering
- Add instance to the new network (creates the public IP and private gateway/cidr on the PA as well as the source nat rule)
- List/Add/Delete Ingress Firewall rule
- List/Add/Delete Egress Firewall rule
- List/Add/Delete Port Forwarding rule
- List/Add/Delete Static Nat rule
- Supports Palo Alto Networks 'Log Forwarding' profile globally per device (additional docs to come)
- Supports Palo Alto Networks 'Security Profile Groups' functionality globally per device (additional docs to come)

Knowns limitations:
- Only supports one public IP range in CloudStack.
- Currently not verifying SSL certificates when creating a connection between CloudStack and the Palo Alto Networks firewall.
- Currently not tracking usage on Public IPs.

Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-11-06 10:08:22 -08:00
Harikrishna Patnala a286dec098 CLOUDSTACK-4908: CPU socket count of host Adding cpu socket count of the host in hostresponse
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-05 16:12:36 +05:30
Alena Prokharchyk 7a26894eb0 Changes to @Parameter - added RoleType[] authorized() field. The field defines who is authorized to put the parameter to the call. If the person is not authorized, the parameter will be ignored.
Also fixed CLOUDSTACK-5024 - added storageId to the list of the request parameters (available to the Root admin only)
2013-11-01 22:48:11 -07:00
Edison Su c5bec6b336 add quiescevm in createvmsnapshotcmd 2013-10-31 16:45:05 -07:00
Alena Prokharchyk 78b1ac4126 CLOUDSTACK-3868: fixed "count" param in listUsageRecords API to return the actual number of records matching the search criteria. Used to return the wrong value - the number of records per page
Conflicts:
	server/src/com/cloud/usage/UsageServiceImpl.java
	utils/src/com/cloud/utils/db/GenericDaoBase.java
2013-10-31 15:25:57 -07:00
Sheng Yang 3205cd42b5 CLOUDSTACK-730: Site-to-site VPN between VPC VR to VR
Now VPN connection can be created as "passive", which would enable the ability
of remote peer initiate the connection. So it's possible for VPC VR to
establish the connection to another VPC VR of CloudStack.

Test case also included.

The test case would create 2 vpcs and using VPN to connect them.
2013-10-30 19:30:22 -07:00
Sebastien Goasguen ee5a3964aa CLOUDSTACK-4998: fix assignvm response string 2013-10-30 04:09:04 -04:00
Alena Prokharchyk 591dcd1d1c ResourceDetails: added "display" field to a bunch of VOs - determines whether the detail should be returned to the regular user 2013-10-29 09:18:11 -07:00
Min Chen 6be228a438 CLOUDSTACK-4024:Provide a way to upgrade from existing NFS secondary
storage to S3.
2013-10-28 21:01:31 -07:00
Darren Shepherd 9f7b4884a7 Make commands.properties optional for non-ACS code
Currently any new API extension to CloudStack must edit
commands.properties to add the appropriate ACLs.  This generally works
fine for ACS as we control the contents of that file and distribute
all the code ourself.  The hang up comes when somebody develops code
outside of ACS and want to add their code to an existing ACS
installation.  The Spring work that has been done has made this much
easier, but you are still required to manually edit
commands.properties.  This change introduces the following logic.

First check commands.properties for ACL info.  If ACL info exists, use
that to authorize the command.  If no ACL information exists (ie
null), then look at the @APICommand annotation.  The defaults of
@APICommand will provide no ACL info.  If the @APICommand annotation
provides no ACL info, use that.
2013-10-25 16:31:55 -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
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
Wei Zhou 059e3beb28 CLOUDSTACK-4505: add ExpungeVM command to expunge a destroyed VM on demand 2013-10-24 11:52:00 +02:00
Darren Shepherd 63e46ad1d0 Make system CallContext load user on demand
Before every thread would hit the database once at the start to
load the system account and user.  The loaded objects are almost never
used.  This change optimizes the behavior and lazy loads the system
user and account object.
2013-10-23 23:09:58 -07: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
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 a94acc5a43)

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
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
Laszlo Hornyak 847274f31f Some StringBuffers replaced by StringBuilders
StringBuffers replaced by StringBuilders to avoid unnecesary synchronization overhead.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-22 23:35:08 +02: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
dhoogland c0c46268ac CLOUDSTACK-4328 httpclose/mode as keepAliveEnabled 2013-10-22 12:44:23 +02:00
Harikrishna Patnala 54e365d00b CLOUDSTACK-4493: registerSSHKeyPair API doc contains wrong API response (private key) Changing the response object of register and list ssh keypairs APIs
Signed-off-by: Koushik Das <koushik@apache.org>

Conflicts:
	api/src/org/apache/cloudstack/api/command/user/ssh/CreateSSHKeyPairCmd.java
2013-10-22 10:43:00 +05:30
Alena Prokharchyk 1ff5994a1c RemoveResourceDetail API - fixed response name to be lowercase to follow the rest of CS APIs' convention 2013-10-21 21:01:50 -07: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
Alena Prokharchyk aa570783e8 Added resource tag support for Zone 2013-10-17 15:26:28 -07:00
Alena Prokharchyk 818e6f98fd CLOUDSTACK-4874: added resource tags to the Service offering object. Tags can be created by using createTag API command; you can list service offerings by tags when pass "resourceTag" parameter to the listServiceOfferings call 2013-10-15 17:08:55 -07:00
Chris Suich 350c94474b Updates to revertSnapshot API Added revertSnapshot API action to UI 2013-10-14 15:19:51 -07:00
Laszlo Hornyak 87c1b357f2 BaseCmd not used methods
These private methods were only calling each other:
- writeNameValuePair
- writeObjectArray
- writeSubObject
- escapeXml
- escapeJSON

public method requireXmlEscape was only called from these methods, it was never overridden

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-12 23:26:20 +02:00
Laszlo Hornyak 6df77ec0ce BaseCmd.buildResponse methods removed
Both buildResponse methods were abandoned

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-12 19:42:50 +02:00
Alena Prokharchyk 90cc0d8f01 VolumeResponse: added storageId to the response (returned to admin only) as this parameter is being passed in migrateVolume/updateVolume API requests, so have to return it in the response as well 2013-10-10 16:51:47 -07:00
Alena Prokharchyk c4084a7c34 Fixes for resource details code: 1) Fixed the NPE happening when the resource detail couldn't be located by the key passed through API 2) Added ResourceDetails interface, made all resource details VO objects to implement it. 2013-10-10 11:13:47 -07:00
Nitin Mehta a6852a340d CLOUDSTACK-3101:
fix listDiskOffering to not display offerings to the normal users with forDisplay=false. But display them to ROOT Admin irrespective of the flag.
Added display flag in the updateVolume/offeirng commands
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-04 18:19:07 -07:00
Nitin Mehta f8976a41ce CLOUDSTACK-3101:
fix listVolumes to not display volumes to the normal users with forDisplay=false. But display volumes to ROOT Admin irrespective of the flag.
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-04 16:16:28 -07:00
Edison Su a129fe4e66 add missing files 2013-10-04 14:17:49 -07:00
Chris Suich 180cfa19e8 Refactor Storage Related Resource Code
These changes are a joint effort between Edison and I to refactor some
of the code around snapshotting VM volumes and creating
templates/volumes from VM volume snapshots. In general, we were working
towards allowing PrimaryDataStoreDrivers to create snapshots on primary
storage and not requiring the snapshots to be transferred to secondary
storage.

High level changes:
-Added uuid to NfsTO, SwiftTO & S3TO to cut down on the requirement of
PrimaryDataStoreTO and ImageStoreTO which don't really serve much of a
purpose
-Initial work towards enable reverting VM volume from snapshots
-Added hypervisor commands for introducing and forgetting new hypervisor
objects (snapshots, templates & volumes)

Signed-off-by: Edison Su <sudison@gmail.com>
2013-10-04 13:06:42 -07:00
Nitin Mehta 73f6843840 CLOUDSTACK-4803:
Return "path" parameter as a result of all Volume calls. But to the admin only
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-03 18:00:42 -07:00
Darren Shepherd 67186429e1 Spring Modularization
ACS is now comprised of a hierarchy of spring application contexts.
Each plugin can contribute configuration files to add to an existing
module or create it's own module.

Additionally, for the mgmt server, ACS custom AOP is no longer used
and instead we use Spring AOP to manage interceptors.
2013-10-02 15:41:04 -07:00
Darren Shepherd aed5e9dc2a Add Manage Context framework
The managed context framework provides a simple way to add logic
to ACS at the various entry points of the system.  As threads are
launched and ran listeners can be registered for onEntry or onLeave
of the managed context.  This framework will be used specifically
to handle DB transaction checking and setting up the CallContext.
This framework is need to transition away from ACS custom AOP to
Spring AOP.
2013-10-02 13:09:52 -07:00