21170 Commits

Author SHA1 Message Date
Hongbin Lu
f0678b9b09 Add propagate_uplink_status to port
Introduce an attribute 'propagate_uplink_status' to port.
This attribute can be implemented for VF port to indicate if the VF
link state should follow the state of the PF.

Note: ML2 extension driver loaded on request via configuration:

  [ml2]
  extension_drivers = uplink_status_propagation

Other related patches:
* neutron-lib: https://review.openstack.org/#/c/571821/
* tempest test: https://review.openstack.org/#/c/586719/
* OSC: https://review.openstack.org/#/c/586684/
* neutronclient: https://review.openstack.org/#/c/586712/

APIImpact Add 'propagate_uplink_status' attribute to 'port' resource

Change-Id: Ie8260c332e24c1880f9f82e6b6dacca8415be842
Close-Bug: #1722720
2018-11-29 19:33:16 +00:00
Zuul
4b7a070b3f Merge "Add protocol to port_forwarding uniq constraint" 2018-11-29 19:00:33 +00:00
Zuul
740a52f50c Merge "segments use neutron_lib placement client" 2018-11-29 19:00:30 +00:00
Zuul
dd14501c12 Merge "tox: Hide deprecation warnings" 2018-11-27 20:58:28 +00:00
Zuul
79133155e1 Merge "Store journal log from host in fullstack's job results" 2018-11-27 19:22:27 +00:00
Zuul
37714482e6 Merge "Get centralized FIP only on router's snat host" 2018-11-27 17:56:49 +00:00
Zuul
08bf770055 Merge "Fix incorrect usage of '# flake8: noqa'" 2018-11-27 03:59:50 +00:00
Zuul
6b6291bd5c Merge "All functional tests logs results now" 2018-11-27 00:02:50 +00:00
Zuul
6ff1eb2412 Merge "Add bulk IP address assignment to ipam driver" 2018-11-26 23:55:30 +00:00
Zuul
fbb617848e Merge "Trivial: Fix ovs cleanup script on Windows" 2018-11-26 23:55:24 +00:00
Slawek Kaplonski
c1407db676 Store journal log from host in fullstack's job results
Change-Id: Ibd16e111927d4c999cd668de9c04fc4c3146f347
Related-Bug: #1798475
2018-11-25 21:30:48 +01:00
Slawek Kaplonski
7d0e1ccd34 Get centralized FIP only on router's snat host
It may happen that L3 agent works in dvr_snat mode but
it handles some router as "normal" dvr router because
snat for this router is handled on other node.
In such case we shouldn't try to get floating IPs cidrs
from snat namespace as it doesn't exists on host.

Change-Id: Ib27dc223fcca56030ebb528625cc927fc60553e1
Related-Bug: #1717302
2018-11-25 09:23:00 +00:00
Zuul
94703e1e42 Merge "Add get_availability_zone rule to policy.json" 2018-11-22 20:18:15 +00:00
Lucian Petrut
01fe73f99c Trivial: Fix ovs cleanup script on Windows
The ovs cleanup script fails to run on Windows due to an import
error. The linux utils module will always get imported, which uses
platform specific modules.

Since only a constant is used from this module, the import can
easily be removed, fixing this issue.

Change-Id: I0cf7b629dc5d374d2066346276f73a12e4d03973
Closes-Bug: #1804180
2018-11-22 18:37:25 +02:00
Zuul
6b8634161d Merge "Add missing ws seperator between words" 2018-11-22 06:11:40 +00:00
Zuul
b9bbaa4c5d Merge "Add port_forwarding to devstack plugin" 2018-11-22 02:11:05 +00:00
Zuul
5d8c8d8feb Merge "DVR Floating IP create don't raise exception if agent not found" 2018-11-22 00:16:01 +00:00
Zuul
70c5c5f249 Merge "Change to use iproute2 instead of brctl" 2018-11-21 23:26:24 +00:00
Slawek Kaplonski
4ad302af87 All functional tests logs results now
Some functional tests clases didn't inherit from
neutron.tests.functional.base.BaseLoggingTestCase class
and because of that there was no logs from such tests
in DEFAULT_LOG_DIR.

This patch changes it and logs should be available for all
functional tests.

TrivialFix

Change-Id: Ia71390afe9c8191179c626375ed683f242d35b3e
2018-11-21 19:58:18 +00:00
Zuul
4b40a4c323 Merge "remove unused methods from CommonDbMixin" 2018-11-21 12:48:59 +00:00
Slawek Kaplonski
0745e32cd2 DVR Floating IP create don't raise exception if agent not found
Patch [1] added handling of AgentNotFoundByTypeHost exception in
create_fip_agent_gw_port_if_not_exists method in
neutron.db.l3_dvr_db.DVRResourceOperationHandler class.
Unfortunatelly there was mistake there and such exception wasn't
catched properly.
That caused issue e.g. in functional-python35 tests but wasn't catched
properly in functional tests using python27.

This patch changes this to handle such exception properly.

[1] https://review.openstack.org/#/c/574917/

Change-Id: If43f2c944ff46d8b05fbcf68231fd04bed147ba0
2018-11-21 12:29:39 +00:00
Zuul
595e88f022 Merge "ml2/rpc: provide a small helper to avoid redundancy" 2018-11-21 12:10:36 +00:00
Goutham Pratapa
31be154657 Add get_availability_zone rule to policy.json
"neutron availability-zone-list" checks for "get_availability_zone" rule
and policy.json doesn't contain it so adding it now.

Change-Id: I7e5e706c44136e0b565f3ee18e15f1166d82040d
2018-11-21 16:33:30 +05:30
Zuul
7d6057739b Merge "Prevent create port forwarding to port which has binding fip" 2018-11-21 10:15:55 +00:00
Zuul
8418ecdbc6 Merge "Add python 3.6 unit test job" 2018-11-21 03:38:45 +00:00
Zuul
cad8763189 Merge "Add kill_timeout to AsyncProcess" 2018-11-20 22:45:32 +00:00
Lajos Katona
db06d24414 tox: Hide deprecation warnings
Running tox targets on python3 write out a lot of DeprecationWarning,
the idea to hide them comes from this patch:
https://review.openstack.org/611884 from Stephen Finucane.

Change-Id: Id002ced641bba9833a633b331a3aa82ff0252f47
2018-11-20 17:46:37 +01:00
Boden R
a73deb9909 remove unused methods from CommonDbMixin
The register_model_query_hook and _apply_dict_extend_functions methods
from CommonDbMixin is not being used by consumers today. This patch
removes them and updates any doc references as well.

NeutronLibImpact

Change-Id: I3e72d7f33f5a7b0c9c023295302929410f94eefb
2018-11-20 06:55:13 -07:00
Zuul
180c30c9b1 Merge "Add networking-ovn job to Neutron's check pipeline" 2018-11-20 12:18:37 +00:00
Lajos Katona
24eb49c55b segments use neutron_lib placement client
Originally segments extension used it's own placement client.
Now in neutron-lib there is a working actively designed and  tested
client for placement, thus we can change segments to use that, and
remove the old placement client from neutron.

Change-Id: I2e7b53fdedb1837ddb0d685718d9a811ddac5733
Depends-On: https://review.openstack.org/580665
2018-11-20 08:33:59 +00:00
Zuul
468fc5fa34 Merge "Implement ip_lib get_devices using pyroute2" 2018-11-20 04:56:59 +00:00
Zuul
d49edf1d77 Merge "Refactor _cache_related_dvr_routers_info_before_interface_removal()" 2018-11-20 04:56:55 +00:00
Zuul
9b7afc69c7 Merge "Make neutron-fullstack job run py3" 2018-11-20 04:56:52 +00:00
Zuul
5014cfa2e6 Merge "Import neutron.db.api module in common.utils" 2018-11-20 04:42:41 +00:00
Zuul
d35ed2ea84 Merge "Set router_id if floating IP has port_forwardings" 2018-11-20 04:34:39 +00:00
Zuul
216ed70e4f Merge "Duplicate words were deleted in openvswitch_agent.rst" 2018-11-19 18:31:00 +00:00
Zuul
511e043a0e Merge "Add test cases for port number 0 for port_forwarding" 2018-11-19 18:30:57 +00:00
Nate Johnston
06e38be42e Add bulk IP address assignment to ipam driver
Create a method for bulk assignment of IP addresses within the ipam
driver, to support bulk creation of ports.

This also changes the logic for how the window of available IP addresses
to assign from is calculated within the neutrondb IPAM driver.  The
Python random module is used to produce a statistically sampled set of
IP addresses out of the set of available IPs; this will facilitate
collission avoidance.  When requesting multiple IP addresses the
selection window sized is increased significantly to ensure a larger
number of available IPs, but caps are placed on the amount to make sure
we do not transgress system limits when building pools of IPv6
addresses.

Change-Id: Iad8088eaa261b07153fa358ae34b9a2442bc2a3e
Implements: blueprint speed-up-neutron-bulk-creation
2018-11-19 11:29:13 -05:00
guotao.bj
a26f5375e6 Duplicate words were deleted in openvswitch_agent.rst
Change-Id: I2b85b046409f935b9611e853ebfc96d822400450
2018-11-19 09:53:44 +00:00
zhufl
65f1a7e521 Add missing ws seperator between words
This is to add missing ws seperator between words, usually
in log messages.

Change-Id: Ia975aba3883ce7b3be3cc22044a8cb33ee215f85
2018-11-19 13:57:05 +08:00
LIU Yulong
c8cb1454af Add test cases for port number 0 for port_forwarding
Depends-On: https://review.openstack.org/#/c/616030/
Depends-On: https://review.openstack.org/#/c/613562/

Closes-Bug: #1799150
Change-Id: Iae80e59e3472cfccdf28ff29ba2f630781258ebc
2018-11-17 12:31:27 +08:00
Boden R
ddc72ebd41 use payloads for SEGMENT BEFORE_DELETE callbacks
This patch switches over to the payload style of callbacks for SEGMENT
BEFORE_DELETE events. It does so by using the publish callback function
with DBEventPayload payloads. Corresponding listener callbacks are
updated where necessary.

NeutronLibImpact

Change-Id: I64031129ad458d4468a316a9385288ced091d333
2018-11-16 10:57:21 -07:00
Slawek Kaplonski
9b23abbdb6 Add kill_timeout to AsyncProcess
AsyncProcess.stop() method has now additional parameter
kill_timeout. If this is set to some value different than
None, eventlet.green.subprocess.Popen.wait() will be called
with this timeout, so TimeoutExpired exception will be raised
in case if process will not be killed for this "kill_timeout"
time.
In such case process will be killed "again" with SIGKILL signal
to make sure that it is gone.

This should fix problem with failing fullstack tests, when
ovs_agent process is sometimes not killed and test timeout was
reached in this wait() method.

Change-Id: I1e12255e5e142c395adf4e67be9d9da0f7a3d4fd
Closes-Bug: #1798472
2018-11-16 15:33:13 +01:00
Zuul
1e0a5b901a Merge "Select service_provider on the basis of service_module" 2018-11-15 12:47:09 +00:00
Zuul
0008d3aa41 Merge "DVR: Centralized FloatingIPs are not cleared after migration." 2018-11-15 09:37:22 +00:00
Brian Haley
2572c158f5 Change to use iproute2 instead of brctl
brctl is being deprecated in some Linux distros, so
change neutron to start using iproute2 commands or
the pyroute2 library where possible.

Added create() to IpLinkCommand class to allow usage
of pyroute2 for bridge creation.

Change-Id: If679e79fa3242ee1cd8610b5525deca35b41c87e
Closes-bug: #1801919
2018-11-14 12:46:37 -05:00
Lucas Alvares Gomes
9dc5725996 Add networking-ovn job to Neutron's check pipeline
According with the ML thread [0] it was decided during the PTG in
Denver that Stadium projects are now allowed to add a non-voting job to
Neutron's check pipeling.

This patch is then adding a tempest job for the networking-ovn project.

[0]
http://lists.openstack.org/pipermail/openstack-dev/2018-September/135273.html

Depends-On: I49a644631365465ba4fbe2ca864dfa3d018c4b56
Change-Id: I4b7e7677b0f161048b7350cd491aba9e72d6b1d0
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2018-11-14 09:35:13 +00:00
Rodolfo Alonso Hernandez
aa19fa1c3f Implement ip_lib get_devices using pyroute2
IPWrapper.get_devices() now uses pyroute2 and priv_sep.

Related-Bug: #1492714
Change-Id: Idb847bf16fe8898735266d93d39430da1f5410f9
2018-11-14 09:27:26 +00:00
Swaminathan Vasudevan
cd0cc47a6a DVR: Centralized FloatingIPs are not cleared after migration.
With DVR routers, if a port is associated with a FloatingIP,
before it is used by a VM, the FloatingIP will be initially
started at the Network Node SNAT Namespace, since the port
is not bound to any host.

Then when the port is attached to a VM, the port gets its
host binding, and then the FloatingIP setup should be migrated
to the Compute host and the original FloatingIP in the Network
Node SNAT Namespace should be cleared.

But the original FloatingIP setup in SNAT Namespace was not
cleared by the agent.

This patch addresses the issue.

Change-Id: I55a16bcc0020087aa1abe76f5bc85cd64ccdaecd
Closes-Bug: #1796491
2018-11-13 16:25:04 -05:00
Zuul
84e22945ce Merge "Notify router_update after directly gateway IP change" 2018-11-13 21:23:51 +00:00