Commit Graph

14 Commits (master)

Author SHA1 Message Date
Rodolfo Alonso Hernandez e02c1b9b3e Bump Neutron and neutron-lib versions
It is needed to enforce the correct versions of both projects due
to incompatibilities with previous version. The Neutron Bobcat beta
3 should work with neutron-lib 3.8.0.

Change-Id: I1b7e35c92b01c15c9c236861f60d13bc5098330f
2023-09-06 12:56:44 +00:00
Gregory Thiemonge 220d8c8581 Replace python-neutronclient with openstacksdk
python-neutronclient has been deprecated and Octavia has already removed
it in the dependend change below. These are the respective changes on
ovn-octavia-provider side and they are in line with changes in Octavia
itself:

- Replaced code that uses the deprecated `python-neutronclient` library
  with code that uses `openstacksdk` and removed `python-neutronclient`
  as a dependency.
- Marked certain configuration options that were related to Keystone
  authentication as deprecated for removal. In future releases
  authentication options options need to be added to the [neutron]
  section of the configuration.

Note: After [1] some calls to neutron test_db_base_plugin_v2 had added
a new param 'as_admin' that need to be included in the calls from
ovn-provider functional tests. Squashed with patch [2] to solve
cross dependency.

[1] https://review.opendev.org/c/openstack/neutron/+/879827
[2] https://review.opendev.org/c/openstack/ovn-octavia-provider/+/882715

Depends-On: https://review.opendev.org/c/openstack/octavia/+/866327
Change-Id: I985b24e4a6db962b1e73eeae69a8c96f4b0760ae
2023-05-10 08:59:10 +02:00
Fernando Royo e40e0d62ac Use ovsdbapp commands to add/del backends to ip_port_mappings
LB ip_port_mapping is updated just adding and deleting every member
after any related operation over the LB-HM, this operation was done
in two steps, a db_clear and a db_set.

This patch takes ovsdbapp specific commands for add/del backends to
the ip_port_mapping in a more appropiate way, reducing any further
operation from OVN DBs not related to the member added/deleted. Also
taking care about the possibility of the same backend_ip could be
pointed by other member, under a different HM.

ovsdbapp bumps to 2.1.0 to be able to use those new functionalities [1]

[1] f3c5da5402

Closes-Bug: 2007835
Change-Id: I5705c490bcd36e7e2edcc62954a3ffa0ff645519
2023-04-03 08:17:23 +00:00
Ghanshyam Mann 1207a23df2 Drop lower-constraints.txt and its testing
As discussed in TC PTG[1] and TC resolution[2], we are
dropping the lower-constraints.txt file and its testing.
We will keep lower bounds in the requirements.txt file but
with a note that these are not tested lower bounds and we
try our best to keep them updated.

[1] https://etherpad.opendev.org/p/tc-zed-ptg#L326
[2] https://governance.openstack.org/tc/resolutions/20220414-drop-lower-constraints.html#proposal

Change-Id: Ibceb62d1929a159ccea0226ad53e380afb72c19d
2022-07-12 07:12:27 +00:00
Slawek Kaplonski e9bf916b92 Fix lower-constanints and pep8 jobs
This patch switches using f-strings instead of regular ones in places
where pep8 was complaining about with error C0209.

It also updates some of the lower-constraints to align them with
Neutron's lower-constraints and to make ci job happy.

It also changes OVN_BRANCH from "master" to "main" as that was renamed
in the OVN repo some time ago.

Change-Id: I8c805504e8a9e06dcdd4b1ac850d54400ef05b40
2021-11-05 17:07:33 +01:00
Brian Haley 69b392de9c Fix python 3.9 unit test failures
Running the python 3.9 unit tests locally results in failures
like:

  TypeError: cannot pickle '_thread.RLock' object

Because we are inheriting some of the neutron code, and this
is fixed in that repository, just bump the minimum requirement
to 18.0.0 (Wallaby) now that it is released. This does not
happen in the gate since it is always using master.

Raised minimum of other libraries as necessary.

Change-Id: I820c924189d2973aefcb1452331c904f1ee7051f
Closes-bug: #1923083
2021-04-21 22:11:38 -04:00
Brian Haley b882a7f69d Fix gate failure
Bumped a bunch of constraints and requirements to fix
a gate failure with recent pip update. Required
moving minimum neutron version to Ussuri (16.0.0).
Fix associated new warnings.

Change-Id: Ic6b1dca1c58f982562333a5ae762b1b596355ede
2020-12-09 13:42:07 -05:00
Brian Haley bfd98048cf Fix broken gate
This is a combination of a number of fixes required to
fix the broken gate.

Fix lower-constraints job for focal, bumping requirements
and fixing resultant failuers as necessary.

The devstack module for OVN has now been moved to the
devstack repository, so include it from there so the
functional jobs can run.

Set not_implemented_is_error to False.
The Octavia tempest plugin tests are being changed to
better skip tests for not implemented features. Setting
this to False will treat NotImplemented failures as
skips and not errors.

Fix tempest blacklist regex.

Raise error on listener create with 'allowed_cidrs' present.

Change-Id: I70adcfad3f4d489d94da171670c23dba51d6f2a1
2020-09-14 17:35:31 -04:00
Brian Haley d6f65325a0 Use more octavia-lib constants
Octavia has a pretty extensive definition of constants,
start using them where possible.  Had to tweak a lot of
lines due to wrapping, but functionally nothing should
have changed.

Removed some extra parens where found and other misc
cleanups.

Also bumped neutron-lib to >= 2.1.0 since that is py3-only.

Change-Id: If400730cb759130192966bacf3c6edb9faa18899
2020-04-28 13:06:34 -04:00
Brian Haley 2efb86b361 Update requirements and constraints
There were a number of carry-over constraints and
requirements from neutron and networking-ovn that
are not needed for the OVN provider, remove them.

Update tenacity to version 5.0.2 to match octavia-lib,
else running 'tox -e lower-constraints' will fail with
an error locally.

Also removed the install_command directive from
tox.ini since that could lead to requirements
tests not running properly, it is handled internally
by tox versions > 3.0 and we are using 3.1.0.

Change-Id: I72d1ac0294e22ead8d9f38e09bdefc62a3ce50ff
2020-04-21 19:41:35 -04:00
Maciej Józefczyk 6e7f454ccd Add missing requirements
Those requirements were missing.

Change-Id: I65d8a3d7601872bda65e3aa17380a4c342970aa3
2020-03-31 09:56:59 +00:00
Maciej Józefczyk 40545dc9b5 Stop using Octavia network driver
We shouldn't be using Octavia components except octavia-lib
in provider driver.
For now we only use Neutron client methods from Octavia Neutron network
driver, so this patch removes use of Octavia network driver
in favor of direct use of Neutron Client.

Change-Id: I77802ff65f975f8136daddfe897ae1993bd9c5e9
2020-03-31 08:15:38 +00:00
Maciej Józefczyk 000049c15d Move OVN Octavia Provider driver code to this repository
This code moves OVN Octavia provider driver from networking-ovn
(branch master) repository to this repository.

For first step lets move code and unit tests.

Previous paths in networking-ovn tree:
./networking_ovn/octavia/ovn_driver.py -> ./ovn_octavia_provider/driver.py
./networking_ovn/tests/unit/octavia/test_ovn_driver ->
   ./ovn_octavia_provider/tests/unit/test_driver.py

There are a few files taken directly from neutron
repository that could be removed when neutron-lib
including those will be released:
./ovn_octavia_provider/ovsdb/impl_idl_ovn.py
./ovn_octavia_provider/ovsdb/ovsdb_monitor.py

Co-Authored-By: Brian Haley <bhaley@redhat.com>
Co-Authored-By: Carlos Goncalves <cgoncalves@redhat.com>
Co-Authored-By: Frode Nordahl <frode.nordahl@canonical.com>
Co-Authored-By: Jakub Libosvar <libosvar@redhat.com>
Co-Authored-By: Maciej Józefczyk <mjozefcz@redhat.com>
Co-Authored-By: Numan Siddique <nusiddiq@redhat.com>
Co-Authored-By: Reedip Banerjee <rbanerje@redhat.com>
Co-Authored-By: Terry Wilson <twilson@redhat.com>
Co-Authored-By: Yunxiang Tao <taoyunxiang@cmss.chinamobile.com>
Co-Authored-By: zhufl <zhu.fanglei@zte.com.cn>

Change-Id: I9b562c4ed5f74df2c3d600356758f4648ac7770b
Related-Blueprint: neutron-ovn-merge
2020-02-18 16:23:54 +00:00
Maciej Józefczyk 184f629f17 Initialize repository
This commit adds basic project configuration.

Change-Id: Ia5e4aa81213f34654e21e65ab44f4eea03851a9a
2020-01-15 14:41:32 +00:00