-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/23282/
-----------------------------------------------------------
Review request for cloudstack and Hugo Trippaers.
Bugs: CLOUDSTACK-6845
https://issues.apache.org/jira/browse/CLOUDSTACK-6845
Repository: cloudstack-git
Description
-------
This is first code drop for NuageVsp Network plugin support that will bring the
Nuage VSP network virtualization technology to CloudStack.
Diffs
-----
api/src/com/cloud/event/EventTypes.java 5b9ea5c
api/src/com/cloud/network/Network.java 885bffe
api/src/com/cloud/network/Networks.java 1e4d229
api/src/com/cloud/network/PhysicalNetwork.java 8cc214e
build/replace.properties 265f335
client/WEB-INF/classes/resources/messages.properties b192cb0
client/WEB-INF/classes/resources/messages_zh_CN.properties 1ec4e95
client/pom.xml 29fef4f
client/tomcatconf/commands.properties.in b9ac27b
client/tomcatconf/log4j-cloud.xml.in 08021f2
packaging/debian/replace.properties 5a0bd58
plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/OvsVifDriver.java
8e4c710
plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
5b49e5b
plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/CitrixResourceBase.java
a9840bd
plugins/network-elements/nuage-vsp/pom.xml PRE-CREATION
plugins/network-elements/nuage-vsp/resources/META-INF/cloudstack/vsp/module.properties
PRE-CREATION
plugins/network-elements/nuage-vsp/resources/META-INF/cloudstack/vsp/spring-vsp-context.xml
PRE-CREATION
plugins/network-elements/nuage-vsp/resources/META-INF/cloudstack/vsp/vsp-defaults.ini
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/StartupVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/VspResourceAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/VspResourceCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ApplyAclRuleVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ApplyAclRuleVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ApplyStaticNatVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ApplyStaticNatVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ShutDownVpcVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/element/ShutDownVpcVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/DeallocateVmVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/DeallocateVmVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ImplementNetworkVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ImplementNetworkVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ReleaseVmVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ReleaseVmVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ReserveVmInterfaceVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/ReserveVmInterfaceVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/TrashNetworkVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/guru/TrashNetworkVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/sync/SyncVspAnswer.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/agent/api/sync/SyncVspCommand.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/commands/AddNuageVspDeviceCmd.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/commands/DeleteNuageVspDeviceCmd.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/commands/IssueNuageVspResourceRequestCmd.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/commands/ListNuageVspDevicesCmd.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/commands/VspConstants.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/response/NuageVspDeviceResponse.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/api/response/NuageVspResourceResponse.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/NuageVspDeviceVO.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/dao/NuageVspDao.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/dao/NuageVspDaoImpl.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/element/NuageVspElement.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/element/NuageVspVpcElement.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/guru/NuageVspGuestNetworkGuru.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/manager/NuageVspManager.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/manager/NuageVspManagerImpl.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/resource/NuageVspResource.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/sync/NuageVspSync.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/com/cloud/network/sync/NuageVspSyncImpl.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/net/nuage/vsp/acs/NuageVspPluginClientLoader.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/net/nuage/vsp/acs/client/NuageVspApiClient.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/net/nuage/vsp/acs/client/NuageVspElementClient.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/net/nuage/vsp/acs/client/NuageVspGuruClient.java
PRE-CREATION
plugins/network-elements/nuage-vsp/src/net/nuage/vsp/acs/client/NuageVspSyncClient.java
PRE-CREATION
plugins/network-elements/nuage-vsp/test/com/cloud/network/element/NuageVspElementTest.java
PRE-CREATION
plugins/network-elements/nuage-vsp/test/com/cloud/network/guru/NuageVspGuestNetworkGuruTest.java
PRE-CREATION
plugins/pom.xml b5e6a61
server/src/com/cloud/api/ApiResponseHelper.java 51122e0
server/src/com/cloud/configuration/ConfigurationManagerImpl.java 897f8e1
server/src/com/cloud/network/NetworkServiceImpl.java b3de9e3
server/src/com/cloud/network/vpc/VpcManagerImpl.java c7237c1
setup/db/create-schema.sql fe5cd0a
setup/db/db/schema-440to450.sql c88a18a
tools/apidoc/gen_toc.py 827d6bf
ui/dictionary.jsp e9d84de
ui/scripts/configuration.js 9311e37
ui/scripts/docs.js 74a08bc
ui/scripts/system.js 9012580
ui/scripts/ui-custom/zoneWizard.js 4091c03
vmware-base/src/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
dd55439
Diff: https://reviews.apache.org/r/23282/diff/
Testing
-------
Nuage VSP plugin depends on following components of Nuage SDN solution
a) Nuage VSD
b) Nuage VSC
c) Nuage VRS, this needs installed on the Hypervisor
All the above components needs to be provisioned for the plugin to function
properly. Also, Nuage VSP plugin directly talks with Nuage VSD using Rest API.
So, all the components needs to be running to test the plugin functionality.
The following tests are tested
Isolated Network Test Cases
a) Create a network offering with default egress deny rule and select services
supported by Nuage VSP plugin. Choose NuageVsp as the service provider for
DHCP, SourceNAT, StaticNAT, Firewall and Virtual Networking services.
Choose VirtualRouter as the service provider for UserData service.
b) Create an isolated Network with network offering created above
c) Spawn 2 VMs. Verify that VMs should each get an IP address. They should ping
each other. Verify that SSH to a box on the external network should fail
b) Create a Static NAT and associate it one of the VM. Add an Egress rule for
the network with source CIDR as 0.0.0.0/0, protocol as TCP and ssh port number
d) Verify that SSH to box that is in the external network should work
e) Verify that Password reset for the VM should work
VPC Test Cases
a) Create a network offering for VPC with default deny all rule and select
services supported by Nuage VSP plugin for VPC. Choose NuageVsp as the service
provider for DHCP, SourceNAT, StaticNAT and Virtual Networking services. Choose
NuageVspVpc for NerworkACL service.
b) Create an VPC and select "Default VPC offering with NuageVsp" as the VPC
offering
c) Create a tier and select the network offering created above
c) Spawn 2 VMs. Verify that VMs should each get an IP address. They should ping
each other. SSH to a box on the external network should fail
d) Create a Static NAT and associate it one of the VM
e) Add an Network ACL Egress rule for the network with source CIDR as
0.0.0.0/0, protocol as TCP and ssh port number
f) Verify that SSH to box that is in the external network should work
Thanks,
Suresh Ramamurthy