Commit Graph

5275 Commits

Author SHA1 Message Date
Alena Prokharchyk 0dbd487a22 VPC: implemented delete and list Network ACL(s) 2012-06-20 14:24:30 -07:00
Alena Prokharchyk bb30a6b6bb VPC: initial checkin for network ACLs 2012-06-20 12:48:00 -07:00
Alena Prokharchyk 1862942bc9 VPC: fixed user vm start in case when Implemented network existed w/o VR (it was expunged with DestroyRouter command) 2012-06-20 10:37:47 -07:00
Alena Prokharchyk b8f67f0249 Vpc: fixed the network shutdown happening as a part of GC thread for VPC networks 2012-06-19 14:30:50 -07:00
anthony 17b9952b86 VPC : use correc provider for guest network inside VPC 2012-06-19 11:30:11 -07:00
Alena Prokharchyk da6c58ed30 VPC: plug guest nic on guest network implement, and unplug on shutdown 2012-06-19 10:00:56 -07:00
Alena Prokharchyk 7a23556513 Network usage for VPC implementation 2012-06-18 17:48:35 -07:00
Sheng Yang 830f12aadf Don't need to check guest cidr overlap
It's not external devices, so guest network with different vlan can be the same.
2012-06-18 16:03:03 -07:00
Alena Prokharchyk 375bb99f09 Don't send public/guest nic info when start VR in VPC 2012-06-18 15:57:58 -07:00
Vijayendra Bhamidipati 77b2b4a372 CS-15256: Unable to associate cluster with Nexus VSM upon a retry if addCluster command fails the first time
Description:

	Putting in code to clean up stale VSM records in case
	addCluster fails to communicate with the vCenter server.
2012-06-18 15:03:59 -07:00
Vijayendra Bhamidipati b9263b0c51 Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-06-18 13:01:11 -07:00
Vijayendra Bhamidipati 2ef8287287 Bug CS-14448: Wrong error message on using the createVlanIpRange cmd
Description:

	Fixing two other scenarios apart from the reported one
	where we were not passing in database IDs for translation
	into uuids, in the exception.
2012-06-18 12:57:56 -07:00
Vijayendra Bhamidipati e03ed60540 Bug 13127: API error text refer to database ids instead of uuids
Bug CS-14448: Wrong error message on using the createVlanIpRange cmd

Cherry-picking from master for bug 14448 into 3.0.x. Resolved
conflicts encountered during cherry-picking.

Description:

	Adding overloaded addProxyObject() function to CloudException
	and RuntimeCloudException classes and using this function
	to stuff exceptions with IDs, to reduce code footprint.

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
2012-06-18 12:55:44 -07:00
Vijayendra Bhamidipati 7860b78049 Bug 13127: API error text refer to database ids instead of uuids
Bug CS-14448: Wrong error message on using the createVlanIpRange cmd

Cherry-picking from master for bug 14448 into 3.0.x. Resolving
conflicts arising from the pick.

Description:

	Modifying the API functions' exception handling to call
	addProxyObject() wherever applicable, and removing some
	wrong calls to addProxyObject() that were put in in an
	earlier commit for this bug.

	With this commit, we cover many API functions to use the
	new exception handling code, but some pieces may still be
	left out. These will be covered as work in progress, when
	making changes to the CS API code.

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
2012-06-18 12:44:18 -07:00
Vijayendra Bhamidipati 6d48578234 Bug 13127: API error text refer to database ids instead of uuids
Bug CS-14448: Wrong error message on using the createVlanIpRange cmd

Cherry-picking from master for bug 14448 into 3.0.x. Modified the
pick to resolve some conflicts.

Description:

	Removed some wrong invocations to addProxyObject() when
	throwing exceptions in NetworkManagerImpl.java.

	Replaced db ids with uuids in various points in the code
	of NetworkManagerImpl.java, where exceptions are thrown.

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-18 12:18:17 -07:00
Vijayendra Bhamidipati 8e47091ccd Bug 13127: API error text refer to database ids instead of uuids
Bug CS-14448: Wrong error message on using the createVlanIpRange cmd

Cherry-picking from master for bug 14448 into 3.0.x.

Description:

	Replacing placement of db ids in exception messages to uuids
	in the file ManagementServerImpl.java.

	Since there are a large number of files that throw exceptions
	with db ids in them and they need to be changed, we will make
	the changes in multiple commits.
2012-06-18 11:47:58 -07:00
anthony 3b2b8fc143 VPC: fix VPC cidr check 2012-06-18 11:40:59 -07:00
Vijayendra Bhamidipati 79abb862f3 Bug 13127: API error text refer to database ids instead of uuids
Bug CS-14448: Wrong error message on using the createVlanIpRange cmd

Cherry-picking from master for bug 14448 into 3.0.x.

Description:

	Adding a new class AnnotationHelper, that provides routines
	to read annotations from a VO class.

	Cloudstack does the mapping between cloudstack java VO objects
	and the database tables using cglib. cglib creates proxy objects
	as the maps between VO objects and the database.  A VO (value
	object) class is populated after querying from the MYSQL database.

	Ideally, a getAnnotation() issued on a cglib proxy object should
	get a list of all the annotations in all classes in the inheritence
	chain. However, this functionality seems to be currently broken
	in cglib.  Hence, when querying for annotations given the object
	of a VO class, we need to get to the corresponding VO class of that
	cglib proxy class and issue a getAnnotation() on that class. To get
	the VO class, we simply need to get the super class of the proxy
	object. Also, we need to recurse to the root VO class in case the
	VO class extends another VO class.

	Note that the cache used by CS is ehcache.

Conflicts:

	server/src/com/cloud/server/ManagementServerImpl.java
2012-06-18 11:39:36 -07:00
saksham f5f07ca0fd CS-15018: Event USER.LOGIN should contain the client IP address. Changes made in accordance with the coding convention.
Reviewed-by: Alena Prokharchyk
2012-06-18 10:17:51 -07:00
Alena Prokharchyk 1abdb876c9 1) Allow having multiple shared networks with the same vlan
2) Added new parameter to listNetworks command - canUseForDeploy(boolean). When true, list only networks that can be used for vm deployment (networks have enough ip addresses to allocate from for the vm)

Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/commands/ListNetworksCmd.java
	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/network/NetworkService.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/network/dao/IPAddressDaoImpl.java
2012-06-15 15:57:56 -07:00
Alena Prokharchyk 5235894b20 Changed log level to trace for vpc router element 2012-06-15 12:58:15 -07:00
Alena Prokharchyk aaf0d24a83 Merge branch 'vpc-3.0.x' into 3.0.x
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/AssociateIPAddrCmd.java
	api/src/com/cloud/api/commands/EnableStaticNatCmd.java
	api/src/com/cloud/event/EventTypes.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/rules/RulesService.java
	client/tomcatconf/commands.properties.in
	core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java
	scripts/vm/hypervisor/xenserver/xenserver56fp1/patch
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade2214to30.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java
	setup/db/create-schema.sql
	wscript
2012-06-14 19:04:59 -07:00
Alena Prokharchyk 5c5a2adb90 Completed API / Management server code for Resource tags feature. UI is yet to be done 2012-06-14 15:17:11 -07:00
Alena Prokharchyk 127daa5831 Fixed lock problem when add vm to guest network 2012-06-13 16:43:43 -07:00
Alena Prokharchyk 2412b7837d Isolated non-vpc networks: start router with 3 nics from the very beginning 2012-06-13 14:56:04 -07:00
Alena Prokharchyk a5f0b64562 Added new capabilities to VPN and Firewall services defining if VPN is S2S or Remote access, and if the Firewall rules should be created per cidr or per public ip address 2012-06-13 10:17:48 -07:00
anthony 4075963767 VPC : revert some change 2012-06-12 15:33:01 -07:00
Alena Prokharchyk 97ca76856a VPC: more changes to ipAssoc 2012-06-12 13:35:15 -07:00
Alena Prokharchyk c40839599c Initial checkin for resource tags feature 2012-06-12 10:59:56 -07:00
Alena Prokharchyk 9c01ca2785 VPC: ipAssoc consists of 3 parts: plug nic (if needed), associateIp, enableSourceNat(if ip is source nat ip) 2012-06-12 10:58:20 -07:00
Alena Prokharchyk 287ebd350d More logging to plug nic code 2012-06-11 15:58:26 -07:00
Alena Prokharchyk 07be6918d8 VPC: fixed guest network shutdown 2012-06-11 15:01:51 -07:00
Alena Prokharchyk d1598e366e Release acquired lock for VPC 2012-06-11 14:31:39 -07:00
Alena Prokharchyk 3b943d84dd Fixed addDhcpEntry/userdata/password in VPC setup 2012-06-11 13:37:38 -07:00
Alena Prokharchyk cf1882a2c8 1) Added VpcVirtualNetworkApplianceService interface
2) Pass dns1/dns2 to setupGuestNetworkCommand
3) Network implement - don't get source nat ip address for Vpc if it already has one
2012-06-10 12:31:47 -07:00
Alena Prokharchyk 7bdcb244a2 StartRouter: set only control nic during the initial router start; plug exising public and guest nics after the router is started with control nic 2012-06-06 16:56:38 -07:00
Kelven Yang 3e16945914 bug CS-15191: remove a sanity check that prevent us from getting traffic lable under VMware
Reviewed-by: anthony
2012-06-06 15:14:26 -07:00
Kelven Yang 400602ee9f CS-15080: VMware control network is CloudStack management network, correct the way to send down a correct traffic label to VMware resource
Reviewed-by: Anthony
2012-06-06 15:14:03 -07:00
anthony 78f1aab584 VPC : pass netmask once for secondary storage VM 2012-06-06 12:20:25 -07:00
Alena Prokharchyk d9758045d9 Added NicTO to setupGuestNetworkCommand constructor - we need this info for guest network configuraiton 2012-06-05 16:10:20 -07:00
Alena Prokharchyk 3ae5b0b5c8 Modified virtual router startup procedure - initial start happens with control nic only; then we plug Public and then Guest nic to it 2012-06-05 11:33:31 -07:00
Alena Prokharchyk 460bab4a7d Support for adding private network 2012-06-05 10:57:29 -07:00
Alena Prokharchyk e0723cd9cc CS-15220: fixed db upgrade for networks using external devices
Reviewed-by: Sheng Yang

Conflicts:

	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-04 19:21:35 -07:00
frank 49ffe7392e CloudStack CS-15222
Rebalancing of hosts fails with "java.lang.ClassCastException:" since SSVM host gets picked up for rabalacing.

fixed
reviewed-by: edison
2012-06-04 18:24:06 -07:00
frank c88213b5bc CloudStack CS-15195
Multinode Management server - Not able to put the host in maintanace mode when the request is issed from the management server that is not the owner of the host

resolved fixed
reviewed-by: edison
2012-06-04 18:23:51 -07:00
anthony 0d89f34a48 1. move control network to eth0 on domr
2. if it is basic mode, use guest NIC as Control NIC
2012-06-04 16:35:27 -07:00
Sheng Yang 0b730969ef CS-15116: When GetDomRVersion failed, let VR creation fail
Because there are more commands after GetDomRVersion command. Though
GetDomRVersion command itself is not that critical, the commands after it may
including DHCP and firewall related commands. The failure of GetDomRVersion
command would result in the following commands fail to be executed. So it should
fail, and fail loudly.
2012-06-04 16:29:18 -07:00
Vijayendra Bhamidipati 0e26608458 CS-15173: Additional Cluster is allowed to add with the same VSM IPaddress as the previous cluster
reviewed-by: Sateesh
Description:

	Missed deletion of cluster record in case of failure in
	validation of vsm:cluster mapping restriction.
2012-05-31 23:47:15 -07:00
Vijayendra Bhamidipati 422b5a0b69 CS-15173: Additional Cluster is allowed to add with the same VSM IPaddress as the previous cluster
reviewed-by: Vijay
Description:

	Fixing null pointer exception introduced by previous
	checkin.
2012-05-31 17:34:22 -07:00
Vijayendra Bhamidipati d6fe4d7eae CS-15173: Additional Cluster is allowed to add with the same VSM IPaddress as the previous cluster
reviewed-by: Vijay
Description:

	Restricting association of a Cisco Nexus VSM to a single
	cluster.
2012-05-31 13:51:45 -07:00
Alena Prokharchyk ddae550a55 AssociateIpAddress to VPC - the ip gets associated to the network only when the first rule for the ip gets created.
When the last rule is removed for vpc ip, networkId is set to null
2012-05-30 19:46:40 -07:00
Alena Prokharchyk 6a097ad3b6 Support for IPAssoc inside VPC 2012-05-29 11:27:26 -07:00
Alena Prokharchyk a7c8354c7b Destroy VPC if it fails to start during the deployment 2012-05-29 10:36:46 -07:00
Sateesh Chodapuneedi fb85787a76 CS-14956 Support for rate limiting policies in Nexus dvSwith feature for CloudStack
Removed global parameters that are not required. Cleanup.
Reviewed-by: Devdeep
2012-05-26 05:22:03 +05:30
Alena Prokharchyk d3b1925e55 1) Added VPC restart support - new api command RestartVPC. The purpose of the call is to shutdown and start VPC including VPCVirtualRouter restart, rules re-implement, etc
2) Only networks created from offerings with conserveMode=false, can participate in VPC
2012-05-25 15:34:51 -07:00
Alena Prokharchyk fbdf10bac7 1) Added search by vpcId to listRouters/listNetworks Apis
2) Don't allow to add new networks/implement existing ones for VPC in Disabled state. Disabled state indicates that there was unsuccessful attempt to remove the VPC, and the further cleanup will be taken care of by cleanup thread.
2012-05-25 14:16:23 -07:00
Edison Su c530ffdc52 bug CS-15095: vm cpu freq <= host cpu freq 2012-05-25 11:17:24 -07:00
Kelven Yang d0b9aecd16 bug 15080: check traffic type in host discovery stage - cluster level checks 2012-05-25 10:51:56 -07:00
Alena Prokharchyk 79a7ddb970 CS-15082: changed search criteria for Running vms in Network. Ip4 Address for guest network can be null for nic in Basic zone when vm originally fails to start.
Reviewed-by: Frank
2012-05-25 10:19:18 -07:00
Kelven Yang 8340ed52d4 bug : CS-15080 - check traffic label at host discovery stage also 2012-05-25 10:18:42 -07:00
Vijayendra Bhamidipati 3266dde7ae CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating Salvatore's review comments.
2012-05-25 09:43:00 -07:00
Nitin Mehta feefa93cad bug CS-14945: Throw an error message if the user is trying to attach the volume in local only storage zone.
Reviewed-by: Kishan
2012-05-25 18:40:16 +05:30
Alena Prokharchyk d7f0689bcb Support for delete VPC 2012-05-24 16:12:45 -07:00
Alena Prokharchyk aa0c0cb260 Added support for network shutdown in VPC guest networks 2012-05-24 15:33:52 -07:00
Vijayendra Bhamidipati 4f9101bd0e CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Deleting the row in cluster_vsm_map after
	a cluster is deleted, if the cluster type
	is vmware and the global vswitch nexus
	config flag is set to true.
2012-05-24 14:04:52 -07:00
Alena Prokharchyk 269d4dac83 CS-15083: fixed source nat ip assoc for the case when account owns more than 1 guest network, and 1+ public account specific ranges 2012-05-24 13:41:16 -07:00
Alena Prokharchyk 036c7a0dce Removed unused comments 2012-05-24 12:03:45 -07:00
Alena Prokharchyk 4c83520dd1 CS-15082: don't allow to remove guest network in Basic zone when there are non-expunged CPVM/SSVMs using it. 2012-05-24 11:48:47 -07:00
Vijayendra Bhamidipati 0083074be4 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating more changes from Alena's review.

	Modified the Nexus Enable and Disable commands
	to return CiscoNexusVSMResponse instead of
	SuccessResponse.

	Put event annotations for enable/disable functions
	that the enable/disable nexus commands cal into.
2012-05-23 17:42:39 -07:00
Vijayendra Bhamidipati a48a3bbfbd CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removed the vcenter_dc_name and vcenter_ipaddr
	fields from the virtual_supervisor_module
	table, the CiscoNexusVSMDeviceVO, addClusterCmd,
	and all other references to these two fields.

	Fixing null pointer exceptions when checking
	for nexus related global parameter values in
	addClusterCmd.
2012-05-23 16:53:27 -07:00
Alena Prokharchyk 2014cb0feb Plug nic support 2012-05-23 16:18:41 -07:00
kishan c85117078f bug CS-14982: Make traffic sentinel metering zones configurable. Global config default will be used when no zones are listed while adding Traffic Sentinel Host
status CS-14982: resolved fixed
reviewed-by: Nitin
2012-05-23 18:39:05 +05:30
Sateesh Chodapuneedi 53d4c8f532 Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x
Conflicts:
	server/src/com/cloud/resource/ResourceManagerImpl.java
2012-05-23 16:30:52 +05:30
Sateesh Chodapuneedi e413f5522a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Updating the checks for VSM parameter validation while adding cluster.
2012-05-23 16:24:07 +05:30
Vijayendra Bhamidipati f3169e616f CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modifying column names in db tables to
	adhere to naming conventions.
2012-05-22 19:13:43 -07:00
Vijayendra Bhamidipati ab12628925 CS-15055: DB exception when creating n1kv VSM when adding a cluster via the latest management server GUI.
Description:

	Missed a check for Null pointer.
2012-05-22 19:10:47 -07:00
Vijayendra Bhamidipati 686064a8be CS-15055: DB exception when creating n1kv VSM when adding a cluster via the latest management server GUI.
Description:

	Adding an optional flag to the addCluster command,
	"addvsmflag". If this is set to true, the API will
	throw an exception if any VSM parameter is missed
	out. The above bug was running into a DB exception
	because the vCenter ipaddress wasn't passed in and
	the API didn't catch it.
2012-05-22 17:54:32 -07:00
Vijayendra Bhamidipati e90e5e9c8c Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-05-22 17:25:51 -07:00
Vijayendra Bhamidipati f3647ff0b5 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating more changes post review by Alena.

	1. Renamed the ListCiscoVSMDetailsCmd command
	   to ListCiscoNexusVSMsCmd. The command will
	   return a list of VSMs always, depending on
	   what parameter is passed to it. If a clusterId
	   is passed to it, it will return the VSM
	   associated to that cluster, if present. If
	   a zoneId is passed in, it will return a list
	   of all VSMs configured for any clusters of
	   type VMware within that zone. If neither is
	   passed, it will return a list of all VSMs
	   configured in the management server. If no
	   VSMs are found, it will return an exception
	   response.

	2. Cleaned up miscellaneous code.
2012-05-22 17:22:29 -07:00
Alena Prokharchyk 9fb9149c99 1) Added new element - VpcVirtualRouterElement. Extends VirtualRouter + has plug/unplug nics support
2) Added services api support for plugging/unplugging the nics to VpcElement
2012-05-22 16:53:27 -07:00
Murali reddy 895c361dca bug CS-13897: DB upgrade for external Firewall/external LB devices
status CS-13897: resolved fixed
2012-05-22 20:31:22 +05:30
Vijayendra Bhamidipati 960d92dccf CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	More changes incorporating Alena's review comments:

	  1. Changed id to clusterId for better naming.

	  2. Changed the name of GetCiscoVSMByClusterIdCmd
	     to ListCiscoVSMDetailsCmd.

	  3. Removed the GetCiscoVSMDetailsCmd command.

	  4. Removed catch{} blocks in each of the Nexus
	     related APIs since the exceptions raised in
	     the API implementations will be caught in the
   	     command dispatcher.

	  5. Added ActionEvent annotation to
	     deleteCiscoNexusVSM() function.

	  6. Modified each Nexus API command's
	     getEntityOwnerId() to return
	     Account.ACCOUNT_ID_SYSTEM.
2012-05-21 21:10:56 -07:00
Vijayendra Bhamidipati a1eba25802 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Putting in code changes as per Alena's reviews:

	  Replaced references to CiscoNexusVSMDeviceVO
	  in GetCiscoVSMByClusterIdCmd to work with an
	  interface that CiscoNexusVSMDeviceVO instead,
	  since VO objects should not be directly accessed
	  in APIs.

	  Made associated changes in other files.

	More commits incorporating Alena's review comments
	will follow.
2012-05-21 19:16:00 -07:00
Alena Prokharchyk 675bad3eed Add type and rpcfilter to the virtual router bootload arguments even when there is no guest network is being configured. 2012-05-21 18:07:12 -07:00
Alena Prokharchyk 891b6486e4 Deploy VR as a part of VPC: set elementId to the VR element id of the first physical network in the zone by now. TODO - add logic for handling the case when VR has 1 to many element ids relationship 2012-05-21 17:40:44 -07:00
Alena Prokharchyk 1fab93a8fb Start Virtual Router as a part of VPC start 2012-05-21 17:37:47 -07:00
Vijayendra Bhamidipati 704683d1f0 Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-05-21 16:50:40 -07:00
Vijayendra Bhamidipati 02d95e2b97 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removing two unexposed APIs that we never use:
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd

	More changes to follow.
2012-05-21 16:49:11 -07:00
Alena Prokharchyk 0e306c9a05 CS-15025
listTemplates: made executable filters to work for regular user
2012-05-21 15:37:37 -07:00
Alena Prokharchyk e4458cf5b7 1) Added start logic to the VPC
2) VirtualRouterManagerImpl - refactored deployVirtualRouter method
3) Added vpcId to domain_router/user_ip_address tables and corresponding vo objects
2012-05-21 14:29:34 -07:00
anthony 74addad480 CS 14006: log fix 2012-05-21 11:45:42 -07:00
Murali reddy 135431d727 bug CS-14862: EIP/ELB - SSVM and CPVM should be given an ip address from the public ip address range.
With this fix  both SSVM and CPVM will get public IP's in case of basic zone with EIP service.
A static NAT rule is implicitly configured on the EIP service provider to map public IP to a
guest IP address associated with SSVM/CPVM
2012-05-21 20:08:46 +05:30
Nitin Mehta d310b7fa0a bug CS-14945:
UploadVolume API is async now with the guidance for all the new apis added in 3.0.x need to be async. Though the success/failure wont be available through the queryAsync job which will report only the initial validation success or failure. The success or failure and the progress will all be available through listVolumes api.
2012-05-21 14:18:02 +05:30
Vijayendra Bhamidipati dcea3a3341 Merge branch 'vpc-3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into vpc-3.0.x 2012-05-18 18:28:18 -07:00
Vijayendra Bhamidipati f204185841 CS-14929: Exception while creating a port forwarding rule on an acquired ip
CS-14943: Unable to deploy VM due to Unable to identify the provider by name CiscoNexus1000vVSM

Description:

	Ignore the CiscoNexus1000vVSM provider when checking for
	providers when applying port forwarding rules.
2012-05-18 18:27:40 -07:00
Alena Prokharchyk 0e1b5901dc Set networkId as a join parameter in DomainRouterDaoImpl as networkId was moved to the helper table 2012-05-18 18:26:44 -07:00
Vijayendra Bhamidipati 3a39913fe1 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modified the following commands to be Async:
		a. EnableCiscoNexusVSM
		b. DisableCiscoNexusVSM
		c. DeleteCiscoNexusVSM

	Cleaned up miscellaneous code.
2012-05-18 17:32:17 -07:00
Alena Prokharchyk 492e41c462 Removed network_id reference from domain_router table as now VirtualRouter can be associated with multiple networks (VPC case). Code modifications were done accordingly to the places where this field was used.
Router->Networks (one to many) are held in router_network_ref table now
2012-05-18 17:25:04 -07:00
Alena Prokharchyk e5bfa22944 CS-14894: listTemplates - return hypervisor type to everybody 2012-05-18 12:46:32 -07:00
Alena Prokharchyk 978c2f414a Initial checkin for VPC feature:
1) Added API frameworks for the feature. New commands:
* CreateVPCCmd
* ListVPCsCmd
* DeleteVPCCmd
* UpdateVPCCmd
* CreateVPCOfferingCmd
* UpdateVPCOfferingCmd
* DeleteVPCOfferingCmd
* ListVPCOfferingsCmd

2) New db tables:

* `cloud`.`vpc`
* `cloud`.`vpc_offerings`
* `cloud`.`vpc_offering_service_map`

and corresponding VO/Dao objects.

Added vpc_id field to `cloud.`networks` table - not null when network belongs to VPC

3) New Manager and Service interfaces- VpcManager/VpcService

4) Automatically create new VpcOffering (if doesn't exist) on system start

5) New Action events:

* VPC.CREATE
* VPC.UPDATE
* VPC.DELETE

* VPC.OFFERING.CREATE
* VPC.OFFERING.UPDATE
* VPC.OFFERING.DELETE
2012-05-17 18:08:03 -07:00
Nitin Mehta 4b0ae1252d bug CS-14957: Return hypervisor type for uploaded volume 2012-05-17 19:38:49 +05:30
Vijayendra Bhamidipati 74b105b9d2 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Didn't stage all modified files in previous
	commit by mistake. Checking in the rest of
	the changes in this commit. Please refer to
	immediate previous commit for CS-9919 for
	details on what changes went in with this
	commit.
2012-05-16 19:51:28 -07:00
Vijayendra Bhamidipati 9cdba91bd1 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removed the AddCiscoNexusVSMCmd command, and all
	references to it. From now on, we shall support
	adding a Nexus VSM only when the cluster is being
	created. The VSM ipaddress, username, password,
	the vCenter DC Name and vCenter Ipaddress that it
	serves and connects to respectively can be passed
	to the addClusterCmd command optionally. To support
	these new parameters, parameters have been added
	to the addClusterCmd command.

	Added a debug statement in the code that runs checks
	when attempting to delete a VSM.
2012-05-16 19:51:18 -07:00
Vijayendra Bhamidipati 1b36020873 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added a new API GetCiscoVSMDetailsCmd. This
	API gets all details of a VSM when provided
	with the VSM ID.

Resolved Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
2012-05-16 18:06:50 -07:00
anthony 03028c4086 CS-14237 GC commands only sent to UP host
resolved fixed
2012-05-16 17:21:08 -07:00
Kelven Yang 72bf0c46fa Support console access through rebooting with XAPI session re-negotiation 2012-05-16 16:57:48 -07:00
Edison Su a10a07c09e send ssh key to kvm host, even if it's developer env 2012-05-16 14:40:22 -07:00
Vijayendra Bhamidipati 30b59044c8 CS-14929: Exception while creating a port forwarding rule on an acquired ip
CS-14943: Unable to deploy VM due to Unable to identify the provider by name CiscoNexus1000vVSM

Description:

	Ignore the CiscoNexus1000vVSM provider when checking for
	providers when applying port forwarding rules.
2012-05-16 13:04:57 -07:00
frank 9998e7d731 CS-13853 secstorage.allowed.internal.sites is not allowed to be 0.0.0.0
resolved fixed
2012-05-16 11:57:04 -07:00
Sateesh Chodapuneedi 05549eaad3 CS-14940 VSM access credentials are logged in clear text with Management-server.log
Removed debug log after fetching the credentials.
2012-05-16 23:58:22 +05:30
Nitin Mehta 86961b79c3 bug CS-14321: Correcting listVolumes API call to return valid value for isExtractable for ISO derived disk and DATA disk. 2012-05-16 21:45:48 +05:30
Sateesh Chodapuneedi 951b5688af CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Avoid detection of public traffic label for basic zones. Check switch types along with global parameter for enabling a particular vmware vswitch types. Move credentials information into resource and load during resource configuration. Cleanup.
2012-05-16 19:50:35 +05:30
Nitin Mehta b822de268c bug CS-14249: cluster.localStorage.capacity.notificationthreshold text is incorrect 2012-05-16 11:27:27 +05:30
Edison Su 5a5be77d37 CS-14521
Remove CLVM, due to license issue
2012-05-15 15:12:18 -07:00
Edison Su 0f54c8f411 CS-14609
turn on debug log, if zone is not ready to start ssvm/cpvm.
"Zone host is ready, but console proxy template" means system vm template is not in "Downloaded" state on secondary storage
"Primary storage is not ready" means the template is not been downloaded to primary storage, possible reasons: haven't add primary storage, or primary storage download is not finished/failed.
2012-05-15 14:41:47 -07:00
Edison Su ba98c063ba bug CS-14833: if iso is xen/vmware tools, attach it to vm; status CS-14833: resolved fixed 2012-05-15 13:04:10 -07:00
Alena Prokharchyk 05609b9074 CS-14904
Fixed the bug where vm_instance.ha_enabled wasn't updated during service offering upgrade
2012-05-15 12:35:48 -07:00
Sateesh Chodapuneedi b82c8b87e1 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Added VSM credentials to AddClusterCmd(optonal params only).
Cleanup.
2012-05-15 09:35:32 -07:00
Nitin Mehta 548568558c bug CS-14814: Do not allow attaching volume to a stopped vm for an uploaded volume. Make changes to accomodate volume attaching for a vm created in Stopped state. 2012-05-15 18:26:17 +05:30
Sateesh Chodapuneedi c3c326b8b5 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Instance configuration to join distributed vNetwork.
2012-05-14 18:57:20 -07:00
Vijayendra Bhamidipati a2141fbe35 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Missed out a file in previous commit when adding
	the new API getCiscoVSMByClusterId. Stub file was
	added by Sateesh to prevent breakage. Putting the
	file in in this commit plus better exception
	handling.
2012-05-14 18:56:24 -07:00
Sateesh Chodapuneedi 014773e7e4 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added command class GetCiscoVSMByClusterIdCmd.
2012-05-14 18:56:03 -07:00
Sateesh Chodapuneedi c9331e5d21 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Portprofile shaping policies will be fetched
	from nexus vswitch instead of vcenter.
	ACLs and Policies won't be synced to vCenter.
	Get physical network label while adding cluster.
	Cleanup.
2012-05-14 18:55:08 -07:00
Vijayendra Bhamidipati 4f3eed847a CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding command getCiscoVSMByClusterId to
	retrieve a VSM associated with a cluster.
2012-05-14 18:54:22 -07:00
Sateesh Chodapuneedi ac74adb465 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Retreving physical network configuration from
	database. Passing configuration down to resource.
	Cleanup.
2012-05-14 18:52:30 -07:00
Vijayendra Bhamidipati f8437196aa CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Removed CiscoNexusVSM.java.

	2. Put in invocation of Netconfhelper's
	   connect method to a VSM, in
	   CiscoNexusVSMDeviceManagerImpl.java.
2012-05-14 18:48:42 -07:00
Sateesh Chodapuneedi 413a1112d3 CS-9919 - Support for Nexus Swiches (Cisco Vswitches)
Description:

	Code changes to manage Cisco Nexus 1000v in CloudStack.
	VmwareResource has been modified to leverage Nexus vSwitch.

	Providing following global configuration parameters,

vmware.use.nexus.vswitch -
	This would decide whether Nexus vSwitch in the VMware
	cluster environment would be used/managed by CloudStack
	for it's network infrastructure needs.

vmware.guest.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for guest traffic.

vmware.private.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

vmware.public.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

Functional Specification -
	http://wiki.cloudstack.org/display/RelOps/Cisco+Nexus+1000v+Support+in+CloudStack+-+Functional+Specification

Documentation / README for usage instructions -
	http://wiki.cloudstack.org/display/RelOps/Configuration+instructions+for+CloudStack+Deployment+with+Nexus+vSwitch
2012-05-14 18:45:25 -07:00
Vijayendra Bhamidipati de30d66fd8 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added the PortProfile infrastructure:

	    a. PortProfileVO : The VO class to represent a db
	    record of the table port_profile. Each db record
	    represents one port profile.

	    b. PortProfileDao: The interface that declares search
	    functions on the port_profile table.

	    c. PortProfileDaoImpl: The class that defines the
	    interfaces declared in PortProfileDao.

	    d. PortProfileManagerImpl: The class that contains
	    routines that will add or delete db records from
	    the port_profile table. If you want to create/delete
	    a portprofile, call functions from this class.

	    e. Changes to create-schema.sql to create the port_profile
	    table.

	2. Cleaned up code:

	    a. Removed a number of unused Dao and Manager objects in
	    CiscoNexusVSMDeviceManagerImpl.

	    b. Removed the ListCiscoNexusVSMNetworksCmd command.

	    c. Removed a bunch of import statements in a few files.
2012-05-14 18:42:29 -07:00
Vijayendra Bhamidipati 978732ead9 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Modify addCiscoNexusVSMCmd to enable a VSM
           by default, when it is added to a cluster.

	2. Put in two new APIs exposed to the user -
                a. EnableCiscoNexusVSMCmd
                b. DisableCiscoNexusVSMCmd

        Disabling a VSM does not delete it. It only
        prevents the Management Server from using that
        VSM. This is useful if the VSM is in
        maintenance mode.
2012-05-14 18:41:02 -07:00
Vijayendra Bhamidipati cff3c78d2f Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Put in invocation to the deleteCiscoNexusVSM()
	   function in the deleteCiscoNexusVSM command
	   chain.

        2. Put in additional check for physical servers
	   present in a cluster that still is tied to a
	   VSM. The previous check would query for all
	   hosts in a cluster, causing the check to see
	   if a cluster has any physical servers in it
	   to always fail and thus block the VSM from
	   getting deleted. By putting in a check to see
	   if a host if of type "Routing", we refine this
	   search to only hypervisors.

        3. Other miscallaneous code + cleanup.
2012-05-14 18:39:37 -07:00
Vijayendra Bhamidipati 685427b1b7 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Changed AddCiscoNexusVSMCmd to:
             a. Extend BaseCmd instead of BaseAsyncCmd.
             b. Take in more required parameters (viz
                vCenterDCName and vCenterIpAddress)

        1a. Changed DeleteCiscoNexusVSMCmd to also
            extend BaseCmd.

        2. Put in changes that will ensure that
           When a VSM is added, it is disabled by default.

        3. Fixed code that was leading to exceptions
           related to DB reads/writes to VSM related tables.

        4. Added new API Constants in ApiConstants.java.
           NOTE - Always initialize new attributes in
           ApiConstants.java to values in small case.
           Never put in upper case there. Also regardless
           of what names you give attributes in the
           *Cmd.java's class, you pass in parameters via
           API calls by specifying <key>=<value> where the
           <key> is taken from the value you specified in
           ApiConstants.java.

        5. Modified the addCiscoNexusVSM() function in
           CiscoNexusVSMDeviceManagerImpl.java to write VSM
           records to the db.
2012-05-14 18:25:55 -07:00
Vijayendra Bhamidipati ed72fbe86e CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Fixed type of argument taken by AddCiscoNexusVSMCmd
	from ZONE_ID to CLUSTER_ID.
2012-05-14 18:21:55 -07:00
Vijayendra Bhamidipati 14ae4adbcd CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Fixing failure to load ClusterVSMMapDao by
	putting in a constructor that takes no
	arguments, inClusterVSMMapVO.
2012-05-14 18:20:39 -07:00
Vijayendra Bhamidipati 8362c89782 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Missed replacing older table name for VSMs in a few
	   files (changed the name from
	   external_virtual_switch_management_devices to
	   virtual_supervisor_module). Fixed that in this commit.

	2. Missed adding the new Dao ClusterVSMMapDao in the Dao
	   loading in DefaultComponentLibrary. Fixed.

	3. Fixed wrong searchbuilder options passed to ipaddrSearch
	   in CiscoNexusVSMDeviceDaoImpl.
2012-05-14 18:18:26 -07:00
Vijayendra Bhamidipati 79f3d8b6c4 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added a new VO class to represent a new table
	   "cluster_vsm_map". The class is ClusterVSMMapVO
	   in ClusterVSMMapVO.java. This table has only
	   two fields - clusterId, VSMId. The clusterId can
	   occur only once. But the same VSMId can be tied
	   to different clusterIds.

	2. Added the Dao interface + implementation of the
	   interface. This provides the functions required
	   to populate objects of type ClusterVSMMapVO with
	   records from the cluster_vsm_map table. The
	   interface is defined in ClusterVSMMapDao.java,
	   and the implementation is in ClusterVSMMapDaoImpl.java.

	3. Changed the table name that represents the VSM to
	   "virtual_supervisor_module" from the earlier overly
	   generic "external_virtual_switch_management_devices".

	4. Added search/remove functions to the Dao of the VSM.
	   This is the Dao for the Cisco Nexus VSM -

		CiscoNexusVSMDeviceDao:CiscoNexusVSMDeviceDaoImpl
		 --> This is the Dao Implementation that would let
		     us query/update records on the
		     "virtual_supervisor_module" table that contains
		     the records of all the VSMs that are added to
		     the Management Server.

NOTE::
======
These were some of the changes made as part of the previous commit (#7):

	1. Renamed CiscoNexusVSMResource.java to CiscoNexusVSM.java.

	2. Changed it to not implement a true resource, but to be
	   just a class providing functionality to talk to a VSM.

	3. Modified the AddCiscoNexusVSMCmd class to take in clusterId
	   instead of zoneId + your fix of the String to Long.
2012-05-14 18:17:08 -07:00
Vijayendra Bhamidipati 7e8a8c2d3e Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	This is work in progress. This set of changes will not
	compile. Checking in for team wide code sync up.

	Changes are underway to test if VMWareResource can be
	leveraged to talk to the VSM, instead of creating a
	new resource for the VSM, like we've been doing up
	until now.
2012-05-14 18:16:34 -07:00
Vijayendra Bhamidipati e9d1bfbd3f Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
At this point, the mgmt server comes up, loading the
	   Nexus related modules without dying.

Description:

	1) Added a new properties file for Cisco N1kv VSM commands:
		cisconexusvsm_commands.properties.in

	2) Added the CiscoNexusVSMElement to the components.xml file.

	3) Modified CiscoNexusVSMElement to implement NetworkElement.

		The NetworkElement interface functions are not
	  	relevant to the N1KV VSM, so we override them
	  	with noops.

	4) Added an addDao() of CiscoNexusVSMDeviceDaoImpl in populateDaos(),
	   else we'd run into a failure to look up the VSM's dao when the
	   mgmt server is starting up:

		com.cloud.utils.exception.CloudRuntimeException: Unable to find DAO com.cloud.network.dao.CiscoNexusVSMDeviceDao

	5) Also added the CiscoNexusVSMElementService in populateServices(),
	   and modified CiscoNexusVSMElement to implement Manager as well.

	6) populateServices() was running into an exception that indicated
	   that it was unable to find a commands.properties file for the
	   cisco n1kv vsm service. Fixed it by changing getProperties() in
	   CiscoNexusVSMElement to return the correct string
	   "cisconexusvsm_commands.properties", and putting in an @Override
	   for getProperties() in CiscoNexusVSMElement. Also fixed up all
	   the other functions in CiscoNexusVSMElement that needed to have
	   @Override. Also updated build/developers.xml with this file
	   location. And did other small cleanup.

	7) More clean up in CiscoNexusVSMDeviceManagerImpl.
2012-05-14 18:15:47 -07:00
Vijayendra Bhamidipati aaabd427f6 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Reviewed by: Sateesh Chodapuneedi, Devdeep Singh

Description:

This is the first in a series of commits for integrating the
Cloudstack Management Server with the Nexus 1000v Virtual
Supervisor Module.

These changes introduce the necessary API command interfaces
to work with a Cisco N1KV VSM. The backend logic is still to
be put in and will be incorporated in subsequent commits.
Please do not attempt to use these APIs until then. Also,
these are not yet filled in into commands.xml, so they are
not currently exposed.

Additional APIs would be added if required.

These changes will not break any current management server
functionality.

Given below is a description of the changes put in here:

	Added Cisco N1KV commands to core/api:
	    These are the added commands -

		AddCiscoNexusVSMCmd
		DeleteCiscoNexusVSMCmd
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd
		ListCiscoNexusVSMNetworksCmd

	Added a Network Element service file for Cisco N1KV.

	Declared the interface functions that we'll need for
	the N1KV VSM.

	Defined a DeviceVO file for the Cisco Nexus Element.

	Created a response file for Cisco Nexus VSM.

	Created new event types for external Switching Management devices.

	Put in logic to call interface methods in ListCiscoNexusVSMNetworksCmd
	and ListCiscoNexusVSMCmd

NOT VSM RELATED:
	Fixed minor typo in some of the event types for external load balancers.

       Added properties of a VSM in the VSM VO class.

       Replaced the "url" input parameter by "ipaddress"
       in the AddCiscoNexusVSMCmd API.

       Added a new file - CiscoNexusVSMElement.java to
       contain the implementation of the functions
       declared in the VSMElementService interface, and
       put in implementations of the functions for the
       Nexus VSM API commands. These functions are
       defined in the CiscoNexusVSMElement class.

       Added a class for Port Profiles (PortProfile.java).
       The fields in this class are still not correctly
       declared as of now. We'll make the required changes
       going forward.

	Added CiscoNexusVSMDeviceManagerImpl class.

	Added CiscoNexusVSMResource class.

	Created a new class to provide a package to
	connect to Cisco Nexus VSMs. This will be a
	set of Java wrapper functions that allow us
	to connect/disconnect and send commands and
	receive the results of those commands via
	XML-RPC. These functions are yet to be
	implemented, and will be checked in in future
	commits.

	Added two new classes, VSMCommand and
	VSMResponse, to encapsulate XML-RPCcommands
	and responses to and from a Ciscon Nexus VSM.

	Put in the following function stubs inside the
	CiscoNexusVSMService class:

		connectToVSM()
		disconnectFromVSM()
		executeVSMCommand()

	Added new field in the Type enum of the "Host"
	interface, for Cisco Nexus VSMs.

	Added two parameters to AddCiscoNexusVSMCommand
		vsmName
		zoneId

	Modified the CiscoNexusVSMDeviceVO constructor to
	take in an zoneId as a parameter when creating
	the VO object.

	Added new interface and class for the DeviceDao
	implementation for Cisco Nexus VSM devices:
		CiscoNexusVSMDeviceDao
		CiscoNexusVSMDeviceDaoImpl

	Removed the vsmvCenterDomainId property, since it's
	going to the same as vsmDomainId, which is the VSM's
	switch Domain Id.

	Have started putting in the following query functions
	in the CiscoNexusVSMDeviceDao interface:

	Put in DAO implementations of some of the above functions in the CiscoNexusVSMDeviceDaoImpl class.

	Added a vsmName parameter to the CiscoNexusVSMDeviceVO class.
2012-05-14 18:15:11 -07:00
frank b4b10dc5bc don't call _secMgr.generateSetupCommand each time copying template
it will reboot httpd making in processing copy fail
2012-05-14 14:14:39 -07:00
Pranav Saxena 039f48e096 CS-14873 : Authentication errors
reviewed-by: brian
2012-05-14 11:14:04 -07:00
Alena Prokharchyk ca17d35230 CS-14692: don't allow to remove account specific ip range when it has sourceNat ip address, and associated with non-removed Guest network 2012-05-14 10:13:34 -07:00
Nitin Mehta b2c38acb4e bug CS-14785: Allow attaching the volume for Uploaded volume. Also have transition fo delete volume. 2012-05-14 16:41:56 +05:30
Alena Prokharchyk 5074227858 CS-14783
Fixed limit check when acquire public ip range for the account.
2012-05-11 15:39:59 -07:00
Vijayendra Bhamidipati ab6c8f7986 Bug CS-14853: CloudStack list APIs are listing incorrect IDs for all the entities when API response set to "xml". works fine for "json"
Bug 14071: queryAsyncJobResult in xml format gives incorrect UUIDs back

Description:

	CS-14853 is the same bug as 14071, but seen in Bonita branch
	owing to the fix not being merged from master. So putting in
	the same fix to 3.0.x branch. Description of fix follows.

        Incorrectly removed part of the XML serializer that serialized
        the IdentityProxy object in normal responses, when putting in
        support for serialization of lists of IdentityProxy objects in
        exception responses as part of the code changes put in for bug
        13217, resulting in this bug. Putting it back in place.
2012-05-11 14:44:24 -07:00
Alena Prokharchyk 04b0aea11b CS-14685: Added customdiskofferingmaxsize to the listCapabilities response 2012-05-11 13:45:19 -07:00
Nitin Mehta cf23d2e63f bug CS-14785: Improvements to volumes sync so that it can recover from any error. Introduced new state UploadOp which signifies that the volume os on secondary and the status would be picked up from volume host ref table. 2012-05-11 11:38:07 +05:30
Salvatore Orlando 3131b2c319 Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-05-09 13:07:37 +01:00
Salvatore Orlando f04b62cadc CS-14741: Fixing upgrade script from 2.2.14 to 3.0 2012-05-09 13:05:34 +01:00
Rajesh Battala 44f3846168 Modified S3RestServlet to turn down request if enable.s3.api is false. Changed upgrade script for S3 API Feature 2012-05-09 15:25:39 +05:30
prachi 948aa45050 CS-14753: When Vm is deployed with a Security Group , it also gets associated with the default security group.
Changes:
- StartVM needed to be changed to add default security group only when none is present.
- DeployVm: createAdvancedSecurityGroupVirtualMachine changed to follow the same rule - add default SG only if none is specified.
2012-05-08 15:51:06 -07:00
Nitin Mehta 56f4dec1e2 bug CS-14785: String equality should be through equals function....what was i thinking !!!. 2012-05-08 14:38:38 +05:30
prachi 3d4ccc0a96 CloudStack listTemplatePermissions should add the owner of the template to the list of users having launchPermissions.
If the template is Public, we need not add the owner explicitly.
2012-05-07 11:40:17 -07:00
Naredula Janardhana Reddy e75520259d Bug 14120: Enabling SNAT for all the public NICs.
Summary of changes:
    - snat flag is set to true if it is first ip of the NIC.

reviewed-by: Abhi
2012-05-07 09:59:44 +05:30
Nitin Mehta 8ac10c5941 bug CS-14739: Check for the volume and vm hypervisor compatibility before attaching the volume to vm in case the volume is on secondary storage. 2012-05-04 16:30:08 +05:30
kishan 32085c960e bug CS-14763: Added missing 301 to 302 path for 2.2.10 upgrade
status CS-14763: resolved fixed
reviewed-by: Abhi

Conflicts:

	server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java
2012-05-04 16:09:28 +05:30
JohnZ ef2c7423f1 S3 API merged branch 2012-05-02 15:51:10 +01:00
Salvatore Orlando 486d962f09 CS-14724 : Making the default network label configurable, improving exception management
Please also see notes added to wiki.cloudstack.org/display/QA/Open+vSwitch+Tunnel+Manager
2012-05-02 13:14:47 +01:00
Nitin Mehta 7a06da8520 bug CS-10789: Some more code to make the Uploav volume more robust. 2012-05-02 11:24:46 +05:30
Nitin Mehta 540f4e1431 bug CS-10789: Put zone id in the volumehost ref table. make list volume to show the percent uploaded. 2012-05-01 18:36:31 +05:30
Vijayendra Bhamidipati f601db1304 Bug 14060: Include a CloudStack error code in an Exception Response
Bug 13127: API error text refer to database ids instead of uuids

Code-Reviewers: Ewan Mellor, Kelven Yang

Description:

	1. A new class CSExceptionErrorCode has been added to utils.
	   It contains a list of error codes for each type of
	   Exception class. Use fully qualified package paths for
	   Exceptions in CSExceptionErrorCode.  We log any exception
	   name not found in the list of error codes for exceptions.

	2. Whenever we throw an exception exobj anywhere in the
	   CS code, the CSErrorCode is set in the base class
	   constructor.

	3. We add a new field csErrorCode in classes CloudException,
	   RuntimeCloudException, ExecutionException and
	   ExceptionResponse.

	4. Two places in ApiServer.java were wrongly modified when
	   putting in changes for bug 13127 to not throw an exception.
	   This has been corrected in this commit.
2012-05-01 13:48:15 +01:00
Kelven Yang cd13762e44 Console proxy refactoring incremental check-in - new VNC protocol implementation 2012-05-01 13:45:15 +01:00
Alena Prokharchyk 0077234576 Fixed unittest and some issues with 2.2.14-3.0 upgrade 2012-05-01 13:34:05 +01:00
Vijayendra Bhamidipati 1d749bb9d3 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Modified the IdentityTypeAdapter's custom serializer to
	identify whether this is an exception response that is being
	serialized, by checking if the idFieldName is set. If so,
	serialize both uuid and the uuidProperty (for eg, zoneId and
	"zoneId" (string)) and pass back the json representation of that.

	Modified XML serializer also to build a list of uuids+fieldnames.

	Introduced a new field "cserrorcode" in ExceptionResponse. This
	refers to an error code that can be according to the specific
	Exception being thrown. This will be serialized as usual. There
	shouldn't be any need to do a db lookup for conversion for these
	error codes.
2012-05-01 13:28:22 +01:00
Vijayendra Bhamidipati bea85d47a7 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Modify Exception handling to enable addition of multiple
	uuids in a single exception thrown by API functions. Both
	XML and JSON outputs will store all uuids and Fieldnames.
	This will make it easier to provide more information when
	an exception occurs - for example, a zone id, a cluster id,
	host id, and then a specific property id.
2012-05-01 13:28:21 +01:00
Vijayendra Bhamidipati 094f01be41 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Added a field name for the db id in the IdentityProxy class, and
	modified setProxyObject() to take an additional id name parameter.
	This will let us know the name of the uuid that we are returning.
	E.g.- domainId, zoneId, etc. The client can view this field in
	the json/xml output. Modified the JSON/XML serialization routines
	to append this new parameter to the serialized output for Exception
	Responses.
2012-05-01 13:28:20 +01:00
Vijayendra Bhamidipati 7ea32a4471 Bug 13127: API error text refer to database ids instead of uuids
Description:

	1) Put in an IdentityProxy object in the ExceptionResponse class.
	   This allows us to copy over the IdentityProxy object contained
	   in the exception caught by handlerequest() when thrown by the
	   command's execute() method, into the Response object that is
	   prepared to return an exception response to the calling API
	   invocation.

	2) Modified the GSON serialization method to conver the entire
	   exception object into JSON format and not just the error text.

	3) Modify the updateDomain API to populate the exception it throws
	   upon detecting a duplicate domain to include the tablename and
	   domain db id in the exception's IdentityProxy object.

	NOTE:
	1) We can modify the base exception classes and the ExceptionResponse
	   class to contain a list of IdentityProxy objects rather than a
	   single one.
	2) We will need to modify all commands such that wherever applicable
	   (wherever a db id is involved), they populate the IdentityProxy
	   object(s) before throwing an exception.
2012-05-01 13:28:19 +01:00
Vijayendra Bhamidipati b4cefb4cc6 Bug 13127: API error text refer to database ids instead of uuids
Description:

	1) Added a setProxyObject() method to CloudException and RuntimeCloudException
	2) Modified a bunch of throw exceptions in NetworkManagerImpl.java to call setProxyObject() before throwing an exception.
	3) Changed scope of ProxyIdentity attribute to protected.
	4) Added routines to ServerApiException to get/set IdentityProxy object, and
	   routine in RuntimeCloudException to get the Idproxy object.
	5) Modified the exception handling around the dispatcher and handlerequest()
	   to copy over the IdentityProxy information before rethrowing an exception
	   eventually back to handle().
	6) Removed duplicate IdentityProxy object in ServerApiException.
	   It was extending RuntimeCloudException which already had an
	   IdentityProxy object.
2012-05-01 13:28:16 +01:00
Vijayendra Bhamidipati efdaa4d110 Bug 13127: API error text refer to database ids instead of uuids
Description:

1)	Moved RuntimeCloudException from api/ to utils/.

	Added simple constructor to RuntimeCloudException.

	Modified all classes that extended RuntimeException
	to extend RuntimeCloudException. These classes
	are listed below:

		ServerApiException
		CloudAuthenticationException
		CloudExecutionException
		AsyncCommandQueued
		HypervisorVersionChangedException
		RuntimeCloudException

2)	Added overloaded constructed to CloudException.
	Modified all classes that extend Exception to extend CloudException instead.
	These classes are listed below:

		ConcurrentOperationException
                ConflictingNetworkSettingsException
                ConnectionException
                DiscoveryException
                InsufficientCapacityException
                ManagementServerException
                ResourceUnavailableException
                VirtualMachineMigrationException
                AgentControlChannelException
                OperationTimedoutException.java
                UnsupportedVersionException.java
                UsageServerException.java
                UnableDeleteHostException.java
                AgentAuthnException.java
                HttpCallException.java
                ActiveFencingException.java
                ClusterInvalidSessionException.java
                GreTunnelException.java
                OvsVlanExhaustedException.java
2012-05-01 13:21:44 +01:00
U-CITRITE\vijayendra1 89db087981 Bug 13127: API error text refer to database ids instead of uuids
Description:

1)	Adding two new classes, CloudException and RunTimeCloudException.
	The former extends Exception and the latter RunTimeException.
	These will be used by classes that formerly directly extended
	Exception and RuntimeException. These two classes have an attribute
	of type IdentityProxy to enable exceptions fill in db ids in separate
	attribute fields rather than in a string. Doing so will allow the
	serialization module (GSON for JSON and other for XML) to kick in
	and convert this db id to a uuid in ApiServer.java just before the
	JSON/XML responses are sent out.

2)	Moving IdentityProxy.java from api/ to utils/ since
	both CloudException and RuntimeCloudException refer to it.

3)	Changing references to IdentityProxy class from api/ to utils/.

4)	While rebasing to master, a new file was added, merging
	api/src/com/cloud/api/response/IsoVmResponse.java to this diff.
2012-05-01 13:21:42 +01:00
anthony 45051d7a9f bug 13832: fixed NPE
status 13832: resolved fixed
2012-05-01 13:15:36 +01:00
Likitha Shetty daf2af7e45 Bug 4644 (Pranav) 2012-05-01 13:08:19 +01:00
abhi b5654a6fd1 bug 13673: stopping alien VMs during sync for Xenserver 2012-05-01 13:00:03 +01:00
Alena Prokharchyk a3fb4cf9c1 Update apikey/secretkey in transaction 2012-05-01 11:02:25 +01:00
Nitin Mehta baf6b6eb82 Bug 13591: Remove unwarranted log messages that we are printing with every answer recieved from the agent.
Reviewed-By: Kishan
2012-05-01 11:02:22 +01:00
kishan f2a08afd6f bug CS-14695: Encrypt VNC password during 3.0.0 upgrade
status CS-14695: resolved fixed
reviewed-by: Abhi
2012-05-01 11:16:24 +05:30
prachi 9a4f5f90a2 Fix error from merge 2012-04-30 17:08:36 -07:00
Likitha Shetty 6ab04076b5 Implementation of api 'markDefaultZoneForAccount'(to enable a user to mark a zone as default for an account).
reviewed-by: prachi
2012-04-30 17:08:32 -07:00
prachi 38fffccb58 - Changes to EC2MainServlet to turn down request in enable.ec2.api is 'false'
- runInstances now calls CS to get the matching serviceOffering for the EC2 instanceType
2012-04-30 17:08:19 -07:00
prachi 1fa596fcf5 DeployVMCmd: Do not place the instance in default security group if groupId is provided 2012-04-30 17:07:30 -07:00
prachi 46ccc1ec79 Fixes related to
- DescribeImages
- Fix Vm current state in runInstances
- Set hypervisor to UserVm response in CloudStack
2012-04-30 17:07:28 -07:00
Alena Prokharchyk e5ed22f55f bug 14694: when select valid clusters, exclude the removed ones
status 14694: resolved fixed
2012-04-30 13:10:49 -07:00
Abhi 007f291235 adding a plaintext authenticator 2012-04-30 16:41:35 +05:30
Nitin Mehta 8de5da1c91 bug CS-10789: Decrement and increment the resource count on volume correctly. 2012-04-30 11:15:12 +05:30
Nitin Mehta 6a056ad139 bug CS-10789: More changes for the imageformat, introdueced new column in db for the format, created scripts for doffernt hypervisors ...and the list goes on. 2012-04-30 11:14:43 +05:30
Nitin Mehta cf0b36319d bug CS-10789: Make the custome disk offering as system so that its not availble to the regular user.
Reviewed By: Kishan
2012-04-30 11:13:01 +05:30
Nitin Mehta c2d51d7038 bug CS-10789: Adding more code changes for usage, delete volume . 2012-04-30 11:11:54 +05:30
Nitin Mehta 10b32ce882 bug CS-10789: Adding volume sync and delete functionality. 2012-04-30 11:11:26 +05:30
Nitin Mehta 8196132f68 bug CS-10789: Preliminary upload and attach changes work . 2012-04-30 11:09:37 +05:30
Nitin Mehta 2d7471adb5 Bug 10808: More changes for uploadVolume. Create framework for upload volume progress communication between MS and SSVM. 2012-04-30 09:46:23 +05:30
Nitin Mehta 02407c48f3 Bug 10808: Add Upload Volume api and do validation. 2012-04-30 09:43:23 +05:30
Abhi 6726f3b0d0 bug CS-14663: accepting encoded password for MD5 2012-04-28 12:30:29 +05:30
Salvatore Orlando ce56ddf75a CS-14606: Restoring config parameter which was accidentally removed 2012-04-27 17:13:10 +01:00
Salvatore Orlando 6e024e945d CS-14606: Change name for config parameter 2012-04-27 16:38:33 +01:00
Alena Prokharchyk 7e4c5e1267 CS-14637: db upgrade - fixed inconsistencies in category/component fields for a bunch of global config variables 2012-04-26 10:09:53 -07:00
Salvatore Orlando 23b20e3b04 Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-04-25 20:06:26 +01:00
Alena Prokharchyk 1c9af77f59 Set ha host to false when no ha tag is enabled 2012-04-25 11:04:07 -07:00
Salvatore Orlando 88131e5db6 CS-14605: OVS cleanup
Fix syntax errors in ConfigurationManager and Resource Manager test

Conflicts:

	server/src/com/cloud/network/ovs/OvsTunnelManagerImpl.java
	server/test/com/cloud/agent/manager/ResourceManagerTest.java
2012-04-25 15:11:05 +01:00
Salvatore Orlando 33a2b17972 CS-14605: OVS Tunnel Manager Clean-up
1) Remove old VLAN-in-overlay manager
2) Remove unused DAO objects
3) Fix code using removed object (all stale lines)

Conflicts:

	server/src/com/cloud/network/ovs/GreTunnelException.java
	server/src/com/cloud/network/ovs/OvsVlanExhaustedException.java
	server/src/com/cloud/network/ovs/dao/OvsTunnelAccountDao.java
	server/src/com/cloud/network/ovs/dao/OvsTunnelAccountDaoImpl.java
	server/src/com/cloud/network/ovs/dao/OvsTunnelAccountVO.java
2012-04-25 15:03:47 +01:00
Salvatore Orlando f7836ba61c Merge branch '3.0.x' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 3.0.x 2012-04-25 09:50:48 +01:00
Alena Prokharchyk 4e3bdb62d2 Account specific vlan ranges - fixed deleteVlanRange
Conflicts:

	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
2012-04-24 17:16:58 -07:00