Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 2DD5F200BD0 for ; Wed, 30 Nov 2016 15:02:01 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 2C51F160B08; Wed, 30 Nov 2016 14:02:01 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 01DD0160B19 for ; Wed, 30 Nov 2016 15:01:59 +0100 (CET) Received: (qmail 62872 invoked by uid 500); 30 Nov 2016 14:01:59 -0000 Mailing-List: contact issues-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list issues@cloudstack.apache.org Received: (qmail 62614 invoked by uid 500); 30 Nov 2016 14:01:58 -0000 Delivered-To: apmail-incubator-cloudstack-issues@incubator.apache.org Received: (qmail 62608 invoked by uid 99); 30 Nov 2016 14:01:58 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Nov 2016 14:01:58 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id B2A3F2C0453 for ; Wed, 30 Nov 2016 14:01:58 +0000 (UTC) Date: Wed, 30 Nov 2016 14:01:58 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: cloudstack-issues@incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CLOUDSTACK-9403) Nuage VSP Plugin : Support for SharedNetwork fuctionality including Marvin test coverage MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Wed, 30 Nov 2016 14:02:01 -0000 [ https://issues.apache.org/jira/browse/CLOUDSTACK-9403?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15708673#comment-15708673 ] ASF GitHub Bot commented on CLOUDSTACK-9403: -------------------------------------------- Github user fmaximus commented on a diff in the pull request: https://github.com/apache/cloudstack/pull/1579#discussion_r90236739 --- Diff: api/src/com/cloud/network/Network.java --- @@ -215,6 +216,8 @@ public static Provider getProvider(String providerName) { public static final Capability DistributedRouter = new Capability("DistributedRouter"); public static final Capability StretchedL2Subnet = new Capability("StretchedL2Subnet"); public static final Capability RegionLevelVpc = new Capability("RegionLevelVpc"); + public static final Capability NoVlan = new Capability("NoVlan"); + public static final Capability PublicAccess = new Capability("PublicAccess"); --- End diff -- NoVlan is a Capability we're currently using when adding a new IP range to an existing shared network. Without this, the Broadcast URI would become vlan://untagged, while the shared network has a Broadcast URI of vsp://network-uuid. When the CIDR of the new ip range is the same as one of the already existing ip ranges, it would still not be allowed as the vlan id is different. > Nuage VSP Plugin : Support for SharedNetwork fuctionality including Marvin test coverage > ---------------------------------------------------------------------------------------- > > Key: CLOUDSTACK-9403 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9403 > Project: CloudStack > Issue Type: Task > Security Level: Public(Anyone can view this level - this is the default.) > Components: Automation, Network Controller > Reporter: Rahul Singal > Assignee: Nick Livens > > This is first phase of support of Shared Network in cloudstack through NuageVsp Network Plugin. A shared network is a type of virtual network that is shared between multiple accounts i.e. a shared network can be accessed by virtual machines that belong to many different accounts. This basic functionality will be supported with the below common use case: > - shared network can be used for monitoring purposes. A shared network can be assigned to a domain and can be used for monitoring VMs belonging to all accounts in that domain. > - Public accessible of shared Network. > With the current implementation with NuageVsp plugin, It support over-lapping of Ip address, Public Access and also adding Ip ranges in shared Network. > In VSD, it is implemented in below manner: > - In order to have tenant isolation for shared networks, we will have to create a Shared L3 Subnet for each shared network, and instantiate it across the relevant enterprises. A shared network will only exist under an enterprise when it is needed, so when the first VM is spinned under that ACS domain inside that shared network. > - For public shared Network it will also create a floating ip subnet pool in VSD along with all the things mentioned in above point. > PR contents: > 1) Support for shared networks with tenant isolation on master with Nuage VSP SDN Plugin. > 2) Support of shared network with publicly accessible ip ranges. > 2) Marvin test coverage for shared networks on master with Nuage VSP SDN Plugin. > 3) Enhancements on our exiting Marvin test code (nuagevsp plugins directory). > 4) PEP8 & PyFlakes compliance with our Marvin test code. > Test Results are:- > Valiate that ROOT admin is NOT able to deploy a VM for a user in ROOT domain in a shared network with ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_account_ROOTuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for a admin user in a shared network with ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_account_differentdomain | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for admin user in the same domain but in a ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_account_domainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for user in the same domain but in a different ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_account_domainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for regular user in a shared network with scope=account ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_account_user | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for user in ROOT domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_all_ROOTuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for a domain admin users in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_all_domainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for other users in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_all_domainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for admin user in a domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_all_subdomainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for any user in a subdomain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_all_subdomainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for parent domain admin user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_ROOTuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for domain admin user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_domainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for domain user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_domainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for parent domain admin user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_parentdomainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for parent domain user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_parentdomainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for sub domain admin user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_subdomainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for sub domain user in a shared network with scope=domain with no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_nosubdomainaccess_subdomainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for user in ROOT domain in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_ROOTuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for domain admin user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_domainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for domain user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_domainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for parent domain admin user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_parentdomainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is NOT able to deploy a VM for parent domain user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_parentdomainuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for subdomain admin user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_subdomainadminuser | Status : SUCCESS === > ok > Valiate that ROOT admin is able to deploy a VM for subdomain user in a shared network with scope=domain with subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_admin_scope_domain_withsubdomainaccess_subdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for an regular user in ROOT domain in a shared network with scope=account ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_account_ROOTuser | Status : SUCCESS === > ok > Valiate that Domain admin is able NOT able to deploy a VM for an regular user from a differnt domain in a shared network with scope=account ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_account_differentdomain | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for an admin user in the same domain but belonging ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_account_domainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for user in the same domain but belonging to a ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_account_domainuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for an regular user in a shared network with scope=account ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_account_user | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for user in ROOT domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_ROOTuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for user in other domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_crossdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for a domain admin user in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_domainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for a domain user in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_domainuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for a sub domain admin user in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_subdomainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for a sub domain user in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_all_subdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for user in ROOT domain in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_ROOTuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for domain admin user in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_domainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for domain user in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_domainuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy VM for parent domain admin user in shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_parentdomainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for parent domain user in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_parentdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for sub domain admin user in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_subdomainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for sub domain user in a shared network with scope=Domain and no subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_nosubdomainaccess_subdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is NOT able to deploy a VM for user in ROOT domain in a shared network with scope=Domain and subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_ROOTuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for admin user in domain in a shared network with scope=Domain and subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_domainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for regular user in domain in a shared network with scope=Domain and subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_domainuser | Status : SUCCESS === > ok > Validate that Domain admin is NOT able to deploy VM for admin user in parent domain in shared network with scope=Domain subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_parentdomainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin NOT able to deploy VM for regular user in parent domain in shared network with scope=Domain subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_parentdomainuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for admin user in subdomain in a shared network with scope=Domain and subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_subdomainadminuser | Status : SUCCESS === > ok > Valiate that Domain admin is able to deploy a VM for regular user in subdomain in a shared network with scope=Domain and subdomain access ... === TestName: test_deployVM_in_sharedNetwork_as_domainadmin_scope_domain_withsubdomainaccess_subdomainuser | Status : SUCCESS === > ok > Valiate that regular user is able NOT able to deploy a VM for another user in the same domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_regularuser_scope_all_anotherusersamedomain | Status : SUCCESS === > ok > Valiate that regular user is able NOT able to deploy a VM for another user in a different domain in a shared network with scope=all ... === TestName: test_deployVM_in_sharedNetwork_as_regularuser_scope_all_crossdomain | Status : SUCCESS === > ok > ---------------------------------------------------------------------- > Ran 51 tests in 3192.356s > OK > For monitoring useCase test runs are:- > Valiate that Normal user in the same domain able to add NIC in a shared network with scope=all ... === TestName: test_01_addNic_in_sharedNetwork_scope_all_as_domainuser | Status : SUCCESS === > ok > Valiate that Parent domain admin is able to add a NIC in a shared network with scope=all ... === TestName: test_02_addNic_in_sharedNetwork_scope_all_as_domain_parentAdmin | Status : SUCCESS === > ok > Valiate that User can enable staticNat on VPC NIC where second nicn is in a shared network with scope=all ... === TestName: test_03_staticNat_in_VPC_secondNic_sharedNetwork_scope_all | Status : SUCCESS === > ok > Validate that reboot VM is done successfully without any Error ... === TestName: test_04_rebootVM_after_sharedNetwork_nic | Status : SUCCESS === > ok > Validate that restart Tier Network is done successfully with cleanup ... === TestName: test_05_restart_Tier_VPC_Network_sharedNetwork_nic | Status : SUCCESS === > ok > Validate that restart Shared Network is done successfully without any Error ... === TestName: test_06_restart_sharedNetwork_scope_all | Status : SUCCESS === > ok > Valiate that Normal user in the same domain able to remove NIC in a shared network which is added by Parent Domain Admin ... === TestName: test_07_removeNic_in_sharedNetwork_scope_all_as_domainuser | Status : SUCCESS === > ok > Valiate that Parent domain admin is able to remove a NIC which is added by child domain user ... === TestName: test_08_removeNic_in_sharedNetwork_scope_all_as_domain_parentAdmin | Status : SUCCESS === > ok > Valiate that Normal user in the same domain able to add NIC in a shared network with scope=domain without subdomain Access ... === TestName: test_09_addNic_in_sharedNetwork_scope_domain_as_domainuser | Status : SUCCESS === > ok > Valiate that Normal user in the same domain able to add NIC in a shared network with scope=domain with subdomain Access ... === TestName: test_10_addNic_in_sharedNetwork_scope_domain_subdomain_as_domainuser | Status : SUCCESS === > ok > ---------------------------------------------------------------------- > Ran 10 tests in 744.354s > OK -- This message was sent by Atlassian JIRA (v6.3.4#6332)