]> review.fuel-infra Code Review - openstack-build/neutron-build.git/log
openstack-build/neutron-build.git
9 years agoAdd OVS QoS extension agent driver
Gal Sagie [Wed, 1 Jul 2015 12:36:51 +0000 (15:36 +0300)]
Add OVS QoS extension agent driver

This is a prototype for the OVS agent driver for QoS
extension.
Should be adjusted to final API's once they are added

blueprint ml2-ovs-qos-with-bwlimiting

Depends-On: I9e388173dfe0eb43c961018bd687bc86f34c7a6a
Change-Id: Ie952b63e3760d1924a34676e97319ec4301effca

9 years agoMerge "Qos Agent Extension" into feature/qos
Jenkins [Tue, 14 Jul 2015 09:43:45 +0000 (09:43 +0000)]
Merge "Qos Agent Extension" into feature/qos

9 years agoMerge "Merge remote-tracking branch 'origin/feature/qos' into merge-branch" into...
Jenkins [Mon, 13 Jul 2015 20:29:03 +0000 (20:29 +0000)]
Merge "Merge remote-tracking branch 'origin/feature/qos' into merge-branch" into feature/qos

9 years agoMerge "Implement QoS policy detach from port and network" into feature/qos
Jenkins [Mon, 13 Jul 2015 16:28:56 +0000 (16:28 +0000)]
Merge "Implement QoS policy detach from port and network" into feature/qos

9 years agoMerge "objects.base: fixed object.delete()" into feature/qos
Jenkins [Mon, 13 Jul 2015 15:51:51 +0000 (15:51 +0000)]
Merge "objects.base: fixed object.delete()" into feature/qos

9 years agoMerge "objects.qos.policy: fixed get_*_policy and attach_* methods" into feature/qos
Jenkins [Mon, 13 Jul 2015 15:51:37 +0000 (15:51 +0000)]
Merge "objects.qos.policy: fixed get_*_policy and attach_* methods" into feature/qos

9 years agoQos Agent Extension
Moshe Levi [Wed, 24 Jun 2015 15:44:08 +0000 (18:44 +0300)]
Qos Agent Extension

This patch introduces the following:
QosAgentExtension - implementation of AgentCoreResourceExtension
QosAgentDriver - interface class
This will allow any agent to implement their own low level driver for
Qos Agent Extension.

Co-Authored-By: Miguel Angel Ajo <mangelajo@redhat.com>
Change-Id: I9e388173dfe0eb43c961018bd687bc86f34c7a6a

9 years agoMerge "Add API stub for QoS support rule_type resource" into feature/qos
Jenkins [Mon, 13 Jul 2015 10:21:27 +0000 (10:21 +0000)]
Merge "Add API stub for QoS support rule_type resource" into feature/qos

9 years agoMerge remote-tracking branch 'origin/feature/qos' into merge-branch
Ihar Hrachyshka [Mon, 13 Jul 2015 10:13:28 +0000 (12:13 +0200)]
Merge remote-tracking branch 'origin/feature/qos' into merge-branch

Change-Id: I7777c827f754e3269d69f6a5331325a76c5e57b2

9 years agoMerge "Enforce specific order for firewall.(un)filtered_ports and devices"
Jenkins [Mon, 13 Jul 2015 09:54:45 +0000 (09:54 +0000)]
Merge "Enforce specific order for firewall.(un)filtered_ports and devices"

9 years agoMerge "get_vif_ports: ignore non-Interface ports"
Jenkins [Mon, 13 Jul 2015 09:14:32 +0000 (09:14 +0000)]
Merge "get_vif_ports: ignore non-Interface ports"

9 years agoMerge "Reject router-interface-add with a port which doesn't have any addresses"
Jenkins [Mon, 13 Jul 2015 08:26:14 +0000 (08:26 +0000)]
Merge "Reject router-interface-add with a port which doesn't have any addresses"

9 years agoImplement QoS policy detach from port and network
Miguel Angel Ajo [Thu, 9 Jul 2015 14:39:05 +0000 (16:39 +0200)]
Implement QoS policy detach from port and network

Includes db.qos.api calls to delete port<->qos_profile and
network<->qos_profile bindings.

Change-Id: I8ab3e885bdf010fe95529157f3db4f1089326c86

9 years agoMerge "Make IPAM more pythonic"
Jenkins [Sun, 12 Jul 2015 21:05:05 +0000 (21:05 +0000)]
Merge "Make IPAM more pythonic"

9 years agoMerge "Fix duplicate entry catch for allowed address pairs"
Jenkins [Sun, 12 Jul 2015 14:12:13 +0000 (14:12 +0000)]
Merge "Fix duplicate entry catch for allowed address pairs"

9 years agoAdd API stub for QoS support rule_type resource
Irena Berezovsky [Tue, 7 Jul 2015 11:54:39 +0000 (11:54 +0000)]
Add API stub for QoS support rule_type resource

Rule_type is added as an API Resource.
Using this API User can get list of  supported
QoS rule types.

Change-Id: Ica80753ce3052b68ba8db2d2760ed4310ec0b976

9 years agoReject router-interface-add with a port which doesn't have any addresses
YAMAMOTO Takashi [Fri, 19 Jun 2015 07:28:23 +0000 (16:28 +0900)]
Reject router-interface-add with a port which doesn't have any addresses

Fix a regression in commit I7d4e8194815e626f1cfa267f77a3f2475fdfa3d1 .

Closes-Bug: #1466750
Related-Bug: #1439824
Change-Id: Ic0c4c0adbffe14b1f08d4b2dee91e1dff41cc770

9 years agoImported Translations from Transifex
OpenStack Proposal Bot [Sat, 11 Jul 2015 06:09:29 +0000 (06:09 +0000)]
Imported Translations from Transifex

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I33a9e5a28666a295dd24f6c482b9805b33d0ca69

9 years agoMerge "objects.base: reset changes after getting objects from database" into feature/qos
Jenkins [Sat, 11 Jul 2015 00:53:18 +0000 (00:53 +0000)]
Merge "objects.base: reset changes after getting objects from database" into feature/qos

9 years agoEnforce specific order for firewall.(un)filtered_ports and devices
Ihar Hrachyshka [Fri, 10 Jul 2015 12:07:09 +0000 (14:07 +0200)]
Enforce specific order for firewall.(un)filtered_ports and devices

Lots of tests in the file rely on specific order of devices and ports
with which they are iterated thru inside firewall implementation. This
is needed to match a regexp against iptables output generated by the
firewall driver.

In production code, those .(un)filtered_ports dictionaries are
unordered, and it would be not wise to enforce the order for them just
for the sake of those unit tests.

Instead, we 'patch' the agent firewall with ordered versions of dict for
those attributes.

Also enforce specific order for device_info dictionaries we pass into
firewall.

The failure was easily reproducible with PYTHONHASHSEED=111, and after
the fix, it's gone.

While at it, stop making assumptions about stable order of dict.values()
between multiple dictionaries with the same keys. It may actually work
for now, but it seems fragile. Overall simplified regex construction
code a bit, f.e. killing some dead or redundant code.

Closes-Bug: #1473413
Change-Id: I170087426bc961592b4c4923c64a5fea30d51c21

9 years agoMerge "BaseObjectTestCase: rename test_class into _test_class" into feature/qos
Jenkins [Fri, 10 Jul 2015 21:54:41 +0000 (21:54 +0000)]
Merge "BaseObjectTestCase: rename test_class into _test_class" into feature/qos

9 years agoMerge "Arista ML2 driver should ignore non-vlan networks"
Jenkins [Fri, 10 Jul 2015 19:41:44 +0000 (19:41 +0000)]
Merge "Arista ML2 driver should ignore non-vlan networks"

9 years agoMerge "Allow IPAM backend switch"
Jenkins [Fri, 10 Jul 2015 18:41:45 +0000 (18:41 +0000)]
Merge "Allow IPAM backend switch"

9 years agoobjects.base: fixed object.delete()
Ihar Hrachyshka [Thu, 9 Jul 2015 12:12:56 +0000 (14:12 +0200)]
objects.base: fixed object.delete()

It was using wrong call to delete an object from a session.

Also, expanded test_create() test to check all basic operations:
get_by_id, create, update, and delete.

To facilitate update() check, introduced a new field for objects called
fields_to_update that stores names of fields that are not expected to be
updated in an object. This allows us to keep the above mentioned test
untangled from specific object type.

Also made get_by_id() behave correctly (returning None) if the object
does not exist.

Change-Id: I1aecb2e7c4d8cb8f239072d1cb9df3db29dcedde

9 years agoobjects.qos.policy: fixed get_*_policy and attach_* methods
Ihar Hrachyshka [Thu, 9 Jul 2015 10:37:01 +0000 (12:37 +0200)]
objects.qos.policy: fixed get_*_policy and attach_* methods

Added sql unit tests for those methods.

Change-Id: I6e95aa6cb61d5cc36600394b2198587793da8a0e

9 years agoobjects.base: reset changes after getting objects from database
Ihar Hrachyshka [Wed, 8 Jul 2015 16:06:12 +0000 (18:06 +0200)]
objects.base: reset changes after getting objects from database

Now all objects are comparable.

We need to reset changes, otherwise an object that is constructed and
.create()d is different from the one that is .get_by_id()d from database
(for primitive serialization contains list of changed fields for
versioned objects).

Added initial sql test case for objects (just create-fetch for policy
for now, but can be easily extended to other types).

Change-Id: I012b5fe4e95f166f66da91274734d7184c224dfd

9 years agoBaseObjectTestCase: rename test_class into _test_class
Ihar Hrachyshka [Wed, 8 Jul 2015 15:47:12 +0000 (17:47 +0200)]
BaseObjectTestCase: rename test_class into _test_class

It seems that testtools are trying to load that class as if it's a test
case (for it considers everything inside a test class named as test_* as
a test case).

Change-Id: Ic4342cc0637d659191f084467ccdb9c90e89a023

9 years agoCleanup rule models and objects
John Schwarz [Thu, 2 Jul 2015 09:40:11 +0000 (12:40 +0300)]
Cleanup rule models and objects

- drop tenant_id for base and bandwidth_limit rules;
- added 'to_dict' function to convert objects into dicts.

Change-Id: I28167e356e70235304b166c997df52ca1b28f836

9 years agoobjects.qos: fixed create and update for QosBandwidthLimitRule
Ihar Hrachyshka [Thu, 2 Jul 2015 22:57:03 +0000 (01:57 +0300)]
objects.qos: fixed create and update for QosBandwidthLimitRule

To simplify Qos*Rule object type implementation, renamed 'qos_rule_id'
field for qos_bandwidth_limit_rule table into 'id'.

Also added unit test coverage for the object type.

Change-Id: Id6bc992af9f1ab46c022d3c88aa66a0f3bb7f227

9 years agoMerge "Python 3: Fix a TypeError in policy.py"
Jenkins [Fri, 10 Jul 2015 17:12:17 +0000 (17:12 +0000)]
Merge "Python 3: Fix a TypeError in policy.py"

9 years agoMerge "Move DVR related method to proper class"
Jenkins [Fri, 10 Jul 2015 15:02:42 +0000 (15:02 +0000)]
Merge "Move DVR related method to proper class"

9 years agoget_vif_ports: ignore non-Interface ports
Dan Prince [Thu, 9 Jul 2015 19:31:13 +0000 (15:31 -0400)]
get_vif_ports: ignore non-Interface ports

This patch updates get_vif_ports so that it skips
ports which aren't in the 'Interfaces' table.

This fixes an issue where neutron-ovs-cleanup would
fail if any sort of OVS bond was on the bridge getting
cleaned up.  This is because bonds don't have the same
attributes as ports, and thus fail subsequent ovs-vsctl
queries.

Change-Id: Ic9d30e5916122ce23c5dc8631fbb71115ae8a960
Closes-bug: #1473179

9 years agoMerge remote-tracking branch 'origin/feature/qos' into merge-branch
Ihar Hrachyshka [Fri, 10 Jul 2015 14:33:56 +0000 (16:33 +0200)]
Merge remote-tracking branch 'origin/feature/qos' into merge-branch

Change-Id: Ie2617cb5e502b49e8c33bb47ad295c80e53b769a

9 years agoFix duplicate entry catch for allowed address pairs
Wei Wang [Thu, 25 Sep 2014 09:49:59 +0000 (17:49 +0800)]
Fix duplicate entry catch for allowed address pairs

If None is submitted as a MAC address in an allowed_address_pair,
the port MAC will be used. So if two entries are submitted with the
same IP and one's MAC is None while the others is the port's MAC,
they will pass the API duplication check and fail to insert into the DB
due to a unique constraint violation.

This patch catches the db error and turns it into the same exception
the API uses on duplicate entries.

Closes-bug: #1373756
Change-Id: Ide995810d6fe0481d3add206bf0674cbbde7f05f

9 years agoMerge "Move update_security_group_on_port to SecurityGroupDbMixin"
Jenkins [Fri, 10 Jul 2015 02:37:20 +0000 (02:37 +0000)]
Merge "Move update_security_group_on_port to SecurityGroupDbMixin"

9 years agoFix failures introduced by the new version of mock
Kevin Benton [Thu, 9 Jul 2015 23:54:23 +0000 (16:54 -0700)]
Fix failures introduced by the new version of mock

This reverts commit 1b60df85ba3ad442c2e4e7e52538e1b9a1bf9378.

The new version of mock is now released which has the fix to
make mock.patch.stopall behave deterministically. The code to
stop double-mocking is no longer required.

Other fixes:

'assert_has_calls' that have changed behavior in the new version
(no longer accepts single calls).

Calls to non-existent assert methods that did not exist and were
silently passing.

Use of autospec on a class with decorated functions.

Closes-Bug: #1473369
Change-Id: I164a9af2a7f9ac0f0229ec3c5071f7a470445c98

9 years agoArista ML2 driver should ignore non-vlan networks
Sukhdev Kapur [Wed, 8 Jul 2015 02:39:15 +0000 (19:39 -0700)]
Arista ML2 driver should ignore non-vlan networks

Arista ML2 Mech driver for VLANs presently does
not filter out non-vlan type networks (e.g vxlan).
This fix will simply ignore the request if a
non-vlan based network request is seen.

Change-Id: I99ec5c5772a9f1f63cf871a98be50bdd2ba5db62
Closes-Bug: 1472458

9 years agoMerge "In Arista ML2 driver Reconfigure VLAN on VM migration"
Jenkins [Thu, 9 Jul 2015 19:38:43 +0000 (19:38 +0000)]
Merge "In Arista ML2 driver Reconfigure VLAN on VM migration"

9 years agoMake IPAM more pythonic
Sean M. Collins [Fri, 26 Jun 2015 17:14:41 +0000 (11:14 -0600)]
Make IPAM more pythonic

__init__.py is usually an empty file, or contains platform specific
code to make the package function. One more use is to have __init__.py
contain import statements, to import functions and classes, for convenience.

http://docs.python-guide.org/en/latest/writing/structure/#packages
http://mikegrouchy.com/blog/2012/05/be-pythonic-__init__py.html

Change-Id: I7408ac95f4970fbd7009257dfb698102ffabb6e3

9 years agoMove DVR related method to proper class
Oleg Bondarev [Tue, 7 Jul 2015 10:39:21 +0000 (13:39 +0300)]
Move DVR related method to proper class

get_snat_candidates() is about DVR routers scheduling and hence
should be a method of L3_DVRsch_db_mixin.
This commit does not modify anything, just moves.

Change-Id: Ib610e589befae55c6fe827f5ee8c3d6a596b86e1

9 years agoMerge "Do not mock arping in L3AgentTestFramework functional tests"
Jenkins [Thu, 9 Jul 2015 16:13:33 +0000 (16:13 +0000)]
Merge "Do not mock arping in L3AgentTestFramework functional tests"

9 years agoMerge "Precision networking-bagpipe-l2 subproject"
Jenkins [Thu, 9 Jul 2015 16:13:21 +0000 (16:13 +0000)]
Merge "Precision networking-bagpipe-l2 subproject"

9 years agoMerge "objects.qos: added unit tests for QosPolicy neutron object" into feature/qos
Jenkins [Thu, 9 Jul 2015 14:52:55 +0000 (14:52 +0000)]
Merge "objects.qos: added unit tests for QosPolicy neutron object" into feature/qos

9 years agoMerge "objects.base: avoid db access if object does not have changes" into feature/qos
Jenkins [Thu, 9 Jul 2015 14:26:19 +0000 (14:26 +0000)]
Merge "objects.base: avoid db access if object does not have changes" into feature/qos

9 years agoAllow IPAM backend switch
Pavel Bondar [Wed, 4 Feb 2015 13:13:28 +0000 (16:13 +0300)]
Allow IPAM backend switch

Changed inheritance chain for NeutronDbPluginV2 to allow switching from
non-pluggable to pluggable IPAM implementation.
IpamNonPluggableBackend methods are called on it's instance,
instead of previous way where IpamNonPluggableBackend was parent for
NeutronDbPluginV2.
It allows switching IPAM implementation in set_ipam_backend
(IpamNonPluggableBackend to IpamPluggableBackend).
All methods that became public in IpamNonPluggableBackend were renamed.

This is refactoring step before Pluggable IPAM can be applied.

Partially-Implements: blueprint neutron-ipam

Change-Id: I81806a43ecc6f0a7b293ce3e70d09d1e266b9f02

9 years agoMove update_security_group_on_port to SecurityGroupDbMixin
Aaron Rosen [Tue, 7 Jul 2015 18:58:06 +0000 (11:58 -0700)]
Move update_security_group_on_port to SecurityGroupDbMixin

Previously this function lived in SecurityGroupServerRpcMixin. This
patch moves this function to SecurityGroupDbMixin so plugins who don't
use SecurityGroupServerRpcMixin can leverage this function. This patch
has no affect to anyone using SecurityGroupServerRpcMixin as that inherits
from SecurityGroupDbMixin.

Change-Id: I6ce60dad222e1e244f0d4fac9680e73de2a9b2e9

9 years agoPython 3: Fix a TypeError in policy.py
YAMAMOTO Takashi [Thu, 9 Jul 2015 07:26:10 +0000 (16:26 +0900)]
Python 3: Fix a TypeError in policy.py

Fix "TypeError: 'filter' object is not subscriptable" with python 3.

Blueprint: neutron-python3
Change-Id: Ia49ce2e283ecf4da5333b95006746cb19490fde4

9 years agoMerge "lb-agent: handle security group updates in main loop"
Jenkins [Wed, 8 Jul 2015 22:30:20 +0000 (22:30 +0000)]
Merge "lb-agent: handle security group updates in main loop"

9 years agoMerge "Add ARP spoofing protection for LinuxBridge agent"
Jenkins [Wed, 8 Jul 2015 20:40:08 +0000 (20:40 +0000)]
Merge "Add ARP spoofing protection for LinuxBridge agent"

9 years agoIn Arista ML2 driver Reconfigure VLAN on VM migration
Shashank Hegde [Fri, 3 Jul 2015 01:16:56 +0000 (18:16 -0700)]
In Arista ML2 driver Reconfigure VLAN on VM migration

Whenever a VM moves from one compute node to the other, the VLAN on the old
switch interface was not removed and the VLAN was not being provisioned on the
new switch interface. With this patch, the VLANs are provisioned correctly.

Closes-Bug: #1471050
Change-Id: I658ef87ffd82119f41beda9ba019e29a62dc96ff

9 years agoMerge "Fix issues with allocation pool generation for ::/64 cidr"
Jenkins [Wed, 8 Jul 2015 16:30:51 +0000 (16:30 +0000)]
Merge "Fix issues with allocation pool generation for ::/64 cidr"

9 years agoMerge "Python3: cast the result of zip() to list"
Jenkins [Wed, 8 Jul 2015 13:45:37 +0000 (13:45 +0000)]
Merge "Python3: cast the result of zip() to list"

9 years agoFix issues with allocation pool generation for ::/64 cidr
John Davidge [Tue, 7 Jul 2015 16:00:01 +0000 (17:00 +0100)]
Fix issues with allocation pool generation for ::/64 cidr

Passing a ::/64 cidr to certain netaddr functions without specifying
the ip_version causes errors. Fix this by specifying ip_version.

Change-Id: I31aaf9f5dabe4dd0845507f245387cd4186c410c
Closes-Bug: 1472304

9 years agoMerge "Add IP_ANY dict to ease choosing between IPv4 and IPv6 "any" address"
Jenkins [Wed, 8 Jul 2015 04:15:50 +0000 (04:15 +0000)]
Merge "Add IP_ANY dict to ease choosing between IPv4 and IPv6 "any" address"

9 years agoMerge "Make sure path_prefix is set during unit tests"
Jenkins [Wed, 8 Jul 2015 02:46:23 +0000 (02:46 +0000)]
Merge "Make sure path_prefix is set during unit tests"

9 years agoMerge "Remove lingering traces of q_"
Jenkins [Wed, 8 Jul 2015 02:07:33 +0000 (02:07 +0000)]
Merge "Remove lingering traces of q_"

9 years agoMerge "Track allocation_pools in SubnetRequest"
Jenkins [Wed, 8 Jul 2015 00:53:14 +0000 (00:53 +0000)]
Merge "Track allocation_pools in SubnetRequest"

9 years agoMerge "Refactor init_l3 to separate router port use case"
Jenkins [Wed, 8 Jul 2015 00:52:59 +0000 (00:52 +0000)]
Merge "Refactor init_l3 to separate router port use case"

9 years agoMerge "Merge remote-tracking branch 'origin/feature/qos' into merge-branch" into...
Jenkins [Tue, 7 Jul 2015 21:57:29 +0000 (21:57 +0000)]
Merge "Merge remote-tracking branch 'origin/feature/qos' into merge-branch" into feature/qos

9 years agoRemove lingering traces of q_
Brian Haley [Tue, 7 Jul 2015 21:03:04 +0000 (17:03 -0400)]
Remove lingering traces of q_

The rename from Quantum to Neutron left a few q_ strings
around, let's go ahead and clean them up.

Change-Id: I06e6bdbd0c2f3a25bb90b5fa291009b9ec2d471d

9 years agoMake sure path_prefix is set during unit tests
armando-migliaccio [Tue, 7 Jul 2015 18:13:41 +0000 (11:13 -0700)]
Make sure path_prefix is set during unit tests

Change 18bc67d5 broke *-aas unit tests.

This change ensures that mocking is done correctly, the same way
it is done for the other plugin attributes

Change-Id: I4167f18560e3a3aad652aae1ea9d3c6bc34dc796
Closes-bug: #1472361

9 years agoAdd IP_ANY dict to ease choosing between IPv4 and IPv6 "any" address
Carl Baldwin [Tue, 7 Jul 2015 16:41:03 +0000 (16:41 +0000)]
Add IP_ANY dict to ease choosing between IPv4 and IPv6 "any" address

I'm working on a new patch that will add one more case where we need
to choose between 0.0.0.0/0 and ::/0 based on the ip version.  I
thought I'd add a new constant and simplify a couple of existing uses.

Change-Id: I376d60c7de4bafcaf2387685ddcc1d98978ce446

9 years agoPython3: cast the result of zip() to list
Cyril Roelandt [Tue, 7 Jul 2015 14:25:06 +0000 (14:25 +0000)]
Python3: cast the result of zip() to list

The result of get_sorts was a 'zip object' in Python 3, and it was later used
as a list, which fails. Just cast the result to a list to fix this issue.

Change-Id: I12017f79cad92b1da4fe5f9939b38436db7219eb
Blueprint: neutron-python3

9 years agoMerge "portsecurity_db_common: Access db columns in a consistent way"
Jenkins [Tue, 7 Jul 2015 14:17:39 +0000 (14:17 +0000)]
Merge "portsecurity_db_common: Access db columns in a consistent way"

9 years agoMerge "Introduce the AFTER_READ callback for ports and networks" into feature/qos
Jenkins [Tue, 7 Jul 2015 14:13:03 +0000 (14:13 +0000)]
Merge "Introduce the AFTER_READ callback for ports and networks" into feature/qos

9 years agoMerge remote-tracking branch 'origin/feature/qos' into merge-branch
Ihar Hrachyshka [Tue, 7 Jul 2015 13:37:58 +0000 (15:37 +0200)]
Merge remote-tracking branch 'origin/feature/qos' into merge-branch

Change-Id: I7f2342d62634f5b4af3a083cc1aaff46efe28519

9 years agoTrack allocation_pools in SubnetRequest
Pavel Bondar [Thu, 2 Jul 2015 08:35:18 +0000 (11:35 +0300)]
Track allocation_pools in SubnetRequest

To keep pluggable and non-pluggable ipam implementation consistent
non-pluggable one has to be switched to track allocation_pools and
gateway_ip using SubnetRequests.
SubnetRequest requires allocation_pools to be list of IPRanges.
Previously allocation_pools were tracked as list of dicts.
So allocation_pools generating and validating was moved before
SubnetRequest is created.

Partially-Implements: blueprint neutron-ipam

Change-Id: I8d2fec3013b302db202121f946b53a0610ae8321

9 years agoMerge "COMMON_PREFIXES cleanup - patch 5/5"
Jenkins [Tue, 7 Jul 2015 06:50:06 +0000 (06:50 +0000)]
Merge "COMMON_PREFIXES cleanup - patch 5/5"

9 years agoAdd ARP spoofing protection for LinuxBridge agent
Kevin Benton [Tue, 30 Jun 2015 04:05:08 +0000 (21:05 -0700)]
Add ARP spoofing protection for LinuxBridge agent

This patch adds ARP spoofing protection for the Linux Bridge
agent based on ebtables. This code was written to be minimally
invasive with the intent of back-porting to Kilo.

The protection is enabled and disabled with the same
'prevent_arp_spoofing' agent config flag added for the OVS agent
in I7c079b779245a0af6bc793564fa8a560e4226afe.

The protection works by setting up an ebtables chain for each port
and jumping all ARP traffic to that chain. The port-specific chains
have a default DROP policy and then have allow rules installed that
only allow ARP traffic with a source CIDR that matches one of the
port's fixed IPs or an allowed address pair.

Closes-Bug: #1274034
Change-Id: I0b0e3b1272472385dff060897ecbd25e93fd78e7

9 years agoMerge "Devref for out-of-tree plugin/driver contribution"
Jenkins [Tue, 7 Jul 2015 04:31:32 +0000 (04:31 +0000)]
Merge "Devref for out-of-tree plugin/driver contribution"

9 years agoCOMMON_PREFIXES cleanup - patch 5/5
armando-migliaccio [Thu, 2 Jul 2015 19:56:24 +0000 (12:56 -0700)]
COMMON_PREFIXES cleanup - patch 5/5

Get rid of COMMON_PREFIXES, as now the prefix is a service's declaritive property.

Change-Id: I3d306131df94188f75e69edb13d262721d10bee5
Depends-on: I0450d0b2bf409d470a3a87bfd96518939759a84e
Depends-on: Ia34695967cbbec0a1cf0884dad82e096de8539b8
Depends-on: Ib9517b772fe426eaf0809c439aa3ba0448c7abaa

9 years agoRefactor init_l3 to separate router port use case
Carl Baldwin [Tue, 30 Jun 2015 20:22:46 +0000 (20:22 +0000)]
Refactor init_l3 to separate router port use case

Future work will extend init_l3 with more code specific to router
ports.  It makes sense to separate these out in to one basic method
with basic L3 and another for router port specific logic.

Change-Id: Iec9a46cd0490c4f48bb306083711ff0c5e70ba87
Partially-Implements: blueprint address-scopes

9 years agoMerge "Refactor IpRuleCommand to take more arguments"
Jenkins [Mon, 6 Jul 2015 21:18:33 +0000 (21:18 +0000)]
Merge "Refactor IpRuleCommand to take more arguments"

9 years agoDevref for out-of-tree plugin/driver contribution
Henry Gessau [Mon, 1 Jun 2015 17:52:18 +0000 (13:52 -0400)]
Devref for out-of-tree plugin/driver contribution

Change-Id: I6198acce97409e0e87520a31f2749b62d607e9c1

9 years agoMerge "Update DVR agent to use get_vifs_by_id"
Jenkins [Mon, 6 Jul 2015 17:10:02 +0000 (17:10 +0000)]
Merge "Update DVR agent to use get_vifs_by_id"

9 years agoPython3: do not add dict_values objects
Cyril Roelandt [Fri, 3 Jul 2015 15:58:03 +0000 (15:58 +0000)]
Python3: do not add dict_values objects

In Python 3, dict.values returns a dict_values object instead of a list.

Change-Id: I83bc7718ac9bbb64187fefae57ce835fbe225829
Blueprint: neutron-python3

9 years agoMerge "AgentExtensionsManager and AgentCoreResourceExtension" into feature/qos
Jenkins [Mon, 6 Jul 2015 11:56:16 +0000 (11:56 +0000)]
Merge "AgentExtensionsManager and AgentCoreResourceExtension" into feature/qos

9 years agoportsecurity_db_common: Access db columns in a consistent way
YAMAMOTO Takashi [Thu, 2 Jul 2015 08:33:24 +0000 (17:33 +0900)]
portsecurity_db_common: Access db columns in a consistent way

While db columns and api attribute happen to have same name here,
it's still better to distinguish them.

Change-Id: I6d6e649925a41d89fd74ca5e64290737c9baed9a

9 years agoMerge "Add policy files specific to NSX plugins"
Jenkins [Sun, 5 Jul 2015 17:45:24 +0000 (17:45 +0000)]
Merge "Add policy files specific to NSX plugins"

9 years agoMerge "QoS extension fixes" into feature/qos
Jenkins [Sun, 5 Jul 2015 15:35:52 +0000 (15:35 +0000)]
Merge "QoS extension fixes" into feature/qos

9 years agoMerge "Python 3: do not index dict_keys objects"
Jenkins [Sat, 4 Jul 2015 23:20:41 +0000 (23:20 +0000)]
Merge "Python 3: do not index dict_keys objects"

9 years agoPython 3: do not index dict_keys objects
Cyril Roelandt [Wed, 1 Jul 2015 22:29:12 +0000 (22:29 +0000)]
Python 3: do not index dict_keys objects

This cannot be done in Python 3, where dict.keys() returns an iterator. We need
to cast the result of dict.keys() to a list first.

Change-Id: I28986aefb720b4513e3eee9ba0909f79d1dc9695
Blueprint: neutron-python3

9 years agoUpdate DVR agent to use get_vifs_by_id
Kevin Benton [Fri, 26 Jun 2015 17:00:42 +0000 (10:00 -0700)]
Update DVR agent to use get_vifs_by_id

The new get_vifs_by_id function retrieves all of the VIFs
for a port iteration at once to eliminate unnecessary multiple
calls to OVSDB.

Change-Id: If18557faead836121bfa3b4e6efccd0318ce72d3
Related-Bug: #1460233

9 years agoMerge "Start documenting potential API breakages in devref:neutron_api"
Jenkins [Fri, 3 Jul 2015 15:58:27 +0000 (15:58 +0000)]
Merge "Start documenting potential API breakages in devref:neutron_api"

9 years agoMerge "devref: document API status for neutron.openstack.common.*"
Jenkins [Fri, 3 Jul 2015 15:43:42 +0000 (15:43 +0000)]
Merge "devref: document API status for neutron.openstack.common.*"

9 years agoMerge "Python3: do not use urllib.urlencode"
Jenkins [Fri, 3 Jul 2015 08:35:43 +0000 (08:35 +0000)]
Merge "Python3: do not use urllib.urlencode"

9 years agoMerge "COMMON_PREFIXES cleanup - patch 1/5"
Jenkins [Fri, 3 Jul 2015 08:27:27 +0000 (08:27 +0000)]
Merge "COMMON_PREFIXES cleanup - patch 1/5"

9 years agoMerge "Fall back on empty path if prefix is missing"
Jenkins [Fri, 3 Jul 2015 08:13:46 +0000 (08:13 +0000)]
Merge "Fall back on empty path if prefix is missing"

9 years agoMerge "OVS native DBListcommand if_exists support"
Jenkins [Fri, 3 Jul 2015 04:24:20 +0000 (04:24 +0000)]
Merge "OVS native DBListcommand if_exists support"

9 years agoMerge "Downgrade log level for gone port on status update"
Jenkins [Fri, 3 Jul 2015 04:22:24 +0000 (04:22 +0000)]
Merge "Downgrade log level for gone port on status update"

9 years agoMerge "Fixing indentation and typo in comments"
Jenkins [Fri, 3 Jul 2015 03:26:30 +0000 (03:26 +0000)]
Merge "Fixing indentation and typo in comments"

9 years agoMerge "Remove unused linux bridge agent configuration options"
Jenkins [Fri, 3 Jul 2015 03:04:49 +0000 (03:04 +0000)]
Merge "Remove unused linux bridge agent configuration options"

9 years agoCOMMON_PREFIXES cleanup - patch 1/5
armando-migliaccio [Thu, 2 Jul 2015 19:06:05 +0000 (12:06 -0700)]
COMMON_PREFIXES cleanup - patch 1/5

This dictionary does not belong to the plugins directory as it captures
API business, but practically speaking it does not even deserve to exist
and can be removed altogether.

This is patch one in a series that aims at addressing this monkey business.

Change-Id: I95cd71dfc35e266f6f3cc5715ab8a0deb10058e7

9 years agoFall back on empty path if prefix is missing
armando-migliaccio [Thu, 2 Jul 2015 02:46:16 +0000 (19:46 -0700)]
Fall back on empty path if prefix is missing

A missing entry causes a KeyError that leads the server to blow up during
startup. We can fallback on an empty path (like some services do), in case
the prefix is not specified.

Furthermore, we can be declarative with this property, the same way we are
with properties like aliases, bulk support, etc.

Change-Id: I58a9b90a39d434f4808264aeb6f9ee5aceff7fbd

9 years agoMerge "Use EXT_TO_SERVICE_MAPPING instead of ALLOWED_SERVICES"
Jenkins [Thu, 2 Jul 2015 23:43:27 +0000 (23:43 +0000)]
Merge "Use EXT_TO_SERVICE_MAPPING instead of ALLOWED_SERVICES"

9 years agoRefactor IpRuleCommand to take more arguments
Carl Baldwin [Tue, 30 Jun 2015 20:23:39 +0000 (20:23 +0000)]
Refactor IpRuleCommand to take more arguments

The iproute2 rule command takes more arguments than the ones supported
by this wrapper.  Particularly, for address scopes, we're interested
in iif and fwmark.  Instead of adding these piecemeal, this change
makes the wrapper flexible to pass any of them using kwargs.

Callers of add / delete are updated to pass keyword arguments for
table and priority since they are no longer required positional
arguments.  This looks better anyway.

Change-Id: Ia93b086b787c34bd560961cb84e4a003cf359e7e
Partially-Implements: blueprint address-scopes

9 years agoobjects.qos: added unit tests for QosPolicy neutron object
Ihar Hrachyshka [Thu, 2 Jul 2015 21:52:20 +0000 (00:52 +0300)]
objects.qos: added unit tests for QosPolicy neutron object

Change-Id: Icecb3fc08c81bd9fb9f8bad54ed800a4eb55d399

9 years agoobjects.base: avoid db access if object does not have changes
Ihar Hrachyshka [Thu, 2 Jul 2015 20:30:36 +0000 (23:30 +0300)]
objects.base: avoid db access if object does not have changes

Also cover base object with unit tests.

Change-Id: I2f58c767ba35eeee2f9ecc363e5b042ea8638faa

9 years agoMerge "Support Basic Address Scope CRUD as extensions"
Jenkins [Thu, 2 Jul 2015 22:44:10 +0000 (22:44 +0000)]
Merge "Support Basic Address Scope CRUD as extensions"

9 years agoMerge "Add extension callbacks support for networks" into feature/qos
Jenkins [Thu, 2 Jul 2015 21:59:46 +0000 (21:59 +0000)]
Merge "Add extension callbacks support for networks" into feature/qos