20645 Commits

Author SHA1 Message Date
Boden R
02e9f270e9 bump neutron-lib requirements to 1.18.0
This patch updates the requirements.txt and lower-constraints.txt to
use neutron-lib 1.18.0 that will be our Rocky GM candidate (assuming no
problems crop up).

Change-Id: I4ed5de9238800c59a8c505e8d94ee508fe193882
2018-07-19 06:29:48 -06:00
Zuul
e22ec6c609 Merge "Fix attribute mismatch in router provider update" 2018-07-19 11:35:49 +00:00
Zuul
587bbe171e Merge "[server side] Floating IP port forwarding OVO and db script" 2018-07-18 23:44:37 +00:00
Zuul
68099a8a2f Merge "Add missing policy actions to policy.json file" 2018-07-18 23:33:32 +00:00
Zuul
d0a8c06107 Merge "Add binding_deactivate method to Linux bridge agent" 2018-07-18 21:13:38 +00:00
Zuul
cae59da198 Merge "Update get_port_binding_host for multiple bindings" 2018-07-18 21:13:34 +00:00
Zuul
2341a80f46 Merge "Pluralize binding relationship in Port" 2018-07-18 19:07:30 +00:00
Zuul
d8a58b96ff Merge "Change neutron CLI to openstack CLI in neutron doc" 2018-07-18 06:04:40 +00:00
Felipe Monteiro
41fe927c80 Add missing policy actions to policy.json file
This patchset adds missing policy actions to the policy.json
file for several reasons:

1) It signals to operators all the policy actions that are
   enforced in the system. With the governance spec [0]
   urging projects toward policy in code documentation,
   it makes sense to document all policy actions in the
   policy.json as Neutron doesn't have policy in code.

2) It is consistent with Neutron's policy enforcement
   documentation [1]:

   "For each attribute which has been explicitly specified in the
    request create a rule matching policy names in the form
    <operation>_<resource>:<attribute> rule"

    So it makes sense to capture each policy that is enforced,
    including all those with these special attributes.

3) Why include "update_router:external_gateway_info" but not
   "create_router:external_gateway_info"? This is inconsistent.

4) It makes it difficult to validate Neutron's policy via Patrole
   if the policies aren't contained in the policy.json -- how else
   is it possible to determine which policies to expect if they
   aren't documented anywhere?

[0] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
[1] https://docs.openstack.org/neutron/pike/contributor/internals/policy.html#authorization-workflow

Change-Id: I40f84134f0b56cfd574dfd69e5ebbf6a3fc2b3df
2018-07-18 02:17:16 +01:00
Zuul
29dc0a893e Merge "Multiple port binding for ML2" 2018-07-17 20:33:00 +00:00
Zuul
3be1cd2fc4 Merge "Fix UnixDomainHttpProtocol class to support all eventlet versions" 2018-07-17 20:23:49 +00:00
Zuul
c5bd85eb5d Merge "Add list of all working DSCP marks" 2018-07-17 11:45:09 +00:00
Zuul
414c0d40c9 Merge "use retry_db_errors from neutron-lib" 2018-07-17 11:05:43 +00:00
Zuul
156f29aea3 Merge "Adjust filters on listing availability zones" 2018-07-17 10:54:33 +00:00
Zuul
215aa73baa Merge "Fix fwaas v1 configuration doc" 2018-07-17 09:03:25 +00:00
Zuul
c563530af5 Merge "[Fullstack] Remove central_external_bridge" 2018-07-17 05:01:13 +00:00
Zuul
5d8a0d9ca3 Merge "Ensure request's object type is dict" 2018-07-17 02:38:10 +00:00
yanpuqing
5aa8eb99c8 Change neutron CLI to openstack CLI in neutron doc
neutron CLI is deprecated and will be removed in the future. Use
openstack CLI instead.

Change-Id: I00fa6ee2e2ac19627a172ff49a55fe664e4f5c43
Closes-Bug: 1749801
2018-07-17 01:41:19 +00:00
Nate Johnston
b935f9d9a7 Add list of all working DSCP marks
There is no place in the documentation that explicitly lists the valid
DSCP marks, except for an incomplete hint in the DSCP spec in
neutron-specs.  This provides an explicit list.

Change-Id: Ic350c88e59c33d98b54086707c9add05cf137dc2
Closes-Bug: #1781915
2018-07-16 11:32:02 -04:00
Boden R
e4348eb1e1 use retry_db_errors from neutron-lib
The externally consumed APIs from neutron.db.api were rehomed into
neutron-lib with https://review.openstack.org/#/c/557040/

This patch consumes the retry_db_errors function from lib by:
- Removing retry_db_errors from neutron.db.api
- Updating the imports for retry_db_errors to use it from lib
- Using the DB API retry fixture from lib in the UTs where applicable
- Removing the UTs for neutron.db.api as they are now covered in lib

NeutronLibImpact

Change-Id: I1feb842d3e0e92c945efb01ece29856335a398fe
2018-07-16 08:10:54 -06:00
Zuul
e446b1e35c Merge "Update pypi url to new url" 2018-07-16 12:17:39 +00:00
Zuul
8781691988 Merge "Add multiple IPv6 EUI-64 addresses test" 2018-07-16 12:17:36 +00:00
Zuul
019e61535a Merge "ipam_backend_mixin: Service Type model to OVO" 2018-07-16 11:20:14 +00:00
Zuul
bda3e611f6 Merge "Send update instead of remove for DVR reschedule" 2018-07-16 10:59:16 +00:00
ZhaoBo
5bd6281f9c [server side] Floating IP port forwarding OVO and db script
This patch implements the port forwarding OVO and db layer code.
Such as:
* Introduces a new OVO named 'PortForwarding'.
* Introduces a new db model for OVO.
* A migration db script for port forwarding function.

Partially-Implements: blueprint port-forwarding
This patch partially implements the following spec:
https://specs.openstack.org/openstack/neutron-specs/specs/rocky/port-forwarding.html

The race issue fix in:
https://review.openstack.org/#/c/574673/

Fip extend port forwarding field addition in:
https://review.openstack.org/#/c/575326/

Partial-Bug: #1491317
Change-Id: If24e1b3161e2a86ccc5cc21acf05d0a17f6856e7
2018-07-16 11:17:45 +08:00
Dongcan Ye
eb98518df0 Add multiple IPv6 EUI-64 addresses test
This patch adds allocate addresses from
multiple IPv6 slaac and stateless subnets.

Change-Id: I77196d6587f601ea3d435a8b5b36d5e7d866b358
2018-07-16 03:17:25 +00:00
miaoyuliang
fe4bec7991 Fix fwaas v1 configuration doc
Modify the fwaas v1 config about  driver

Change-Id: Id6821174a15838713435a499a258f6d37a9cad2a
Closes-Bug: #1777547
2018-07-15 11:47:00 -04:00
Miguel Lavalle
f374697760 Add binding_deactivate method to Linux bridge agent
This commit adds a binding_deactivate method to the Linux bridge agent
to receive messages from the ML2 plugin when a binding is de-activated
for a port. After receiving that message, the agent un-plugs the
corresponding tap interface from the port's network bridge.

To support this, a binding_deactivate method is also added to the agents
notifier. Finally, the activate method in the ML2 plugin is updated to
use the binding_deactivate method in the agents notifier.

Change-Id: I3f4e34766791c472a2c81842190094f697baa05c
Partial-Bug: #1580880
2018-07-14 16:46:01 -05:00
Miguel Lavalle
390b6a531f Update get_port_binding_host for multiple bindings
With the adoption of multiple port bindings, get_port_binding_host is
updated to select only the active binding

Change-Id: I57ee16aa970527de2c2d787ebf0df71241f01e74
Partial-Bug: #1580880
2018-07-14 16:42:09 -05:00
Zuul
e3e91eb44c Merge "Bump neutron-lib version to 1.17.0" 2018-07-14 16:35:36 +00:00
Zuul
511eeab7b2 Merge "Improve patching of sys.argv" 2018-07-14 15:32:51 +00:00
Miguel Lavalle
03db94ebaa Pluralize binding relationship in Port
As a consequence of implementing multiple bindings for ports, [1] made
the following attributes lists:

- 'port_binding' in the in the SQLAlchemy Port model
- 'binding' in the Port OVO

This patch pluralizes their names to 'port_bindings' and 'bindings'
respectively

[1] Ie31d4e27e3f55edfe334c4029ca9ed685e684c39

Change-Id: I4ebe47cf9d51a700310aad8dcccc82fea3f00a16
2018-07-13 19:37:36 -05:00
Jakub Libosvar
f7b62a7f29 Multiple port binding for ML2
Functionality is added to the ML2 plugin to handle multiple port
bindings

Co-Authored-By: Anindita Das <anindita.das@intel.com>
Co-Authored-By: Miguel Lavalle <miguel.lavalle@huawei.com>

Partial-Bug: #1580880

Change-Id: Ie31d4e27e3f55edfe334c4029ca9ed685e684c39
2018-07-13 18:14:50 -05:00
Zuul
e8168345ef Merge "Refactor duplicated implementation of _get_policy_obj" 2018-07-13 14:51:40 +00:00
Zuul
8f27c2a165 Merge "Modify logic of l3-agent to be notified" 2018-07-13 02:20:23 +00:00
Zuul
13631ff187 Merge "Disallow router interface out of subnet IP range" 2018-07-13 02:20:20 +00:00
Zuul
14a22799f5 Merge "use plugin utils from neutron-lib" 2018-07-12 22:23:09 +00:00
Zuul
7b850a9f60 Merge "Adopt hacking 1.1.0" 2018-07-12 22:23:06 +00:00
Boden R
839e575fa6 use plugin utils from neutron-lib
The remainder of the neutron.plugins.common.utils were rehomed into
neutron-lib with [1][2]. This patch consumes them by using the functions
from neutron-lib, and removing the neutron.plugins.common.utils module
all together as it's fully rehomed now.

NeutronLibImpact

[1] https://review.openstack.org/#/c/560950/
[2] https://review.openstack.org/#/c/554546/

Change-Id: Ic0f7b37861f078ce8c5ee92d97e977b8d2b468ad
2018-07-12 08:13:05 -06:00
Tuan Do Anh
06fa044815 Update pypi url to new url
Pypi url changed from [1] to [2]

[1] https://pypi.python.org/pypi/<package>
[2] https://pypi.org/project/<package>

Change-Id: I308295c0eb7c45e6da2cf9b0a229bf05d5ac5302
2018-07-12 15:04:05 +07:00
Kailun Qin
8b16b53b5b Send update instead of remove for DVR reschedule
The current "agent remove-add" method to reschedule a router is not
friendly for DVR. In DVR cases, the old agent may still need to keep the
router in a non-master role to service any VM ports that exit on that
host while the new agent handles the master role of the router.

This patch proposes to send "update" instead of "remove" notification
for DVR rescheduling, which aligns with the retain_router check in
remove_router_from_l3_agent as well.

Closes-Bug: #1781179
Change-Id: I23431f9f46f72e6bce91f3d1fb0ed328d55930fb
2018-07-12 15:14:04 +08:00
Zuul
be4a1dd6dd Merge "Remove the unit test 'test_ports_vnic_type_list'" 2018-07-11 23:49:25 +00:00
Zuul
f6bcfe1d89 Merge "Fix the tests for filtering with qos_policy_id" 2018-07-11 23:49:22 +00:00
Zuul
300e93c70e Merge "use get reader/writer session from neutron-lib" 2018-07-11 23:00:50 +00:00
Zuul
1c0090793f Merge "Add release notes link in README" 2018-07-11 21:33:42 +00:00
Zuul
fd3252c8f2 Merge "Use OVO in plugins/ml2/test_plugin.py" 2018-07-11 21:32:39 +00:00
Kailun Qin
886e241553 Fix attribute mismatch in router provider update
The transition of a router from distributed to centralized may
mistakenley get its 'ha' attribute updated at the same time. The
side-effect is that the router may become HA enabled unexpectedly.

This patch fixed the mismatched attribute in _update_router_provider
method which addressed the issue cited above.

Closes-Bug: #1780094
Change-Id: Ib00de137692979229d1b7ba033ecff04e9cc9db0
2018-07-11 17:26:49 +08:00
Dao Cong Tien
4d13df690e Invalid link of doc reference
Change-Id: I7d88d8a4dcfaad6fb49279af41eb86eadb8ec824
2018-07-11 13:58:37 +07:00
Brian Haley
d1efeeb433 Fix UnixDomainHttpProtocol class to support all eventlet versions
It was recently decided to uncap eventlet:
http://lists.openstack.org/pipermail/openstack-dev/2018-April/129096.html
So eventlet is now capped at 0.20 not by global requirements,
it is capped in upper-constraints, because currently not every
openstack project is able to work with a newer eventlet version,
mostly because of the caps in projects requirements.txt.
According to global-requirements, last allowed version of
eventlet is 0.22.1:
https://git.openstack.org/cgit/openstack/requirements/tree/global-requirements.txt

In an effort to support both eventlet<0.22 and eventlet>=0.22,
change the code to try and determine the correct number of
arguments to use in the call to initialize the parent class.

Change-Id: Ibe3dc8af6cf9f8bb4f8eababb7f4276e4db3f1f9
Closes-bug: #1777640
2018-07-10 15:20:11 -04:00
Zuul
5db3979581 Merge "python3: fix netlink_lib delete_entries" 2018-07-10 12:46:46 +00:00