示例#1
0
    def test_vn_delete(self):
        vn_name = self.id() + 'vn'
        vn = self.create_virtual_network(vn_name, "10.1.1.0/24")
        gevent.sleep(2)
        self.assertTill(self.vnc_db_has_ident, obj=vn)

        self.check_vn_ri_state(fq_name=self.get_ri_name(vn))

        # stop st
        test_common.kill_schema_transformer(self._st_greenlet)
        gevent.sleep(5)

        # delete vn in api server
        self._vnc_lib.virtual_network_delete(fq_name=vn.get_fq_name())

        # start st on a free port
        self._st_greenlet = gevent.spawn(test_common.launch_schema_transformer,
            self._cluster_id, self.id(), self._api_server_ip,
            self._api_server_port)
        test_common.wait_for_schema_transformer_up()

        # check if vn is deleted
        self.check_vn_is_deleted(uuid=vn.uuid)

        # check if ri is deleted
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn))
    def test_st_restart_service_chain(self):
        self.skipTest("restart test flaky")
        # create  vn1
        vn1_name = self.id() + 'vn1'
        vn1_obj = self.create_virtual_network(vn1_name, '10.0.0.0/24')

        # create vn2
        vn2_name = self.id() + 'vn2'
        vn2_obj = self.create_virtual_network(vn2_name, '20.0.0.0/24')

        service_name = self.id() + 's1'
        np = self.create_network_policy(vn1_obj, vn2_obj, [service_name])
        seq = SequenceType(1, 1)
        vnp = VirtualNetworkPolicyType(seq)

        vn1_obj.set_network_policy(np, vnp)
        vn2_obj.set_network_policy(np, vnp)
        self._vnc_lib.virtual_network_update(vn1_obj)
        self._vnc_lib.virtual_network_update(vn2_obj)

        # stop st and wait for sometime
        gevent.sleep(1)
        test_common.kill_schema_transformer(self._st_greenlet)
        gevent.sleep(5)

        # start st on a free port
        self._st_greenlet = gevent.spawn(test_common.launch_schema_transformer,
                                         self._api_server_ip,
                                         self._api_server_port)
        gevent.sleep(4)

        #check service chain state
        sc = self.wait_to_get_sc()
        sc_ri_name = ('service-' + sc[0] + '-default-domain_default-project_' +
                      service_name)

        self.check_ri_state_vn_policy(self.get_ri_name(vn1_obj),
                                      self.get_ri_name(vn1_obj, sc_ri_name))
        self.check_ri_state_vn_policy(self.get_ri_name(vn2_obj, sc_ri_name),
                                      self.get_ri_name(vn2_obj))

        #cleanup
        vn1_obj.del_network_policy(np)
        vn2_obj.del_network_policy(np)
        self._vnc_lib.virtual_network_update(vn1_obj)
        self._vnc_lib.virtual_network_update(vn2_obj)
        self.check_ri_refs_are_deleted(fq_name=self.get_ri_name(vn1_obj))

        self.delete_network_policy(np)
        self._vnc_lib.virtual_network_delete(fq_name=vn1_obj.get_fq_name())
        self._vnc_lib.virtual_network_delete(fq_name=vn2_obj.get_fq_name())

        self.check_vn_is_deleted(uuid=vn1_obj.uuid)

        #check if all ri's  are deleted
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn1_obj))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn2_obj))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn1_obj, sc_ri_name))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn2_obj, sc_ri_name))
    def test_st_restart_service_chain(self):
        self.skipTest("restart test flaky")
        # create  vn1
        vn1_name = self.id() + 'vn1'
        vn1_obj = self.create_virtual_network(vn1_name, '10.0.0.0/24')

        # create vn2
        vn2_name = self.id() + 'vn2'
        vn2_obj = self.create_virtual_network(vn2_name, '20.0.0.0/24')

        service_name = self.id() + 's1'
        np = self.create_network_policy(vn1_obj, vn2_obj, [service_name])
        seq = SequenceType(1, 1)
        vnp = VirtualNetworkPolicyType(seq)

        vn1_obj.set_network_policy(np, vnp)
        vn2_obj.set_network_policy(np, vnp)
        self._vnc_lib.virtual_network_update(vn1_obj)
        self._vnc_lib.virtual_network_update(vn2_obj)

        # stop st and wait for sometime
        gevent.sleep(1)
        test_common.kill_schema_transformer(self._st_greenlet)
        gevent.sleep(5)

        # start st on a free port
        self._st_greenlet = gevent.spawn(test_common.launch_schema_transformer,
            self._api_server_ip, self._api_server_port)
        gevent.sleep(4)

        #check service chain state
        sc = self.wait_to_get_sc()
        sc_ri_name = ('service-' + sc[0] + '-default-domain_default-project_'
                      + service_name)

        self.check_ri_state_vn_policy(self.get_ri_name(vn1_obj),
                                      self.get_ri_name(vn1_obj, sc_ri_name))
        self.check_ri_state_vn_policy(self.get_ri_name(vn2_obj, sc_ri_name),
                                      self.get_ri_name(vn2_obj))

        #cleanup
        vn1_obj.del_network_policy(np)
        vn2_obj.del_network_policy(np)
        self._vnc_lib.virtual_network_update(vn1_obj)
        self._vnc_lib.virtual_network_update(vn2_obj)
        self.check_ri_refs_are_deleted(fq_name=self.get_ri_name(vn1_obj))

        self.delete_network_policy(np)
        self._vnc_lib.virtual_network_delete(fq_name=vn1_obj.get_fq_name())
        self._vnc_lib.virtual_network_delete(fq_name=vn2_obj.get_fq_name())

        self.check_vn_is_deleted(uuid=vn1_obj.uuid)

        #check if all ri's  are deleted
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn1_obj))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn2_obj))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn1_obj, sc_ri_name))
        self.check_ri_is_deleted(fq_name=self.get_ri_name(vn2_obj, sc_ri_name))
 def tearDown(self):
     self.check_ri_is_deleted(fq_name=[
         'default-domain', 'default-project', 'svc-vn-left', 'svc-vn-left'
     ])
     self.check_ri_is_deleted(fq_name=[
         'default-domain', 'default-project', 'svc-vn-right', 'svc-vn-right'
     ])
     test_common.kill_svc_monitor(self._svc_mon_greenlet)
     test_common.kill_schema_transformer(self._st_greenlet)
     super(STTestCase, self).tearDown()
示例#5
0
    def tearDownClass(cls):
        test_common.kill_svc_monitor(cls._svc_mon_greenlet)
        test_common.kill_schema_transformer(cls._st_greenlet)
        cls.kill_kube_manager()
        super(KMTestCase, cls).tearDownClass()

        exceptions = test_common.ErrorInterceptingLogger.get_exceptions()
        if exceptions:
            raise AssertionError("Tracebacks found in logs:\n\n{}".format(
                "\n\n".join(msg for msg, _, __ in exceptions)))
    def tearDownClass(cls):
        test_common.kill_svc_monitor(cls._svc_mon_greenlet)
        test_common.kill_schema_transformer(cls._st_greenlet)
        cls.kill_kube_manager()
        super(KMTestCase, cls).tearDownClass()

        exceptions = test_common.ErrorInterceptingLogger.get_exceptions()
        if exceptions:
            raise AssertionError(
                "Tracebacks found in logs:\n\n{}".format(
                    "\n\n".join(msg for msg, _, __ in exceptions)))
    def tearDownClass(cls):
        test_common.kill_svc_monitor(cls._svc_mon_greenlet)
        test_common.kill_schema_transformer(cls._st_greenlet)
        cls.kill_kube_manager()
        super(KMTestCase, cls).tearDownClass()

        # Kill all remaining greenlets except for the main one
        gevent.killall(
            x for x in gc.get_objects()
            if isinstance(x, gevent.Greenlet) and x != greenlet.getcurrent())

        exceptions = test_common.ErrorInterceptingLogger.get_exceptions()
        if exceptions:
            raise AssertionError(
                "Tracebacks found in logs (count={}):\n\n{}".format(
                    len(exceptions),
                    "\n\n".join(msg for msg, _, __ in exceptions)))
    def tearDownClass(cls):
        test_common.kill_svc_monitor(cls._svc_mon_greenlet)
        test_common.kill_schema_transformer(cls._st_greenlet)
        cls.kill_kube_manager()
        super(KMTestCase, cls).tearDownClass()

        # Kill all remaining greenlets except for the main one
        gevent.killall(
            x for x in gc.get_objects()
            if isinstance(x, gevent.Greenlet) and x != greenlet.getcurrent())

        exceptions = test_common.ErrorInterceptingLogger.get_exceptions()
        if exceptions:
            raise AssertionError(
                "Tracebacks found in logs (count={}):\n\n{}".format(
                    len(exceptions),
                    "\n\n".join(msg for msg, _, __ in exceptions)))
 def tearDown(self):
     test_common.kill_svc_monitor(self._svc_mon_greenlet)
     test_common.kill_schema_transformer(self._st_greenlet)
     test_common.kill_kube_manager(self._km_greenlet)
     super(KMTestCase, self).tearDown()
示例#10
0
 def tearDownClass(cls):
     test_common.kill_device_manager(cls._dm_greenlet)
     test_common.kill_schema_transformer(cls._st_greenlet)
     super(DMTestCase, cls).tearDownClass()
示例#11
0
 def tearDownClass(cls):
     test_common.kill_device_manager(cls._dm_greenlet)
     test_common.kill_schema_transformer(cls._st_greenlet)
     super(DMTestCase, cls).tearDownClass()
示例#12
0
 def tearDown(self):
     test_common.kill_svc_monitor(self._svc_mon_greenlet)
     test_common.kill_schema_transformer(self._st_greenlet)
     super(STTestCase, self).tearDown()
 def tearDown(self):
     self.check_ri_is_deleted(fq_name=['default-domain', 'default-project', 'svc-vn-left', 'svc-vn-left'])
     self.check_ri_is_deleted(fq_name=['default-domain', 'default-project', 'svc-vn-right', 'svc-vn-right'])
     test_common.kill_svc_monitor(self._svc_mon_greenlet)
     test_common.kill_schema_transformer(self._st_greenlet)
     super(STTestCase, self).tearDown()
 def tearDownClass(cls):
     test_common.kill_svc_monitor(cls._svc_mon_greenlet)
     test_common.kill_schema_transformer(cls._st_greenlet)
     test_common.kill_kube_manager(cls._km_greenlet)
     super(KMTestCase, cls).tearDownClass()
示例#15
0
 def tearDownClass(cls):
     test_common.kill_svc_monitor(cls._svc_mon_greenlet)
     test_common.kill_schema_transformer(cls._st_greenlet)
     test_common.kill_mesos_manager(cls._mm_greenlet)
     super(MMTestCase, cls).tearDownClass()