]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
make default transport type configurable nvp
authorAaron Rosen <arosen@nicira.com>
Tue, 14 May 2013 02:48:27 +0000 (19:48 -0700)
committerAaron Rosen <arosen@nicira.com>
Tue, 14 May 2013 02:52:20 +0000 (19:52 -0700)
Fixes bug 1179759

Change-Id: I8f644f2bc0d5d144f52e5ed0bd2e991503581ad2

etc/quantum/plugins/nicira/nvp.ini
quantum/plugins/nicira/common/config.py
quantum/plugins/nicira/nvplib.py
quantum/tests/unit/nicira/test_nvpopts.py

index 87760e4a46fa86779df94cb3206bf408e034a036..e46dc195e8bef1d09f05479864f63fab2904624e 100644 (file)
@@ -113,3 +113,6 @@ sql_connection = sqlite://
 # This option is only useful if running on a host that does not support
 # namespaces otherwise access_network should be used.
 # metadata_mode = access_network
+
+# The default network transport type to use (stt, gre, bridge, ipsec_gre, or ipsec_stt)
+# default_transport_type = stt
index cc42f49a878e2ef7de8ac9fe7c4f143fca0af450..0376685e38e6b14275098af6f7ce39363170654e 100644 (file)
@@ -41,6 +41,9 @@ nvp_opts = [
     cfg.BoolOpt('enable_metadata_access_network', default=True,
                 help=_("Enables dedicated connection to the metadata proxy "
                        "for metadata server access via Quantum router")),
+    cfg.StrOpt('default_transport_type', default='stt',
+               help=_("The default network tranport type to use (stt, gre, "
+                      "bridge, ipsec_gre, or ipsec_stt)")),
 ]
 
 connection_opts = [
index 28a9b93e5cf4c8d161d663e9a8b430af96727f3e..e6f6ff0d6f43417298aee1e378c2c6cb48a82264 100644 (file)
@@ -26,6 +26,8 @@ import inspect
 import json
 import logging
 
+from oslo.config import cfg
+
 #FIXME(danwent): I'd like this file to get to the point where it has
 # no quantum-specific logic in it
 from quantum.common import constants
@@ -40,8 +42,6 @@ HTTP_GET = "GET"
 HTTP_POST = "POST"
 HTTP_DELETE = "DELETE"
 HTTP_PUT = "PUT"
-# Default transport type for logical switches
-DEF_TRANSPORT_TYPE = "stt"
 # Prefix to be used for all NVP API calls
 URI_PREFIX = "/ws.v1"
 # Resources exposed by NVP API
@@ -296,10 +296,11 @@ def create_lswitch(cluster, tenant_id, display_name,
     nvp_binding_type = transport_type
     if transport_type in ('flat', 'vlan'):
         nvp_binding_type = 'bridge'
-    transport_zone_config = {"zone_uuid": (transport_zone_uuid or
-                                           cluster.default_tz_uuid),
-                             "transport_type": (nvp_binding_type or
-                                                DEF_TRANSPORT_TYPE)}
+    transport_zone_config = (
+        {"zone_uuid": (transport_zone_uuid or
+                       cluster.default_tz_uuid),
+         "transport_type": (nvp_binding_type or
+                            cfg.CONF.NVP.default_transport_type)})
     lswitch_obj = {"display_name": _check_and_truncate_name(display_name),
                    "transport_zones": [transport_zone_config],
                    "tags": [{"tag": tenant_id, "scope": "os_tid"},
index 2f6fc68594eb92b5ac7e6a65092fb9cb53dfdc56..1288bd95f5f1a17b38ebe5a46d5cabe18bbca763 100644 (file)
@@ -120,6 +120,7 @@ class ConfigurationTest(testtools.TestCase):
         self.assertEqual(64, cfg.CONF.NVP.max_lp_per_bridged_ls)
         self.assertEqual(256, cfg.CONF.NVP.max_lp_per_overlay_ls)
         self.assertEqual(5, cfg.CONF.NVP.concurrent_connections)
+        self.assertEqual('stt', cfg.CONF.NVP.default_transport_type)
 
         self.assertIsNone(cfg.CONF.default_tz_uuid)
         self.assertIsNone(cfg.CONF.nvp_cluster_uuid)