summaryrefslogtreecommitdiffstats
path: root/build/patches
diff options
context:
space:
mode:
Diffstat (limited to 'build/patches')
-rw-r--r--build/patches/neutron-patch-NSDriver.patch64
-rw-r--r--build/patches/puppet-neutron-ml2-ip-version-fix.patch28
-rw-r--r--build/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch52
3 files changed, 96 insertions, 48 deletions
diff --git a/build/patches/neutron-patch-NSDriver.patch b/build/patches/neutron-patch-NSDriver.patch
index d5889e38..f01d0318 100644
--- a/build/patches/neutron-patch-NSDriver.patch
+++ b/build/patches/neutron-patch-NSDriver.patch
@@ -1,16 +1,16 @@
-From ff4e918d21970a81604a0aaa2af888141f93cdac Mon Sep 17 00:00:00 2001
+From d51e6ba77c3f40c7c04c97b1de06bf9344c95929 Mon Sep 17 00:00:00 2001
From: Feng Pan <fpan@redhat.com>
-Date: Sun, 5 Feb 2017 21:34:19 -0500
+Date: Thu, 20 Jul 2017 16:12:45 -0400
Subject: [PATCH] Add NSDriver
---
neutron/agent/l3/namespaces.py | 6 ++--
- neutron/agent/l3/router_info.py | 14 ++++----
+ neutron/agent/l3/router_info.py | 12 ++++---
neutron/agent/linux/interface.py | 76 +++++++++++++++++++++++++++++++++++++++-
- 3 files changed, 87 insertions(+), 9 deletions(-)
+ 3 files changed, 86 insertions(+), 8 deletions(-)
diff --git a/neutron/agent/l3/namespaces.py b/neutron/agent/l3/namespaces.py
-index e70d7bb..3c932a8 100644
+index f65c706..e9fc4b7 100644
--- a/neutron/agent/l3/namespaces.py
+++ b/neutron/agent/l3/namespaces.py
@@ -18,6 +18,7 @@ import functools
@@ -32,7 +32,7 @@ index e70d7bb..3c932a8 100644
name = self._get_ns_name(router_id)
super(RouterNamespace, self).__init__(
name, agent_conf, driver, use_ipv6)
-@@ -131,7 +133,7 @@ class RouterNamespace(Namespace):
+@@ -132,7 +134,7 @@ class RouterNamespace(Namespace):
elif d.name.startswith(ROUTER_2_FIP_DEV_PREFIX):
ns_ip.del_veth(d.name)
elif d.name.startswith(EXTERNAL_DEV_PREFIX):
@@ -42,10 +42,10 @@ index e70d7bb..3c932a8 100644
bridge=self.agent_conf.external_network_bridge,
namespace=self.name,
diff --git a/neutron/agent/l3/router_info.py b/neutron/agent/l3/router_info.py
-index 3fd3934..b33fb7e 100644
+index 46db6a5..6775882 100644
--- a/neutron/agent/l3/router_info.py
+++ b/neutron/agent/l3/router_info.py
-@@ -27,6 +27,7 @@ from neutron.common import exceptions as n_exc
+@@ -30,6 +30,7 @@ from neutron.common import exceptions as n_exc
from neutron.common import ipv6_utils
from neutron.common import utils as common_utils
from neutron.ipam import utils as ipam_utils
@@ -53,15 +53,15 @@ index 3fd3934..b33fb7e 100644
LOG = logging.getLogger(__name__)
INTERNAL_DEV_PREFIX = namespaces.INTERNAL_DEV_PREFIX
-@@ -47,6 +48,7 @@ class RouterInfo(object):
- agent_conf,
+@@ -52,6 +53,7 @@ class RouterInfo(object):
interface_driver,
use_ipv6=False):
+ self.agent = agent
+ self.ovs_driver = OVSInterfaceDriver(agent_conf)
self.router_id = router_id
self.ex_gw_port = None
self._snat_enabled = None
-@@ -57,7 +59,7 @@ class RouterInfo(object):
+@@ -63,7 +65,7 @@ class RouterInfo(object):
self.router = router
self.use_ipv6 = use_ipv6
ns = self.create_router_namespace_object(
@@ -70,7 +70,7 @@ index 3fd3934..b33fb7e 100644
self.router_namespace = ns
self.ns_name = ns.name
self.available_mark_ids = set(range(ADDRESS_SCOPE_MARK_ID_MIN,
-@@ -94,9 +96,9 @@ class RouterInfo(object):
+@@ -100,9 +102,9 @@ class RouterInfo(object):
self.router_namespace.create()
def create_router_namespace_object(
@@ -82,7 +82,7 @@ index 3fd3934..b33fb7e 100644
@property
def router(self):
-@@ -583,7 +585,7 @@ class RouterInfo(object):
+@@ -609,7 +611,7 @@ class RouterInfo(object):
for ip in floating_ips]
def _plug_external_gateway(self, ex_gw_port, interface_name, ns_name):
@@ -91,7 +91,7 @@ index 3fd3934..b33fb7e 100644
ex_gw_port['id'],
interface_name,
ex_gw_port['mac_address'],
-@@ -641,7 +643,7 @@ class RouterInfo(object):
+@@ -679,7 +681,7 @@ class RouterInfo(object):
self._add_route_to_gw(ex_gw_port, device_name=interface_name,
namespace=ns_name, preserve_ips=preserve_ips)
@@ -100,17 +100,8 @@ index 3fd3934..b33fb7e 100644
interface_name,
ip_cidrs,
namespace=ns_name,
-@@ -735,7 +737,7 @@ class RouterInfo(object):
- for stale_dev in stale_devs:
- LOG.debug('Deleting stale external router device: %s', stale_dev)
- pd.remove_gw_interface(self.router['id'])
-- self.driver.unplug(stale_dev,
-+ self.ovs_driver.unplug(stale_dev,
- bridge=self.agent_conf.external_network_bridge,
- namespace=self.ns_name,
- prefix=EXTERNAL_DEV_PREFIX)
diff --git a/neutron/agent/linux/interface.py b/neutron/agent/linux/interface.py
-index c2eb06e..80da16f 100644
+index 1f1ed39..b7781e2 100644
--- a/neutron/agent/linux/interface.py
+++ b/neutron/agent/linux/interface.py
@@ -15,7 +15,7 @@
@@ -122,7 +113,7 @@ index c2eb06e..80da16f 100644
import netaddr
from neutron_lib import constants
from oslo_config import cfg
-@@ -288,6 +288,80 @@ class NullDriver(LinuxInterfaceDriver):
+@@ -317,6 +317,80 @@ class NullDriver(LinuxInterfaceDriver):
def unplug(self, device_name, bridge=None, namespace=None, prefix=None):
pass
@@ -203,29 +194,6 @@ index c2eb06e..80da16f 100644
class OVSInterfaceDriver(LinuxInterfaceDriver):
"""Driver for creating an internal interface on an OVS bridge."""
-diff --git a/neutron/agent/l3/ha_router.py b/usr/lib/python2.7/site-packages/neutron/agent/l3/ha_router.py
-index ca0e50d..2c4fdad 100644
---- a/neutron/agent/l3/ha_router.py
-+++ b/usr/lib/python2.7/site-packages/neutron/agent/l3/ha_router.py
-@@ -52,15 +52,14 @@ class HaRouterNamespace(namespaces.RouterNamespace):
- class HaRouter(router.RouterInfo):
- def __init__(self, state_change_callback, *args, **kwargs):
- super(HaRouter, self).__init__(*args, **kwargs)
--
- self.ha_port = None
- self.keepalived_manager = None
- self.state_change_callback = state_change_callback
-
- def create_router_namespace_object(
-- self, router_id, agent_conf, iface_driver, use_ipv6):
-+ self, router_id, agent_conf, iface_driver, use_ipv6, ovs_driver):
- return HaRouterNamespace(
-- router_id, agent_conf, iface_driver, use_ipv6)
-+ router_id, agent_conf, iface_driver, use_ipv6, ovs_driver)
-
- @property
- def ha_priority(self):
-
--
2.9.3
diff --git a/build/patches/puppet-neutron-ml2-ip-version-fix.patch b/build/patches/puppet-neutron-ml2-ip-version-fix.patch
new file mode 100644
index 00000000..3cbb3a8c
--- /dev/null
+++ b/build/patches/puppet-neutron-ml2-ip-version-fix.patch
@@ -0,0 +1,28 @@
+From e3e4a9cf57d5d7da6914b31527188eff7e290238 Mon Sep 17 00:00:00 2001
+From: Feng Pan <fpan@redhat.com>
+Date: Wed, 17 May 2017 11:39:31 -0400
+Subject: [PATCH] Make sure overlay_ip_version is treated as string
+
+puppet throws error if overlay_ip_version is passed in through hiera
+as an integer. We should make sure this variable is treated as string
+for the 'in' operator.
+
+Closes-Bug: #1691502
+
+Change-Id: I1c034e8018c959672b106e2d57992cf93b945d8a
+Signed-off-by: Feng Pan <fpan@redhat.com>
+---
+
+diff --git a/manifests/plugins/ml2.pp b/manifests/plugins/ml2.pp
+index d931e72..b943593 100644
+--- a/manifests/plugins/ml2.pp
++++ b/manifests/plugins/ml2.pp
+@@ -171,7 +171,7 @@
+ warning ('supported_pci_vendor_devs is deprecated, has no effect and will be removed in a future release.')
+ }
+
+- if !is_service_default($overlay_ip_version) and !($overlay_ip_version in [4, 6]) {
++ if !is_service_default($overlay_ip_version) and !("${overlay_ip_version}" in ['4', '6']) {
+ fail('Invalid IP version for overlay_ip_version')
+ }
+
diff --git a/build/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch b/build/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch
new file mode 100644
index 00000000..a84ab83f
--- /dev/null
+++ b/build/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch
@@ -0,0 +1,52 @@
+From 8e37e0fae6195ec177828a9e9d36c6ee009cd372 Mon Sep 17 00:00:00 2001
+From: Feng Pan <fpan@redhat.com>
+Date: Thu, 18 May 2017 17:39:42 -0400
+Subject: [PATCH] Add ml2 type_drivers setting
+
+Change-Id: Ie47a1ace6302d7eccd3ead676c4e1cde7e82c5d2
+---
+ manifests/agents/ml2/vpp.pp | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/manifests/agents/ml2/vpp.pp b/manifests/agents/ml2/vpp.pp
+index f17d67e8..08427833 100644
+--- a/manifests/agents/ml2/vpp.pp
++++ b/manifests/agents/ml2/vpp.pp
+@@ -42,6 +42,11 @@
+ # in the vpp config.
+ # Defaults to false.
+ #
++# [*type_drivers*]
++# (optional) List of network type driver entrypoints to be loaded
++# Could be an array that can contain flat, vlan or vxlan
++# Defaults to $::os_service_default.
++#
+ class neutron::agents::ml2::vpp (
+ $package_ensure = 'present',
+ $enabled = true,
+@@ -51,6 +56,7 @@ class neutron::agents::ml2::vpp (
+ $etcd_port = $::os_service_default,
+ $etcd_user = $::os_service_default,
+ $etcd_pass = $::os_service_default,
++ $type_drivers = $::os_service_default,
+ $purge_config = false,
+ ) {
+ include ::neutron::deps
+@@ -61,12 +67,12 @@ class neutron::agents::ml2::vpp (
+ }
+
+ neutron_agent_vpp {
+- 'ml2_vpp/physnets': value => $physnets;
++ 'ml2_vpp/physnets': value => $physnets;
+ 'ml2_vpp/etcd_host': value => $etcd_host;
+ 'ml2_vpp/etcd_port': value => $etcd_port;
+ 'ml2_vpp/etcd_user': value => $etcd_user;
+ 'ml2_vpp/etcd_pass': value => $etcd_pass;
+- 'DEFAULT/host': value => $::hostname;
++ 'ml2/type_drivers': value => join(any2array($type_drivers), ',');
+ }
+
+ package { 'neutron-vpp-agent':
+--
+2.13.3
+