Commit Graph

160 Commits

Author SHA1 Message Date
Nitin Mehta c11dbad9c9 merge master 2013-05-11 15:28:43 +05:30
Hugo Trippaers a28a19962a CLOUDSTACK-2092 Don't push IP to the Nicira Controller when it is about
to be released.
2013-04-19 16:28:53 +02:00
Hugo Trippaers 368a5d5a9a Prachi's commit 20a747601c introduced a
new call to network.getPhysicalNetworkId() which wasn't mocked yet in
the nvp plugin unittests.(cherry picked from commit aea5b268b4)

Signed-off-by: Hugo Trippaers <trippie@gmail.com>
2013-02-21 14:08:56 +01:00
Prachi Damle ec1f48a4b2 CLOUDSTACK-1331: Upgrade fails for a 2.2.14 Zone having multiple guest networks using network_tags and Public Vlan
Changes:
-We need to update the physical_network_id for public vlans.
-Physical network ID should be retrieved from the network if present.
2013-02-20 11:23:32 -08:00
Rohit Yadav 80d58b6c73 CLOUDSTACK-1317: Bump CloudStack package version to 4.2.0-SNAPSHOT in all poms
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-02-20 16:42:56 +05:30
Kelven Yang 176523254e Improve component lifecycle management with system run-level concept 2013-01-30 15:21:02 -08:00
Kelven Yang 45a92ba369 Fix the initialization of management server 2013-01-23 15:29:41 -08:00
Edison Su 4fbecf15ec add unit test back, primary storage life cycle is tested 2013-01-21 17:01:00 -08:00
Alex Huang 10d9c019a9 All merge conflicts resolved 2013-01-18 12:14:57 -08:00
Koushik Das 070856affd CLOUDSTACK-988: HV version must be updated in hypervisor_version column of host table HV version is stored in hypervisor_version column in host table wherever present Also correctly populating version column in host table with resource file version
Signed-off-by: Koushik Das <koushik.das@citrix.com>
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-01-18 16:49:52 +05:30
Chiradeep Vittal 56cd809600 Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/incubator-cloudstack
Re-merge with network-refactor
2013-01-17 11:32:49 -08:00
Min Chen 3dabd5fbf3 Clean up ApiServer, ApiServlet and ApiDispatcher flow to handle various CloudRuntimeException
and CloudException in one place, and Introduced ApiErrorCode to handle CloudStack API error
code to standard Http code mapping.

Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-16 22:36:34 -08:00
Chiradeep Vittal cadca5fc0c Merge branch 'master' into network-refactor-merge2
Conflicts:
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/element/RemoteAccessVPNServiceProvider.java
	plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
	server/src/com/cloud/acl/DomainChecker.java
	server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-01-16 19:17:14 -08:00
Kelven Yang 497dcd5044 Get rid of PlugService annotation, replace it with Spring standard injection in command classes 2013-01-16 18:44:44 -08:00
Kelven Yang 2be270de89 Separate loadable components like Gurus, Elements, Adapters to componentContext.xml 2013-01-16 16:33:59 -08:00
Rohit Yadav bca2c928e8 PluggableService: Fix interface definition
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-14 19:01:26 -08:00
Kelven Yang f57dcaa820 Loadable components to be in separted Spring component bundling 2013-01-11 15:33:15 -08:00
Alex Huang 1294cdc701 pulled from master 2013-01-10 16:01:01 -08:00
Rohit Yadav c4e890c55d PluggableService: Refactor method to return map of key value pairs
- Makes plugins self contained so they decide their properties file format
- PluggableService creates the contract that implementing entity will return a
  properties map which is apiname:rolemask (both are strings)

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-10 15:55:02 -08:00
Kelven Yang 0bcebd33b6 Fix problems after merge 2013-01-09 17:36:53 -08:00
Chiradeep Vittal 0c3001530f Network-refactor: move readonly interface NetworkModel into api project so that plugins can stop depending on the server project
Network-refactor: accidentally injected NetworkModel twice (revert one of them)

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 5a830c4db0 Network-refactor: Refactor NetworkManager into NetworkModel and NetworkManager.
NetworkManager's exclusive focus is now
 - handling plugins during orchestration, and
 - to deal with ip address allocation.
Those classes that used to refer to NetworkManager to get access to the datamodel now refer to NetworkModel

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Alex Huang cf8de7ee17 Removed all the .project files 2013-01-08 14:11:00 -08:00
Alex Huang 30f2565d98 Merge branch 'api_refactoring' into javelin 2013-01-08 12:36:04 -08:00
Rohit Yadav 596f9d0905 api: Annotate netscaler apis, remove IdentityMapper from everywhere
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 17:09:40 -08:00
Rohit Yadav a2f8f42575 nicira-nvp: Annotate nvp plugin, remove IdentityMapper
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 16:33:40 -08:00
Chiradeep Vittal e37f458a8d Rationalize the interface by injecting all service providers by the service provider interface instead of assuming everybody implements NetworkElement. This is step 2 and includes all the plugins
import cleanups - remove unneeded and add explicit classes

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-04 15:13:47 -08:00
Rohit Yadav edb00bb613 Merge branch 'master' into api_refactoring 2013-01-03 08:32:56 -08:00
Hugo Trippaers 282eb5fcf5 Summary: Unittest for nicira plugin
More unittests for the Guru

Add unittests for the Element
2013-01-03 11:57:14 +01:00
Hugo Trippaers 00847482cc Summary: Small fixes for issues found during unittests 2013-01-03 11:56:50 +01:00
Hugo Trippaers 6cf0c5683d Summary: Make canHandle protected
Change access to canHandle so it's easier to unittest. 

Make a note that answers can be null if the host is down, there should
be a way to deal with this, but for now an NPE is an adequate indication
that something is wrong.
2013-01-03 11:56:26 +01:00
Hugo Trippaers 9122809e00 Summary: nothing to see here, move along
Fix for a stupid mistake.
2013-01-03 11:56:02 +01:00
Rohit Yadav d235859168 Fix PluggableService to provide interface for ACL adapters etc. to get configs
- Fix interface to return array of strings, or filenames
- Fix StaticRoleBased ACL adapter to process config files by going through all pluggable services
- Refactor interface names

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-02 16:29:39 -08:00
Rohit Yadav 774cb29b0c api: Annotate all remaining cmd classes with APICommand name field
Automates name field filling using following python program which reads from
various *commands.properties.in files and populates name fields based on the
name cmd class mapping defined in them.

import os
search_pattern = "@APICommand("
pattern_len = len(search_pattern)
prop_files = [
"client/tomcatconf/cisconexusvsm_commands.properties.in",
"client/tomcatconf/f5bigip_commands.properties.in",
"client/tomcatconf/junipersrx_commands.properties.in",
"client/tomcatconf/netapp_commands.properties.in",
"client/tomcatconf/netscalerloadbalancer_commands.properties.in",
"client/tomcatconf/nicira-nvp_commands.properties.in",
"client/tomcatconf/simulator_commands.properties.in",]
file_prefixes = [
"plugins/hypervisors/vmware/src/",
"plugins/network-elements/f5/src/",
"plugins/network-elements/juniper-srx/src/",
"plugins/file-systems/netapp/src/",
"plugins/network-elements/netscaler/src/",
"plugins/network-elements/nicira-nvp/src/",
"plugins/hypervisors/simulator/src/",]
counter = 0
for prop_file in prop_files:
    f = open(prop_file, 'r')
    data = f.read()
    f.close()
    file_prefix = file_prefixes[counter]
    apis = filter(lambda x: x.strip()!='' and (not x.startswith('#')), data.split('\n'))
    for api in apis:
        api_name = api.split('=')[0].strip()
        cmd_name = file_prefix + api.split('=')[1].split(';')[0].replace('.', '/').strip() + ".java"
        if not os.path.exists(cmd_name):
            print cmd_name, api_name
        f = open(cmd_name, 'r')
        d = f.read()
        f.close()
        idx = d.find(search_pattern) + pattern_len
        new_str = d[:idx] + "name = \"%s\", " % api_name + d[idx:]
        f = open(cmd_name, 'w')
        f.write(new_str)
        f.close()
    counter += 1

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-28 01:28:47 -08:00
Rohit Yadav 7a7fe583e0 Rename Implementation annotation to APICommand
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-26 15:55:34 -08:00
Rohit Yadav 057ac12d23 Enforce InternalIdentity interface on all VO classes that impls long getId()
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-26 15:09:44 -08:00
Rohit Yadav 018b5215e0 api: Annotate apis in various plugins
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 18:03:23 -08:00
Rohit Yadav 1bd47d48ab api: Annotate some nicira apis
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 17:43:42 -08:00
Rohit Yadav 296b49c2f8 Merge branch 'master' into test-merge-api
Conflicts:
	api/src/com/cloud/agent/api/BackupSnapshotCommand.java
	api/src/com/cloud/agent/api/storage/PrimaryStorageDownloadCommand.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/resource/ResourceService.java
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/ResponseGenerator.java
	api/src/org/apache/cloudstack/api/response/SSHKeyPairResponse.java
	client/tomcatconf/commands.properties.in
	core/src/com/cloud/storage/SnapshotVO.java
	pom.xml
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade40to41.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	setup/db/create-schema.sql
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 13:54:46 -08:00
Min Chen 98b022a430 Remove IdentityProxy from plugin response classes.
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-19 13:09:02 -08:00
Hugo Trippaers 859412c1ce Fix headers
again....
2012-12-14 11:58:25 +01:00
Hugo Trippaers 2235776aed Unittests for NiciraNvpGuestNetworkGuru
These unittests do not depend on the componentlocator but instead are
completely dependent on mock objects. This ensures that they can be run
standalone without any requirements on the environment.

Includes some fixes to NiciraNvpGuestNetworkGuru and GuestNetworkGuru
2012-12-14 10:41:36 +01:00
Rohit Yadav e398b1e47a api: Refactor command and response classes to org.apache.cloudstack.api.*
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 19:23:24 -08:00
Hugo Trippaers 9c8eba1da3 Fix the tests
Note to self, surefire actually runs with assertions enabled where junit
inside eclipse doesn't. Sure surefire will mark tests as failed when an
assertion is triggered. Take care when mocking stuff.
2012-12-07 17:34:14 +01:00
Hugo Trippaers 2b74b6e827 Start removing the old ant build files
Removed all build.xml files from the plugins
2012-12-07 15:58:56 +01:00
Hugo Trippaers fa207d2b4d Add unittests for NiciraNvpApi
Added some unittests for the NiciraNvpApi. These tests mainly validate
the logic of the execute methods, which are the main thing in this
class. Other methods are basically wrappers around these functions.

Changed NiciraNvpApi to have a factory method for obtaining the
HttpMethod. This makes it easier to mock it.

Changed the executeMethods in NiciraNvpApi to protected so the unittests
have access.

Fixed a bug in NiciraNvpApi where releaseconnection was not called in
some cases.
2012-12-07 15:55:26 +01:00
Hugo Trippaers 1fbf2a2864 Fix bug in Port Forwarding
Nicira NVP can't handle a range of port when implementing port
forwarding, so return an error message when a rule is being implemented
that uses port ranges.

Include unittest to verify this behaviour
2012-12-06 16:50:56 +01:00
Hugo Trippaers cfd2a0bdf8 Fixes for some bug discovered while writing unittests
Rewritten handling for static nat and port forwarding, should make some
more sense now and the complex functions are split in smaller units.

Fix a small bug in Match

Add equals function to NatRule that ignores the uuid field.
2012-12-06 14:45:58 +01:00
Hugo Trippaers 22ef646b23 Add more unittests for NiciraNvpResource 2012-12-06 14:45:58 +01:00
Hugo Trippaers 48308ec070 Redoing NatRule usage and some fixes based on issues found while writing
unittests
2012-12-06 14:45:37 +01:00
Hugo Trippaers 700050a713 More unittests for NiciraNvpResource
Add some basic unittest for NatRule
2012-12-06 14:45:09 +01:00
Hugo Trippaers b0955e43ff Put the mockito version in the central version list 2012-12-06 14:42:59 +01:00
Rohit Yadav ba8e61bfb5 api_refactoring: for network api refactoring move interfaces so it works
Move ExternalNetworkDeviceManager to cloud-api, as server depends on cloud-api
The api refactoring of one of the api required this interface

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-05 14:53:16 -08:00
Rohit Yadav 6fc3bc3760 api_refactor: refactor vpn and vm apis
- Refactor VPN and VM APIs to admin and user pkgs
- Names space, org.apache.cloudstack
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 21:27:02 -08:00
Rohit Yadav 5edfc2760a refactor: remove redundant imports, fix trailing chars 2012-12-03 13:54:37 -08:00
Hugo Trippaers 0902f60c61 Quickly add the license header before Chip finds out. 2012-12-02 11:19:32 -08:00
Hugo Trippaers 751e74708e Setup unittests for the nicira nvp plugin
Changed the creation of the NiciraNvpApi to a factory method that can be
overridden by a mock object.

Setup two tests to test the configure function of the NiciraNvpResource
to test this factory method.
2012-12-02 10:50:14 -08:00
Hiroaki Kawai a28f4cac3c HttpClient needs releaseConnection method call
reviewboard: https://reviews.apache.org/r/8186/

Signed-off-by: Hugo Trippaers <trippie@gmail.com>
2012-11-29 20:23:30 +01:00
Hiroaki Kawai c8832cd4b6 Commit https://reviews.apache.org/r/8075/
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2012-11-19 12:02:26 +01:00
Kelven Yang cea8f3bf37 Switch inject annotation to javax and let ComponentLocator to recognize both the new and original inject annotation 2012-11-07 15:03:22 -08:00
Kelven Yang aab02e2743 Add Spring annotation to major components 2012-11-07 14:53:39 -08:00
Alex Huang 91e68b5f2c A bunch of .project changes again 2012-11-04 19:25:03 -08:00
Alex Huang f92ce72639 Correct dependency errors 2012-10-24 11:12:40 -07:00
Edison Su 059f605ace add more interfaces 2012-10-22 17:50:51 -07:00
Alena Prokharchyk 214bbf3ebd CLOUDSTACK-279: fixed deleteProject when executed by the regular user. Always pass System account as a caller when do account cleanup
Conflicts:

	api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java
	server/src/com/cloud/network/element/CiscoNexusVSMElement.java
	server/src/com/cloud/network/element/ElasticLoadBalancerElement.java
	server/src/com/cloud/network/element/F5ExternalLoadBalancerElement.java
	server/src/com/cloud/network/element/JuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/element/NetscalerElement.java
	server/src/com/cloud/network/element/OvsElement.java
	server/src/com/cloud/network/element/VpcJuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
	server/src/com/cloud/storage/StorageManager.java
2012-10-17 17:26:19 -07:00
Hugo Trippaers 28c31e3707 truncate names that are longer than 40 characters, this is the max
length nicira api accepts for display_name.
2012-10-17 13:29:03 +02:00
Hugo Trippaers a4a3194899 Fix license headers 2012-10-15 10:22:12 +02:00
Chip Childers b48d0d7d08 CLOUDSTACK-326: Removing extra license and README files
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-12 14:29:51 -04:00
Hugo Trippaers c07d6d28ee Merge branch 'nicira-l3support'
This commit merges the nicira-l3support branch with master. This
effectively adds nicira nvp l3 support to master. The NiciraNVP Provider
can support the following services with this modification: Connectivity,
SourceNat, StaticNat and PortForwarding

Testing done:
Create, Delete network offerings with Nicira Element
Use Gui to add, modify, remove Nicira Element and Provider
Provision, deprovision SourceNat networks
Provision, deprovision Portforwarding and StaticNat rules

Tested with Nicira NVP release 2.1.0, 2.2.0 and 2.2.1 (2.2.x recommended)
2012-10-12 14:15:17 +02:00
Hugo Trippaers 51f9a98871 Check all TODO and FIXME tasks 2012-10-12 12:02:54 +02:00
Hugo Trippaers ab8ba3d61d Implement the portforwarding code in the resource
Fix a small naming typo
2012-10-12 11:57:27 +02:00
Kelven Yang 5fee891162 merge from master 2012-10-11 17:42:25 -07:00
Hugo Trippaers 553a72047f Implement static nat handling 2012-10-11 18:13:47 +02:00
Hugo Trippaers 18e11ac0c8 These need to be objects instead of primitives otherwise they get
included by default during conversion to json.
2012-10-05 09:27:21 -07:00
Hugo Trippaers aa6355ffe6 Updated master to 4.1.0
mvn release:update-versions -DautoVersionSubmodules=true -Dnonoss -P
client,deps,developer  -DdevelopmentVersion=4.1.0-SNAPSHOT
2012-10-01 11:00:55 -07:00
Hugo Trippaers bb4dadaed8 small fixes 2012-10-01 10:12:59 -07:00
Hugo Trippaers c9b0b0b1a9 Add Nicira configuration to the UI 2012-09-30 23:33:37 -07:00
Hugo Trippaers c5634b9687 Wire the PortForwarding and StaticNat calls 2012-09-30 10:20:54 -07:00
Hugo Trippaers de41cb7cb5 Start implementing IpDeployer 2012-09-28 11:32:53 -07:00
Hugo Trippaers dd68a00338 Persist the uuid of the logical router once created 2012-09-27 22:16:11 -07:00
Hugo Trippaers af77912034 Keep naming consistent 2012-09-27 18:26:56 -07:00
Hugo Trippaers 8ba7749869 Prepare all capabilities we will be supporting
Remove the logical router if we are done with it.
2012-09-27 18:24:19 -07:00
Hugo Trippaers fe997651a6 Wired up the creation of the SourceNat router in the element 2012-09-27 15:34:53 -07:00
Hugo Trippaers bfc8da1082 Update Nicira Api to support L3 functionality 2012-09-25 15:51:48 -07:00
Jie Feng c9aa08350a [DOC] docbook conversion - choosing a deployment architecture 2012-09-13 16:12:06 -04:00
Alex Huang 1d0a10c69e Merged master over to javelin to get new poms and maven build 2012-09-05 14:31:24 -07:00
Kelven Yang 2300310243 Messaging facility initials for new architecture 2012-08-28 17:58:45 -07:00
olivier lamy fe8a01106b rename cloud-plugins to cloudstack-plugins 2012-08-27 16:53:51 +02:00
olivier lamy c68dd35b6e Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/incubator-cloudstack 2012-08-27 16:44:18 +02:00
olivier lamy a06ed5728c remove intermediate parent poms 2012-08-27 16:43:24 +02:00
Hugo Trippaers e2b814d045 If there already is an entry in the nic mapping table for a starting VM,
try to reconcile with the Nicira Controller.
2012-08-27 13:41:27 +02:00
olivier lamy 3aa469da2a groupdId is now org.apache.cloudstack 2012-08-25 09:20:21 +02:00
olivier lamy 5ef60aceb1 %s/tab/ws/ 2012-08-25 00:03:23 +02:00
Darren Shepherd 4a4007e652 Add license 2012-08-24 11:18:54 -07:00
Darren Shepherd ebc0fa458a * Maven 3 support
* Pretty Format POM's
* AWS API compiles now
2012-08-24 11:18:54 -07:00
Darren Shepherd 490e87a617 Fix small compilation issue encountered when building with maven 2012-08-24 11:18:53 -07:00
Darren Shepherd f826971fea Maven config, initial commit 2012-08-24 11:18:52 -07:00
Kelven Yang d06d6dae72 add maven eclipse project files from Darren 2012-08-23 17:55:20 -07:00
Kelven Yang 9a51ff3bfc Maven worksplace fixes/patches from Darren 2012-08-23 14:26:27 -07:00
Darren Shepherd 2f6cc4b0cb Add license 2012-08-23 14:26:26 -07:00