Пример #1
0
    def setUp(self, maintenance_worker=False):
        ml2_config.cfg.CONF.set_override('extension_drivers',
                                         self._extension_drivers,
                                         group='ml2')
        ml2_config.cfg.CONF.set_override('tenant_network_types', ['geneve'],
                                         group='ml2')
        ml2_config.cfg.CONF.set_override('vni_ranges', ['1:65536'],
                                         group='ml2_type_geneve')
        ovn_conf.cfg.CONF.set_override('dns_servers', ['10.10.10.10'],
                                       group='ovn')
        ovn_conf.cfg.CONF.set_override('api_workers', 1)

        self.addCleanup(exts.PluginAwareExtensionManager.clear_instance)
        super(TestOVNFunctionalBase, self).setUp()
        self.test_log_dir = os.path.join(DEFAULT_LOG_DIR, self.id())
        base.setup_test_logging(cfg.CONF, self.test_log_dir, "testrun.txt")

        mm = directory.get_plugin().mechanism_manager
        self.mech_driver = mm.mech_drivers['ovn'].obj
        self.l3_plugin = directory.get_plugin(constants.L3)
        self.segments_plugin = directory.get_plugin('segments')
        # OVN does not use RPC: disable it for port-forwarding tests
        self.pf_plugin = manager.NeutronManager.load_class_for_provider(
            'neutron.service_plugins', 'port_forwarding')()
        self.pf_plugin._rpc_notifications_required = False
        self.ovsdb_server_mgr = None
        self.ovn_northd_mgr = None
        self.maintenance_worker = maintenance_worker
        self.temp_dir = self.useFixture(fixtures.TempDir()).path
        self._start_ovsdb_server_and_idls()
        self._start_ovn_northd()
Пример #2
0
    def setUp(self, environment):
        super(BaseFullStackTestCase, self).setUp()

        tests_base.setup_test_logging(
            cfg.CONF, DEFAULT_LOG_DIR, '%s.txt' % self.get_name())

        # NOTE(zzzeek): the opportunistic DB fixtures have built for
        # us a per-test (or per-process) database.  Set the URL of this
        # database in CONF as the full stack tests need to actually run a
        # neutron server against this database.
        _orig_db_url = cfg.CONF.database.connection
        cfg.CONF.set_override(
            'connection', str(self.engine.url), group='database')
        self.addCleanup(
            cfg.CONF.set_override,
            "connection", _orig_db_url, group="database"
        )

        # NOTE(ihrachys): seed should be reset before environment fixture below
        # since the latter starts services that may rely on generated port
        # numbers
        tools.reset_random_seed()
        self.environment = environment
        self.environment.test_name = self.get_name()
        self.useFixture(self.environment)
        self.client = self.environment.neutron_server.client
        self.safe_client = self.useFixture(
            client_resource.ClientFixture(self.client))
Пример #3
0
    def setUp(self, maintenance_worker=False):
        ml2_config.cfg.CONF.set_override('extension_drivers',
                                     self._extension_drivers,
                                     group='ml2')
        ml2_config.cfg.CONF.set_override('tenant_network_types',
                                     ['geneve'],
                                     group='ml2')
        ml2_config.cfg.CONF.set_override('vni_ranges',
                                     ['1:65536'],
                                     group='ml2_type_geneve')
        ovn_conf.cfg.CONF.set_override('dns_servers',
                                       ['10.10.10.10'],
                                       group='ovn')

        self.addCleanup(exts.PluginAwareExtensionManager.clear_instance)
        super(TestOVNFunctionalBase, self).setUp()
        self.test_log_dir = os.path.join(DEFAULT_LOG_DIR, self.id())
        base.setup_test_logging(
            cfg.CONF, self.test_log_dir, "testrun.txt")

        mm = directory.get_plugin().mechanism_manager
        self.mech_driver = mm.mech_drivers['ovn'].obj
        self.l3_plugin = directory.get_plugin(constants.L3)
        self.ovsdb_server_mgr = None
        self.ovn_northd_mgr = None
        self.maintenance_worker = maintenance_worker
        self.temp_dir = self.useFixture(fixtures.TempDir()).path
        self._start_ovsdb_server_and_idls()
        self._start_ovn_northd()
Пример #4
0
    def setUp(self, environment):
        super(BaseFullStackTestCase, self).setUp()

        tests_base.setup_test_logging(cfg.CONF, DEFAULT_LOG_DIR,
                                      '%s.txt' % self.get_name())

        # NOTE(zzzeek): the opportunistic DB fixtures have built for
        # us a per-test (or per-process) database.  Set the URL of this
        # database in CONF as the full stack tests need to actually run a
        # neutron server against this database.
        _orig_db_url = cfg.CONF.database.connection
        cfg.CONF.set_override('connection',
                              str(self.engine.url),
                              group='database')
        self.addCleanup(cfg.CONF.set_override,
                        "connection",
                        _orig_db_url,
                        group="database")

        # NOTE(ihrachys): seed should be reset before environment fixture below
        # since the latter starts services that may rely on generated port
        # numbers
        tools.reset_random_seed()

        # configure test runner to use rootwrap
        self.setup_rootwrap()
        config.setup_privsep()

        self.environment = environment
        self.environment.test_name = self.get_name()
        self.useFixture(self.environment)
        self.client = self.environment.neutron_server.client
        self.safe_client = self.useFixture(
            client_resource.ClientFixture(self.client))
Пример #5
0
    def setUp(self):
        # NOTE(yamahata):
        # When tox is using virtualenv and oslo.privsep is also installed
        # in system, sudo chooses system one.
        # However for privsep-helper to find python module in virtualenv
        # we need to use the on under .tox. So specify the full path
        # and preserve environmental variables.
        privsep_helper = "privsep-helper"
        if "VIRTUAL_ENV" in os.environ:
            privsep_helper = os.path.join(os.environ["VIRTUAL_ENV"], "bin",
                                          privsep_helper)
        cfg.CONF.set_override("helper_command",
                              "sudo --preserve-env " + privsep_helper,
                              group="privsep")

        cfg.CONF.set_override('extension_drivers',
                              self._extension_drivers,
                              group='ml2')
        cfg.CONF.set_override('tenant_network_types', ['vxlan'], group='ml2')
        cfg.CONF.set_override('vni_ranges', ['1:1000'], group='ml2_type_vxlan')

        odl_url = 'http://127.0.0.1:8087/controller/nb/v2/neutron'
        odl_config.cfg.CONF.set_override('url', odl_url, group='ml2_odl')
        odl_config.cfg.CONF.set_override('username', 'admin', group='ml2_odl')
        odl_config.cfg.CONF.set_override('password', 'admin', group='ml2_odl')
        odl_config.cfg.CONF.set_override('port_binding_controller',
                                         'legacy-port-binding',
                                         group='ml2_odl')
        odl_config.cfg.CONF.set_override('odl_features', ['no-feature'],
                                         group='ml2_odl')
        super(TestODLFullStackBase, self).setUp()
        tests_base.setup_test_logging(cfg.CONF, self.DEFAULT_LOG_DIR,
                                      '%s.txt' % self.get_name())
Пример #6
0
 def setUp(self):
     super(BaseLoggingTestCase, self).setUp()
     # NOTE(slaweq): Because of issue with stestr and Python3, we need
     # to avoid too much output to be produced during tests, so we will
     # ignore python warnings here
     warnings.simplefilter("ignore")
     base.setup_test_logging(
         cfg.CONF, DEFAULT_LOG_DIR, "%s.txt" % self.id())
Пример #7
0
 def setUp(self):
     super().setUp()
     # NOTE(slaweq): Because of issue with stestr and Python3, we need
     # to avoid too much output to be produced during tests, so we will
     # ignore python warnings here
     warnings.simplefilter("ignore")
     base.setup_test_logging(
         cfg.CONF, DEFAULT_LOG_DIR, "%s.txt" % self.id())
     cfg.CONF.set_override('use_helper_for_ns_read', False, group='AGENT')
Пример #8
0
    def setUp(self, maintenance_worker=False):
        ml2_config.cfg.CONF.set_override('extension_drivers',
                                     self._extension_drivers,
                                     group='ml2')
        ml2_config.cfg.CONF.set_override('tenant_network_types',
                                     ['geneve'],
                                     group='ml2')
        ml2_config.cfg.CONF.set_override('vni_ranges',
                                     ['1:65536'],
                                     group='ml2_type_geneve')
        # ensure viable minimum is set for OVN's Geneve
        ml2_config.cfg.CONF.set_override('max_header_size', 38,
                                         group='ml2_type_geneve')
        ovn_conf.cfg.CONF.set_override('dns_servers',
                                       ['10.10.10.10'],
                                       group='ovn')
        ovn_conf.cfg.CONF.set_override('api_workers', 1)

        self.addCleanup(exts.PluginAwareExtensionManager.clear_instance)
        self.ovsdb_server_mgr = None
        super(TestOVNFunctionalBase, self).setUp()
        self.test_log_dir = os.path.join(DEFAULT_LOG_DIR, self.id())
        base.setup_test_logging(
            cfg.CONF, self.test_log_dir, "testrun.txt")

        mm = directory.get_plugin().mechanism_manager
        self.mech_driver = mm.mech_drivers['ovn'].obj
        self.l3_plugin = directory.get_plugin(constants.L3)
        self.segments_plugin = directory.get_plugin('segments')
        # OVN does not use RPC: disable it for port-forwarding tests
        self.pf_plugin = manager.NeutronManager.load_class_for_provider(
            'neutron.service_plugins', 'port_forwarding')()
        self.pf_plugin._rpc_notifications_required = False
        self.log_plugin = directory.get_plugin(constants.LOG_API)
        if not self.log_plugin:
            self.log_plugin = manager.NeutronManager.load_class_for_provider(
                'neutron.service_plugins', 'log')()
            directory.add_plugin(constants.LOG_API, self.log_plugin)
            self.log_plugin.driver_manager.register_driver(
                self.mech_driver.log_driver)
        self.mech_driver.log_driver.plugin_driver = self.mech_driver
        self.mech_driver.log_driver._log_plugin_property = None
        self.ovn_northd_mgr = None
        self.maintenance_worker = maintenance_worker
        mock.patch(
            'neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.'
            'maintenance.MaintenanceThread').start()
        mock.patch(
            'neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.'
            'maintenance.HashRingHealthCheckPeriodics').start()
        self._start_idls()
        self._start_ovn_northd()
        self.addCleanup(self._reset_agent_cache_singleton)
Пример #9
0
 def setUp(self):
     cfg.CONF.set_override(
         'url', 'http://127.0.0.1:8181/controller/nb/v2/neutron', 'ml2_odl')
     cfg.CONF.set_override('username', 'admin', 'ml2_odl')
     cfg.CONF.set_override('password', 'admin', 'ml2_odl')
     cfg.CONF.set_override('mechanism_drivers',
                           self._mechanism_drivers, group='ml2')
     cfg.CONF.set_override('extension_drivers',
                           ['qos', 'port_security'], group='ml2')
     self.client = client.OpenDaylightRestClient.create_client()
     super(OdlTestsBase, self).setUp()
     base.setup_test_logging(
         cfg.CONF, self.DEFAULT_LOG_DIR, "%s.txt" % self.id())
Пример #10
0
 def setUp(self):
     self.cfg = self.useFixture(config_fixture.Config())
     self.cfg.config(url='http://127.0.0.1:8181/controller/nb/v2/neutron',
                     group='ml2_odl')
     self.cfg.config(username='******', group='ml2_odl')
     self.cfg.config(password='******', group='ml2_odl')
     self.cfg.config(mechanism_drivers=self._mechanism_drivers, group='ml2')
     self.cfg.config(extension_drivers=['qos', 'port_security'],
                     group='ml2')
     self.client = client.OpenDaylightRestClient.create_client()
     super(OdlTestsBase, self).setUp()
     base.setup_test_logging(cfg.CONF, self.DEFAULT_LOG_DIR,
                             "%s.txt" % self.id())
Пример #11
0
    def setUp(self):
        super(BaseSudoTestCase, self).setUp()
        if not base.bool_from_env('OS_SUDO_TESTING'):
            self.skipTest('Testing with sudo is not enabled')

        base.setup_test_logging(cfg.CONF, DEFAULT_LOG_DIR,
                                "%s.log" % self.id())

        config.register_root_helper(cfg.CONF)
        self.config(group='AGENT',
                    root_helper=os.environ.get('OS_ROOTWRAP_CMD', SUDO_CMD))
        self.config(
            group='AGENT',
            root_helper_daemon=os.environ.get('OS_ROOTWRAP_DAEMON_CMD'))
Пример #12
0
 def setUp(self):
     self.cfg = self.useFixture(config_fixture.Config())
     self.cfg.config(
         url='http://127.0.0.1:8181/controller/nb/v2/neutron',
         group='ml2_odl')
     self.cfg.config(username='******', group='ml2_odl')
     self.cfg.config(password='******', group='ml2_odl')
     self.cfg.config(mechanism_drivers=self._mechanism_drivers, group='ml2')
     self.cfg.config(extension_drivers=[
                     'qos', 'port_security'], group='ml2')
     self.client = client.OpenDaylightRestClient.create_client()
     super(OdlTestsBase, self).setUp()
     base.setup_test_logging(
         cfg.CONF, self.DEFAULT_LOG_DIR, "%s.txt" % self.id())
Пример #13
0
    def setUp(self):
        super(BaseSudoTestCase, self).setUp()
        if not base.bool_from_env('OS_SUDO_TESTING'):
            self.skipTest('Testing with sudo is not enabled')

        base.setup_test_logging(
            cfg.CONF, DEFAULT_LOG_DIR, "%s.log" % self.id())

        config.register_root_helper(cfg.CONF)
        self.config(group='AGENT',
                    root_helper=os.environ.get('OS_ROOTWRAP_CMD', SUDO_CMD))
        self.config(group='AGENT',
                    root_helper_daemon=os.environ.get(
                        'OS_ROOTWRAP_DAEMON_CMD'))
Пример #14
0
    def setUp(self, environment):
        super(BaseFullStackTestCase, self).setUp()

        tests_base.setup_test_logging(
            cfg.CONF, DEFAULT_LOG_DIR, '%s.log' % self.get_name())

        # NOTE(ihrachys): seed should be reset before environment fixture below
        # since the latter starts services that may rely on generated port
        # numbers
        tools.reset_random_seed()
        self.create_db_tables()
        self.environment = environment
        self.environment.test_name = self.get_name()
        self.useFixture(self.environment)
        self.client = self.environment.neutron_server.client
        self.safe_client = self.useFixture(
            client_resource.ClientFixture(self.client))
Пример #15
0
    def setUp(self, environment):
        super(BaseFullStackTestCase, self).setUp()

        tests_base.setup_test_logging(cfg.CONF, DEFAULT_LOG_DIR,
                                      '%s.txt' % self.get_name())

        # NOTE(ihrachys): seed should be reset before environment fixture below
        # since the latter starts services that may rely on generated port
        # numbers
        tools.reset_random_seed()
        self.create_db_tables()
        self.environment = environment
        self.environment.test_name = self.get_name()
        self.useFixture(self.environment)
        self.client = self.environment.neutron_server.client
        self.safe_client = self.useFixture(
            client_resource.ClientFixture(self.client))
Пример #16
0
    def setUp(self):
        config.cfg.CONF.set_override('extension_drivers',
                                     self._extension_drivers,
                                     group='ml2')
        config.cfg.CONF.set_override('tenant_network_types', ['vxlan'],
                                     group='ml2')
        config.cfg.CONF.set_override('vni_ranges', ['1:1000'],
                                     group='ml2_type_vxlan')

        odl_url = 'http://127.0.0.1:8087/controller/nb/v2/neutron'
        odl_config.cfg.CONF.set_override('url', odl_url, group='ml2_odl')
        odl_config.cfg.CONF.set_override('username', 'admin', group='ml2_odl')
        odl_config.cfg.CONF.set_override('password', 'admin', group='ml2_odl')
        odl_config.cfg.CONF.set_override('port_binding_controller',
                                         'legacy-port-binding',
                                         group='ml2_odl')
        odl_config.cfg.CONF.set_override('odl_features', ['no-feature'],
                                         group='ml2_odl')
        super(TestODLFullStackBase, self).setUp()
        tests_base.setup_test_logging(cfg.CONF, self.DEFAULT_LOG_DIR,
                                      '%s.txt' % self.get_name())
Пример #17
0
 def setUp(self):
     super(BaseLoggingTestCase, self).setUp()
     base.setup_test_logging(
         cfg.CONF, DEFAULT_LOG_DIR, "%s.txt" % self.id())
Пример #18
0
 def setUp(self):
     super(BaseLoggingTestCase, self).setUp()
     base.setup_test_logging(
         cfg.CONF, DEFAULT_LOG_DIR, "%s.txt" % self.id())