Commit Graph

841 Commits

Author SHA1 Message Date
Prachi Damle df5c4c3048 Fixing VPC unit test to use Spring 2013-01-24 23:05:31 -08:00
Prachi Damle aa7b3e0f6d Renaming VmInstanceVO: dataCenterIdToDeployIn to dataCenterId
Corresponding getter/setter is renamed too.

Reason is GenericDao does not update the field unless the method name matches the field name; the setter of this VO was one such case.
2013-01-22 12:56:39 -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
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
Murali Reddy 4b67340d8c Revert "Summary: partical check-in for L4-L7 network services in the
shared"

This reverts commits 0de5a145e4,
28bbf6c527

Reverting due to IP clearance issues for the commits done as part of CLOUDSTACK-312
2013-01-16 16:43:37 +05:30
Murali Reddy 316c5267cc Revert " Summary: check-in for L4-L7 network services in the shared network in"
This reverts commit 7fcfcdf91e.

Reverting due to IP clearance issued for the commit done as part of CLOUDSTACK-312
2013-01-16 16:04:14 +05:30
Murali Reddy 156ed7a336 Revert "Summary: partical check-in for L4-L7 network services in the shared"
Reverting due to IP clearance issued for the commit done as part of
CLOUDSTACK-312

This reverts commit d4c604cfd8.
2013-01-16 15:58:44 +05:30
Rohit Yadav 38eaa04b98 Pull changes from master into javelin
- Disables simulator plugin, breaks build, available via simulator profile
- Fixes spring injections
- Fix api,acl plugins, ApiServer, ApiDispatcher
- Fix other merge conflicts

Conflicts:
	docs/en-US/external-firewalls-and-load-balancers.xml
	plugins/acl/static-role-based/src/org/apache/cloudstack/acl/StaticRoleBasedAPIAccessChecker.java
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	utils/test/com/cloud/utils/log/CglibThrowableRendererTest.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-12 06:02:54 -08:00
Rohit Yadav 8cdb40a416 NetworkManagerImpl: Add method to getNetwork by uuid
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-11 18:44:19 -08:00
Kelven Yang f57dcaa820 Loadable components to be in separted Spring component bundling 2013-01-11 15:33:15 -08:00
Alex Huang 395de6f2b3 merge from latest pull 2013-01-10 11:07:11 -08:00
Alex Huang f40e7b7511 removed componentlocator and inject 2013-01-10 11:05:20 -08:00
Kelven Yang 0bcebd33b6 Fix problems after merge 2013-01-09 17:36:53 -08:00
Chiradeep Vittal 504264236c Network-refactor: In preparation for moving the read-only interface NetworkModel
to the api project, ensure that all methods use interfaces from the api project.
By moving it to the api project, it lessens the dependency of plugins on the server components.

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 6b6d8c5710 Network-refactor: Move code from NetworkManager to NetworkModel.
NetworkModel is intended as a read-only view on the network model.
This includes Networks, Nics, Ip address, PhysicalNetwork, NetworkOfferings, etc
The code in configure() and start() is used to support queries on the network model which is now the responsibility of the NetworkModel service

Network-refactor: Fix tests so that they get injected with the required NetworkModel mock

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
Kelven Yang cf5d935d81 Seperate configurable components out and let them be loaded from Spring configuration file 2013-01-09 14:39:16 -08:00
Alex Huang 30f2565d98 Merge branch 'api_refactoring' into javelin 2013-01-08 12:36:04 -08:00
Chiradeep Vittal c876f02c6f Clean up some unused imports 2013-01-07 15:21:36 -08:00
Chiradeep Vittal cf90685985 Remove old applyRules implementation 2013-01-07 14:26:09 -08:00
Chiradeep Vittal f4da21998c WIP : extract NetworkService
WIP : move stuff between network manager and network service.
      at this point there is about 700 lines of duplicated code
WIP: Leave creation of default offerings to NetworkManager init
WIP: clean up imports

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-07 14:25:03 -08:00
Rohit Yadav ed0637b8c2 api: Refactor move acl to org.apache.cloudstack
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-06 15:30:58 -08:00
Rohit Yadav 5119785cf7 Get latest changes, merge branch 'master' into api_refactoring
Conflicts:
	api/src/com/cloud/network/element/RemoteAccessVPNServiceProvider.java
	server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java
	server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 22:21:20 -08:00
Chiradeep Vittal a64b386714 Move applyRules to the rightful place(s). Not sure why applyIps is required during applyRules, so we still have a reference back into a (simplified) applyRules in NetworkManager 2013-01-04 19:22:53 -08:00
Sheng Yang 42c8c73ab6 CLOUDSTACK-306: Introducing IpDeployingRequester and implement inline mode
For LB device in inline mode, the ip deployer(the owner of public ip) is the
firewall in front of it, not itself. So check if it's inline or not, if it's
inline, return the firewall as ip deployer
2013-01-04 19:18:03 -08:00
Sheng Yang 177e157cbf CLOUDSTACK-306: Move inline mode parameter from device to network offering
One F5 device can be used as inline and side-by-side at the same time(for
different networks). So we can define inline or not on network base.
2013-01-04 19:17:58 -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
Chiradeep Vittal b0a1a47d48 Not all network service providers need to be NetworkElements. NetworkElements are only those that are interested in L2 events. Since only NetworkElements were injected, and only in NetworkManagerImpl, this has led to all kinds of contortions. As a first step, enable individual service providers to be injected.
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-04 12:14:49 -08:00
Kelven Yang 25d14418b9 Replace Adapters<T> with standard List<T> to work with Spring injection 2013-01-03 13:33:52 -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 a88ce6bb7f Remove IdentityProxy from CloudException and ExceptionResponse. 2012-12-19 23:49:44 -08:00
Koushik Das 238c55fb6e CLOUDSTACK-596 : DeployVM command takes a lot of time to return job id Issue happens while deploying VM in advanced zone and 'networkids' parameter is not passed to deployVM command. In this case CS tries to identify a default guest network to be used for deploying VM. This logic is not optimized and latency increases with increase in user accounts and guest networks. Optimized logic for getting default network.
Signed-off-by: Koushik Das <koushik.das@citrix.com>
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2012-12-10 15:02:53 +05:30
Rohit Yadav af28c06998 api: move and group all under command, org.apache.cloudstack.command.*
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 18:30:54 -08:00
Murali Reddy 7fcfcdf91e Summary: check-in for L4-L7 network services in the shared network in
the advanced zone

  Details:

  1). Added validation to check the Vlan Id specified in the createNetwork()
  does not overlap with any of the vlan's used by isolated networks or
  shared networks in the zone.

  2). state change for shared network with services to go to 'Setup' state
  on network shutdown instead of 'Allocated'

  Bug ID:CLOUDSTACK-312 enable L4-L7 network services in the shared network in the advanced zone
2012-12-06 13:06:18 +05:30
Murali Reddy d4c604cfd8 Summary: partical check-in for L4-L7 network services in the shared
network in the advanced zone

Details : ensure that CIDR specified for shared network does not overlap with any
CloudStack generated CIDR's for isaolated guest networks when using
external networking devices

Bug ID:CLOUDSTACK-312 enable L4-L7 network services in the shared network in the advanced zone

Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-12-06 12:29:38 +05:30
Murali Reddy 0de5a145e4 Summary: partical check-in for L4-L7 network services in the shared
network in the advanced zone

Summary: change 'shared network' in advanced zone with L4-L7 services to  go through network
implement phase. Add ACL checks to associate IP to shared network in the
advanced zone

   Bug ID:CLOUDSTACK-312 enable L4-L7 network services in the shared network in the advanced zone

Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-12-06 11:55:19 +05:30
Murali Reddy 28bbf6c527 Summary: partical check-in for L4-L7 network services in the shared network in the advanced zone
Details:

- changed associateIPAddr API to accept shared network Id and account Id. Ip will be owned by tuple (account Id, network Id)
- chaged createNetwork API to accpet CIDR when network offering has external networking device providers

Bug ID:CLOUDSTACK-312 enable L4-L7 network services in the shared
network in the advanced zone
2012-12-06 11:55:19 +05:30
Rohit Yadav e07106db0b api_refactor: usage apis to admin.usage pkg
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-05 14:31:31 -08:00
Rohit Yadav 47ae62e44a api_refactor: refactor network apis
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace
- Fix trailing whitespaces for all *.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 22:47:07 -08:00
Rohit Yadav 5edfc2760a refactor: remove redundant imports, fix trailing chars 2012-12-03 13:54:37 -08:00
Alena Prokharchyk 7857b1f62a CLOUDSTACK-573: check if external provider enabled, only when finalize the service/provider list for the network 2012-11-30 13:07:01 -08:00
Rohit Yadav 4c86b1545d CLOUDSTACK-424: Update userdata should propagate to VR
The code that would propage userdata to router, when updateVirtualMachine api
is called, was missing. As per the docs [0], userdata should be a base64 encoded
string upto 2KB which is put on domr's html directory adn using HTTP GET the
userdata information can be obtained from the domr.

The updateVirtualMachine api [0] would accept a base64 encoded string
and decoded and put into the domr's /var/www/html/userdata/<uservm ip>/user-data
file. The operation does not require the VM to be in stopped state, though it is
advised to stop and call this api in case the user vm has a script which gets
the userdata information from domr while starting.

For example, this script can be used to fetch the data:
server_ip=$(grep dhcp-server-identifier /var/lib/dhclient-eth0.leases | tail -1 | awk '{print $NF}' | tr '\;' ' ')
wget http://${server_ip}/latest/user-data

This feature can be useful, for example to use into puppet facts [1], or to do
automation and horizontal scaling etc. based on userdata.

[0] http://incubator.apache.org/cloudstack/docs/api/apidocs-4.0.0/domain_admin/updateVirtualMachine.html
[1] http://geek.jasonhancock.com/2011/11/09/cloudstack-userdata-into-puppet-facts/

BUG-ID : CLOUDSTACK-424
Reviewed-by: Rohit Yadav <bhaisaab@apache.org>
Reported-by: Nick Wales

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-15 18:43:51 +05:30
Pranav Saxena fe460fac43 Upgrading a network that has Network offering SRX/F5 inline mode to a network offering that has all service provided by VR does not give proper error message: Hence correcting the error message 2012-11-15 13:52:54 +05:30
Alena Prokharchyk 74622a4dc3 Fixed listNetworks for the case when a) caller is an admin 2) projectId=-1 is specified - admin wasn't able to list networks belonging to regular users' projects 2012-11-14 14:59:51 -08: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
Alena Prokharchyk 705130e42c CS-16499: removed useless txn.commit statement. Used to call it to ensure that the lock() on nic object will get removed even in case when we don't do the DB update. But our Transaction code does it automatic 2012-11-02 09:59:37 -07:00
Alena Prokharchyk 597bc8c66c CS-16499: forgot to add @DB to releaseNic() call 2012-11-02 09:59:36 -07:00
Alena Prokharchyk 7bd7884f57 CS-16499: releaseNic - lock the nic row in the DB before checking its state. Hold the lock till the nics attributes + nicCount is updated
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-11-02 09:59:36 -07:00