18669 Commits

Author SHA1 Message Date
Sławek Kapłoński
da646496e3 Ingress bandwidth limit rule in Linuxbridge agent
Add support for QoS ingress bandwidth limiting in
linuxbridge agent.
It uses traffic shaping done by tc with tbf qdisc.

DocImpact: Ingress bandwidth limit in QoS supported by
           Linuxbridge agent

Change-Id: Id495b302d31f5527db3e45b51517bc53153e7fc2
Partial-Bug: #1560961
2017-06-22 08:20:48 +00:00
Jenkins
05c22d6199 Merge "Fix race between create subnet and port requests" 2017-06-21 03:36:31 +00:00
Jenkins
ccd7dadec5 Merge "Updated from global requirements" 2017-06-21 03:06:42 +00:00
Jenkins
5449e44587 Merge "DVR: Add forwarding routes based on address_scopes" 2017-06-21 03:06:15 +00:00
Jenkins
9d9ae5af4a Merge "functional: Don't write strings to pipe" 2017-06-21 01:47:13 +00:00
Jenkins
f855f209a7 Merge "OVO: Allow port queries based on security_group_ids" 2017-06-21 00:38:38 +00:00
Jenkins
ff56e45406 Merge "Add missing info about supported ingress bandwidth limit rule" 2017-06-20 23:28:06 +00:00
Jenkins
adfcf111d1 Merge "TC doesn't rise exception if device doesn't exist" 2017-06-20 21:30:36 +00:00
Jenkins
1559763663 Merge "python3: use binary mode to open file in test" 2017-06-20 21:30:21 +00:00
Sławek Kapłoński
98f4362469 Add missing info about supported ingress bandwidth limit rule
Add missing information that Openvswitch agent supports now
both ingress and egress direction for QoS bandwidth limit rule.

Support for ingress bandwidth limit was added in
I9d94e27db5d574b61061689dc99f12f095625ca0

TrivialFix

Change-Id: I70058d1d8f16c58e41dab08fc66d5d3f5fcefa4b
2017-06-20 21:07:10 +00:00
Jakub Libosvar
0c8dd7447a functional: Don't write strings to pipe
Python 3 doesn't support writing strings to descriptors. Write bytes
instead.

Change-Id: Ie732d00acc67c429d9f714bcfc116554fb523d36
2017-06-20 18:02:45 +00:00
Jenkins
c3e86bafdb Merge "Fix SG callbacks notification" 2017-06-20 17:56:31 +00:00
Bernard Cafarelli
033ab6cc17 python3: use binary mode to open file in test
With text mode, trying to write a binary string generates a TypeError in
python 3

Change-Id: I1b7d1a46d98814aacb4bf9a7f80b168c2b786e30
2017-06-20 17:20:56 +00:00
Jenkins
0962b6e76e Merge "use six.u rather than unicode for py3 compat" 2017-06-20 17:03:29 +00:00
Jenkins
ef1e24e05d Merge "tempest: Make _create_router_with_client obey enable_snat=False" 2017-06-20 16:18:01 +00:00
Jenkins
9f3a4c9de2 Merge "Clean up test cases in test_iptables_firewall.py" 2017-06-20 14:52:41 +00:00
Jenkins
92f9c21d03 Merge "Fix linuxbridge ebtables locking" 2017-06-20 12:23:35 +00:00
OpenStack Proposal Bot
8856a761a2 Updated from global requirements
Change-Id: I218dbc85d829e96fb94cf840c910980c764ed454
2017-06-20 11:47:04 +00:00
Kevin Benton
1db5ace55e OVO: Allow port queries based on security_group_ids
This is needed to retrieve all ports in a given set of
security groups.

Partially-Implements: blueprint push-notifications
Partially-Implements: blueprint adopt-oslo-versioned-objects-for-db
Change-Id: Iffa1bd341d9d20277ec153aa1dac6f61f05ec5bd
2017-06-20 08:33:22 +00:00
Jenkins
8c8ae29082 Merge "DHCP Agent: Separate local from non-local subnets" 2017-06-20 06:52:27 +00:00
Jenkins
97b97739fe Merge "DHCP RPC: Separate local from non-local subnets" 2017-06-20 06:37:12 +00:00
Cao Xuan Hoang
ee20757720 Clean up test cases in test_iptables_firewall.py
The protocol arg is called but never used.

Change-Id: Idff3ff67ed21c9bf36b0b01b098ad4411e12fdd7
2017-06-20 11:53:07 +07:00
YAMAMOTO Takashi
bd998d111e tempest: Make _create_router_with_client obey enable_snat=False
Found while working on I4452d61ee6e9d21add3d37ec39301efcbd3bd66d

Closes-Bug: #1699006
Change-Id: Ideb3e57b068dce150e333fde66f7ad488c2b515d
2017-06-20 12:50:27 +09:00
YAMAMOTO Takashi
05293965f1 Fix SG callbacks notification
Fix a regression from the recent change. [1]

[1] I6f49f25eb2ad16221357024f45a6bb6175d5cd55

Closes-Bug: #1698812
Change-Id: Ifef2561ef4ff2a44068fc008475b216fdabe7095
2017-06-20 11:39:52 +09:00
Jenkins
c4fd0317a3 Merge "Linuxbridge agent: detect existing IP on bridge" 2017-06-19 21:54:56 +00:00
Jenkins
6af12de193 Merge "Store segmentation_id during segment create" 2017-06-19 21:53:32 +00:00
Jenkins
e54b2e4a3e Merge "Stop binding attempts when network has no segments" 2017-06-19 21:42:57 +00:00
Miguel Lavalle
802cf11942 Fix race between create subnet and port requests
When creating an IPv6 auto-address subnet for a network, ports can be
created or updated concurrently in the same network, before the subnet
creation concludes. In such a situation, an IpAddressAlreadyAllocated
exception may be raised, because the subnet create request attempts to
allocate auto addresses to the concurrently created or updated ports,
which have been already allocated by the port requests.

This patchset adds code to the IPAM to skip the attempt to assign the
auto address to ports if they already have received them.

Change-Id: If1eb4046865f43b15ba97c52e2d0b9343dc72c19
Closes-Bug: #1655567
2017-06-19 14:03:48 -05:00
Boden R
01aab63fc3 use six.u rather than unicode for py3 compat
In Python 3 str is unicode by default and hence there is no unicode
global function. This switches our use of it to to six.u() which handles
the py2/py3 difference under the covers.

Change-Id: I3cfff2fe8e07e2a9ed8b89c93d24351b1f440b00
2017-06-19 11:24:18 -06:00
Harald Jensas
d2b82168cd DHCP Agent: Separate local from non-local subnets
In order to allow the DHCP agent to service other subnets on the
network in other segments via DHCP relay, we need to use the
'non_local_subnets' network attribute returned by rpc to set up dhcp
for off-link subnets.

Change-Id: I88e1c574bc429dc599ad7c956c03fa0688338186
Closes-Bug: 1692486
2017-06-19 16:11:48 +00:00
Kevin Benton
4dc81f0a53 DHCP RPC: Separate local from non-local subnets
In order to allow the DHCP agent to service other subnets
on the network in other segments via DHCP relay, we need to
return all subnets regardless of segment association.

However, this behavior will break older DHCP agents that
then try to get IPs on the subnets belonging to other segments.
This patch adds a new subnet attribute, 'non_local_subnets'
that will be returned in the DHCP RPC calls, so that agents
that can deal with off-link subnets can handle them
accordingly.

Change-Id: I9cce7b8a19c1201435df0c6baac7be57c57847e6
Partial-Bug: #1692486
2017-06-19 12:06:58 -04:00
Jenkins
c9a9b5d41a Merge "Fixes import_modules_recursively for Windows" 2017-06-19 13:56:28 +00:00
Jenkins
7cb56a1628 Merge "Pass the complete info in sg/rules db into PRECOMMIT_XXX callback" 2017-06-19 08:24:09 +00:00
Miguel Lavalle
323c29fd05 Store segmentation_id during segment create
The segmentation_id of a new segment is assigned by the
_handle_segment_change callback in the ML2 plugin, which is executed
after the segment was created, before commiting it to the DB. This
patchset adds code to update the newly created segment with the
segmentation_id assigned by the callback.

Change-Id: I493278a0bf5a3a0aadad10e5bee546d83b949fdc
Closes-Bug: #1698596
2017-06-18 17:47:00 -05:00
Jenkins
ab0dba40d1 Merge "docs: Fix indent level" 2017-06-17 10:11:01 +00:00
Jenkins
baa4ac9151 Merge "docs: reorganize developer reference for new theme" 2017-06-17 10:10:45 +00:00
Jenkins
f89a2467d8 Merge "docs: switch to openstackdocstheme" 2017-06-17 10:10:30 +00:00
Jenkins
2cdb1fc1fd Merge "Add a missing _LW()" 2017-06-17 09:22:53 +00:00
Jenkins
37e9999c8f Merge "Remove unreachable code in OVS mech driver" 2017-06-17 09:17:50 +00:00
Jenkins
1f27539c04 Merge "Add "default" behaviour to QoS policies documentation" 2017-06-17 08:03:53 +00:00
Kevin Benton
781b8f4149 Stop binding attempts when network has no segments
There is no point in retrying binding if the network has no
segments to bind to. This occurs during normal operations when
a network is being quickly created/deleted and the DHCP port
gets created during the network deletion.

By skipping binding we avoid misleading error messages and
wasted CPU cycles.

Closes-Bug: #1696010
Change-Id: I0b987ab7c3f65c1d860064a1b437b92a1dc1cb81
2017-06-17 00:15:22 -07:00
Reedip
89abce3efe Pass the complete info in sg/rules db into PRECOMMIT_XXX callback
PRECOMMIT_XXX events callback need completed sg info, like the sg id
and its related rules for registered driver.

Change-Id: I6f49f25eb2ad16221357024f45a6bb6175d5cd55
Co-Authored-By: Rui Wang <starwangrui@gmail.com>
Co-Authored-By: Manjeet Singh Bhatia <manjeet.s.bhatia@intel.com>
Co-Authored-By: Yalei Wang <yalei.wang@intel.com>
Closes-bug: #1546910
2017-06-16 16:32:46 -07:00
Jenkins
607c1810db Merge "Don't log ipam driver on every IP allocation" 2017-06-16 23:04:17 +00:00
Jenkins
0cdddcd7b6 Merge "OVO: ensure decomposed plugin do not break with OVO" 2017-06-16 22:33:01 +00:00
Jenkins
da0c0be9d9 Merge "use neutron-lib's callback fixture" 2017-06-16 20:34:38 +00:00
Boden R
98b9177c3e OVO: ensure decomposed plugin do not break with OVO
Commit af52d499a53f9dddacd8c9116d1bb0570e8f579c broke decomposed
plugins.

This was for a number of reasons:
1. _make_security_group_dict should always get the object as
   as parameter. There were some cases where it received the
   database object
2. The returned port security groups needed to be a list
3. A rule create needed to fetch from the DB

In addition to this the methods resource_extend.apply_funcs
should receive the database object.

Change-Id: I740da1ea65a0af9451701e3a40fd673fa82f0f5b
2017-06-16 13:42:34 -06:00
Jenkins
5a1de1be7d Merge "replace WorkerSupportServiceMixin with neutron-lib's WorkerBase" 2017-06-16 15:36:08 +00:00
Jenkins
243c742f4e Merge "Split allowed ICMPv6 types into two constants" 2017-06-16 06:14:01 +00:00
Jenkins
8829d90204 Merge "python3: Do not pass MagicMock as ConfigOpts" 2017-06-16 05:29:14 +00:00
Jenkins
e17e58ee5a Merge "Updated from global requirements" 2017-06-16 05:13:25 +00:00