Return-Path: X-Original-To: apmail-cloudstack-issues-archive@www.apache.org Delivered-To: apmail-cloudstack-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A687F18913 for ; Wed, 3 Feb 2016 09:01:40 +0000 (UTC) Received: (qmail 28530 invoked by uid 500); 3 Feb 2016 09:01:40 -0000 Delivered-To: apmail-cloudstack-issues-archive@cloudstack.apache.org Received: (qmail 28464 invoked by uid 500); 3 Feb 2016 09:01:40 -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 28237 invoked by uid 500); 3 Feb 2016 09:01:40 -0000 Delivered-To: apmail-incubator-cloudstack-issues@incubator.apache.org Received: (qmail 28201 invoked by uid 99); 3 Feb 2016 09:01:40 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 03 Feb 2016 09:01:39 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id D91E72C1F58 for ; Wed, 3 Feb 2016 09:01:39 +0000 (UTC) Date: Wed, 3 Feb 2016 09:01:39 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: cloudstack-issues@incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CLOUDSTACK-9140) Testcase to verify if Dedicated cluster is used for virtual routers that belong to non-dedicated account MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CLOUDSTACK-9140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15130062#comment-15130062 ] ASF GitHub Bot commented on CLOUDSTACK-9140: -------------------------------------------- Github user sanju1010 commented on a diff in the pull request: https://github.com/apache/cloudstack/pull/1218#discussion_r51694011 --- Diff: test/integration/component/maint/testpath_disable_enable_zone.py --- @@ -1691,3 +1696,159 @@ def test_01_disable_enable_host(self): ) return + + +class TestClusterDedication(cloudstackTestCase): + + @classmethod + def setUpClass(cls): + testClient = super(TestClusterDedication, cls).getClsTestClient() + cls.apiclient = testClient.getApiClient() + cls.testdata = testClient.getParsedTestDataConfig() + cls.hypervisor = cls.testClient.getHypervisorInfo() + + # Get Zone, Domain and templates + cls.domain = get_domain(cls.apiclient) + cls.zone = get_zone(cls.apiclient, testClient.getZoneForTests()) + + cls.template = get_template( + cls.apiclient, + cls.zone.id, + cls.testdata["ostype"]) + + cls.Skiptest = False + cls._cleanup = [] + cls.clusters = Cluster.list(cls.apiclient, zoneid=cls.zone.id) + if len(cls.clusters) < 2: + cls.Skiptest = True + + try: + # Create an account + cls.account_1 = Account.create( + cls.apiclient, + cls.testdata["account"], + domainid=cls.domain.id + ) + + cls._cleanup.append(cls.account_1) + + cls.account_2 = Account.create( + cls.apiclient, + cls.testdata["account"], + domainid=cls.domain.id + ) + + cls._cleanup.append(cls.account_2) + # Create user api client of the account + cls.userapiclient_1 = testClient.getUserApiClient( + UserName=cls.account_1.name, + DomainName=cls.account_1.domain + ) + cls.userapiclient_2 = testClient.getUserApiClient( + UserName=cls.account_2.name, + DomainName=cls.account_2.domain + ) + + # Create Service offering + cls.service_offering = ServiceOffering.create( + cls.apiclient, + cls.testdata["service_offering"], + ) + cls._cleanup.append(cls.service_offering) + + cls.disk_offering = DiskOffering.create( + cls.apiclient, + cls.testdata["disk_offering"], + ) + + cls._cleanup.append(cls.disk_offering) + + except Exception as e: + cls.tearDownClass() + raise e + return + + @classmethod + def tearDownClass(cls): + try: + cleanup_resources(cls.apiclient, cls._cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + + def setUp(self): + + if self.Skiptest: + self.skipTest("Insufficient clusters to run the test") + + self.apiclient = self.testClient.getApiClient() + self.dbclient = self.testClient.getDbConnection() + self.cleanup = [] + + def tearDown(self): + try: + listClusterscmd = listDedicatedClusters.listDedicatedClustersCmd() + listClusterscmd.clusterid = self.clusters[0].id + ret_list = self.apiclient.listDedicatedClusters(listClusterscmd) + if ret_list: + dedicateCmd = releaseDedicatedCluster.releaseDedicatedClusterCmd() + dedicateCmd.clusterid = self.clusters[0].id + self.apiclient.releaseDedicatedCluster(dedicateCmd) + + cleanup_resources(self.apiclient, self.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + @attr(tags=["basic", "advanced"], required_hardware="false") + def test_01_dedicated_cluster_allocation(self): + """ Dedicated cluster and router allocation + 1. Dedicate a cluster to one account + 2. Deploy a VM on dedicated account + 3. Deploy another VM on another account. + 4. Verify the dedicated cluster is not used for + virtual routers that belong to non-dedicated account + """ + + # Step 1 + dedicateCmd = dedicateCluster.dedicateClusterCmd() + dedicateCmd.clusterid = self.clusters[0].id + dedicateCmd.domainid = self.domain.id + dedicateCmd.account = self.account_1.name + self.apiclient.dedicateCluster(dedicateCmd) + + # Step 2 + self.vm = VirtualMachine.create( + self.userapiclient_1, + self.testdata["small"], + templateid=self.template.id, + accountid=self.account_1.name, + domainid=self.account_1.domainid, + serviceofferingid=self.service_offering.id, + zoneid=self.zone.id, + mode=self.zone.networktype + ) + + # Step 3 + self.vm_1 = VirtualMachine.create( + self.userapiclient_2, + self.testdata["small"], + templateid=self.template.id, + accountid=self.account_2.name, + domainid=self.account_2.domainid, + serviceofferingid=self.service_offering.id, + zoneid=self.zone.id, + mode=self.zone.networktype + ) + + # Step 4 + routerList = list_routers(self.apiclient, + clusterid=self.clusters[0].id, + networkid=self.vm_1.nic[0].networkid + ) + self.assertEqual( --- End diff -- Add similar validation for vm_1 as well > Testcase to verify if Dedicated cluster is used for virtual routers that belong to non-dedicated account > -------------------------------------------------------------------------------------------------------- > > Key: CLOUDSTACK-9140 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9140 > Project: CloudStack > Issue Type: Test > Security Level: Public(Anyone can view this level - this is the default.) > Components: Automation > Affects Versions: 4.2.1 > Reporter: Priti Sarap > Fix For: 4.5.1 > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)