CHANGES
=======

* Add SOURCE\_IP lb-algorithm support
* Skip user-provided VIP ports in maintenance backfill task
* Fix LB creation with --vip-port-id
* Remove python-neutronclient dependency from unit tests
* neutron-ovn-db-sync-util plugin integration
* Remove kuryr-kubernetes job
* Use project\_id in all test code
* [OVN] Protect LB VIP ports with device\_id and device\_owner
* Drop unnecessary override of ovn-metadata-agent
* Revert "[eventlet-removal] Remove "logger" mechanism from ML2/OVN CI jobs"
* zuul: Use ansible variable to configure tempest plugins
* Add support for Python 3.13
* Fix LB association to all connected routers and their networks
* Update master for stable/2026.1
* Add periodic-weekly queue for ovn-octavia-provider
* Fix: Prevent DuplicateOptError for opts

10.0.0
------

* Update flake8-import-order version to fix checks
* Use project\_id key in create\_router plugin calls
* Drop redundant N347 check
* Change test code to use project\_id key
* Remove url tags from README
* Drop workaround for Python < 2.7.4
* Fix sync tool to pass lists to member CRUD actions
* Skip LB association to provider networks with localnet ports
* Member batch actions to increase performance
* Remove --isolated flag from functional tests
* Add PyMySQL to test requirements and pin pylint < 4.0.0
* Optimize \_get\_current\_operating\_statuses to reduce octavia\_lib calls
* Increase coverage tests
* Fix pylint version constraint
* Update master for stable/2025.2

9.0.0
-----

* Use main branch for ovs in master job
* Replace LOG.warn
* Patching Octavia LB pool removal issue and adding updated unit tests
* Zuul: do not use USE\_PYTHON3
* Replace the OVN Metadata agent with the OVN agent
* Remove Python 3.9 support
* Drop explicit dependency on python-subunit
* Fix LB disable/enable functionality
* Ensure LB with HM rechecks member status after re-enable
* [FT] Unlock the functional jobs
* Add documentation for octavia-ovn-db-sync-util
* Respect passed arguments for Neutron client connection
* Prepare to handle ha\_chassis\_group for LRP
* Fix tox coverage test result filename
* Fix set None to ovn\_lb in hm\_sync
* Fix OVN DB sync when syncing an OVN LB from scratch
* Update master for stable/2025.1

8.0.0
-----

* Add sync floating IP support
* Validate ovn\_nb/sb\_connection in config parser
* Drop unused environment
* Add Health monitor sync logic
* Add Member sync logic
* Add Pool sync logic
* Add Listener sync logic
* Ignore reno artefacts (RELEASENOTES.rst and reno.cache)
* [eventlet-removal] Remove "logger" mechanism from ML2/OVN CI jobs
* Add LB sync logic
* Update default envlist
* Remove join on helper request daemon thread
* Add Tobiko to gate jobs
* Bump hacking
* Add octavia\_client with openstacksdk
* Adding Tobiko Test To CI
* Add Octavia OVN DBs sync cmd
* reno: Update master for unmaintained/2023.1
* Remove Python 3.8 support
* Fix pep8 with pylint 3.3.0
* Update master for stable/2024.2

7.0.0
-----

* Fix member subnet id on a fully populated LB
* Error log for missing certs with NB and SB DBs
* Maintenance task: do not change IPv4 ip\_port\_mappings
* [OVN][CI] Update OVS\_BRANCH to be compatible with ovn main
* Return DELETED status when deleting a nonexistent member
* Don't create an OVSDB connection per API request
* tests: Remove obsolete TODO about a fd leak
* Fix new pylint errors
* Add pre-commit configuration
* Fix small flake8 issues pointed out by the pre-commit script
* Remove leftover OVN LB HM port upon deletion of a member
* reno: Update master for unmaintained/zed
* FIX OVN LB Health Monitor checks for IPv6 members
* Adding isolation to functional tests
* Update master for stable/2024.1

6.0.0
-----

* Fix check for a CR-LRP as a gateway port
* Retry on case of sqlite3.InterfaceError on FT
* reno: Update master for unmaintained/xena
* reno: Update master for unmaintained/wallaby
* reno: Update master for unmaintained/victoria
* tox: Drop envdir
* [OVN][CI] Update OVS\_BRANCH to be compatible with ovn main
* tests: call correct assert\_\* methods
* reno: Update master for unmaintained/yoga
* Fix pattern to exclude generated config file
* Allow LB members to mix IPv4 and IPv6 for the multivip LB
* Remove unnecessary ceilometer service overrides
* Allow multiple VIPs per LB
* Add maintenance task to update entities on component start
* Change device\_owner used for OVN LB HM port
* Check multiple address of a LRP plugged to LS
* Update master for stable/2023.2

5.0.0.0rc1
----------

* Cover the use case of a member non existing
* Bump Neutron and neutron-lib versions
* [CI] Bump OVS\_BRANCH in ovs/ovn source deploy jobs
* Add FIP on LogicalSwitchPortUpdate event
* Fix port for Load Balancer Health Check for FIP
* Update pool upon HM deletion request
* Add support for SOURCE\_IP session persistence
* Ensure DVR is restablished on member on cascade deletion
* Apply admin\_state\_up on a new member creation
* Discard batch-update-members not valid request
* Add retry on case of sqlite3.InterfaceError on FT
* Fix update member action
* Replace python-neutronclient with openstacksdk
* Update doc about ovn-octavia HM type limitation
* Pin OVS\_BRANCH to working commit
* Use ovsdbapp commands to add/del backends to ip\_port\_mappings
* Fix broken pep8 jobs due to bandit 1.7.5 updated version
* Update master for stable/2023.1
* Add new FTs for health monitoring basic operations
* Remove HM uuiid from LB external\_ids when the HM's pool is deleted

4.0.0.0rc1
----------

* Reset member provisioning status to NO\_MONITOR when a HM is deleted
* Ensure HM also apply to FIPs associated to LB VIPs
* Avoid use of ovn metadata port IP for HM checks
* Remove LB from LS belonging to provider networks
* Fix jobs after tox4 upgrade
* Uncouple HM status of member statuses
* Fix listener provisioning\_status after HM created/deleted
* Pin OVS\_BRANCH to master again
* Make clear distinction between health check and health monitor
* Ensure HM updates work as expected
* Add support for HM on a fullypopulated load balancers
* Increase code coverage
* Ensure OVN-LB is properly configured upon LS removal from LR
* Optimization for find\_ls\_for\_lr
* Ensure LB are removed from LS not connected to the LB LR
* Remove duplicated constant entry
* [OVN] Pin OVS version for OVN master
* Ensure lbs are properly configured for router gateway set/unset
* Avoid LB ERROR status on delete when LS/LR are already deleted
* Switch to 2023.1 Python3 unit tests and generic template name
* Update master for stable/zed

3.0.0
-----

* Capture port deleted event associated to HM ServiceMonitor
* Update documentation about ovn-octavia limitations
* Fix create\_vip\_port prototype based on octavia-lib
* [OVN] Pin OVS version for OVN master
* Fix healthMonitor events affecting to unrelated LB
* Ensure members without subnet belong to VIP subnet or fail
* Fix IPv6 member delete on batch operation
* Drop lower-constraints.txt and its testing
* Update python testing as per zed cycle teting runtime
* Apply ServiceMonitorEvent to affected LBs
* Fix way of calculate LB status after HM event
* Fix Load balancer remains on PENDING\_CREATE
* Fix request to OVN NB DB API
* Delete vip port if create\_vip\_port raise exception
* [OVN] Fix DuplicateOptionError on test scope
* Use python3-devel in bindep for rpm distros
* Increase code coverage
* [OVN] Pin OVS version for OVN v21.06.0
* Avoid loadbalancer stuck in PENDING\_X if delete\_vip\_port fails
* Remove incorrect character in f-string
* Fix zuul templates for functional and tempest tests
* Fix deletion of members without subnet\_id
* Retry logical switch associations to load balancers
* Add SB connection to in devstack
* Add Python3 zed unit tests
* Update master for stable/yoga
* Add SB ssl connection to in devstack

2.0.0
-----

* Update python testing classifier
* Allow to create ovn loadbalancer on dual-stack provider networks
* Add support for fullypopulated load balancers
* [FT] Enable OVS and OVN compilation from source
* Set listeners back to ACTIVE upon pool/member action failures
* remove unicode from code
* Check gateway IP while looking for LR plugged to LS
* Fix functional tests job
* Support creating members without a subnet ID
* Add Python3 yoga unit tests
* Update master for stable/xena
* Fix lower-constanints and pep8 jobs

1.1.1
-----

* Update docs based on support added recently

1.1.0
-----

* Add Health Monitor support
* Fix race condition retrieving logical router rows
* docs: Update Freenode to OFTC
* Disable some high failure rate tempest tests
* Fix new pylint issues
* Add a Kuryr Kubernetes co-gating job
* Fix functional jobs due to OVS file removal
* Ensure that load balancer is added to logical switch
* Change minversion of tox to 3.18.0
* Add log for request\_handler events
* setup.cfg: Replace dashes with underscores
* Fix python 3.9 unit test failures
* Add Python3 xena unit tests
* Update master for stable/wallaby
* Improve enabled\_provider\_drivers default in devstack

1.0.0
-----

* Start running the tempest API tests
* Switch to new rolevar for run-temepst role
* Add SCTP support
* Remove devstack-gate reference
* Update sample local.conf to mention OVN\_BRANCH
* Check if no members in pool better in batch update
* Don't try to store protocol=None in OVSDB
* Update to pylint 2.6.0+
* Collect OVN logs
* Enable the IPv6 tempest tests
* Correctly set member operating status
* Change to build OVN from source
* Delay string interpolations at logging calls
* Remove work around change for test\_port\_forwarding
* Fix gate failure
* Return UnsupportedOptionError() on loadbalancer failover
* Use get\_ovn\_ovsdb\_retry\_max\_interval()
* Retry status updates to Octavia
* Fix leaked file descriptors by cleaning up objects
* Change devstack script to correctly configure driver
* Include python36-devel in bindep
* Add master and release tempest jobs
* Fix and enable test\_port\_forwarding
* Switch from unittest2 compat methods to Python 3.x methods
* Add Python3 wallaby unit tests
* Fix the check for allowed\_cidrs in listeners
* Update master for stable/victoria
* Mark test\_port\_forwarding unstable to fix gate

0.3.0
-----

* test\_integration.py: remove neutron dependency
* Add integration tests with port forwarding
* Set OPERATING\_STATUS to ONLINE when pool created with listener
* Switch to TOX\_CONSTRAINTS\_FILE
* Fix broken gate
* Omit tests directory while couting the coverage report
* Set the CONF.load\_balancer.enabled\_provider\_drivers tempest conf
* Fix member\_batch\_update function to follow api v2
* Add installation of octavia-tempest-plugin to sample local.conf
* Update ROUND\_ROBIN to SOURCE\_IP\_PORT in docs
* Fix pep8 and functional jobs

0.2.0
-----

* drop mock from lower-constraints
* Add a hacking check for importing mock library
* Remove unnecessary libraries from lower-constraints
* Remove python modules related to coding style checks
* Switch to newer openstackdocstheme and reno versions
* Do not send status update in case of IpAddressAlreadyAllocated
* Fix the Backend class for ovsbapp index changes
* Add support for OVN LB selection fields
* Fix hacking min version to 3.0.1
* Re-home functional tests
* Re-home ovsdb event classes
* Re-home unit tests
* Re-home OvnProviderHelper class
* Fix E741 pep8 errors
* Re-home get\_neutron\_client() into common/clients.py
* Re-home constants to common/constants.py
* Re-home OvnNbIdlForLb class
* Use more octavia-lib constants
* Re-home MockedLB to tests.unit.fakes
* Re-home exceptions to common/exceptions.py
* Add release note README file
* Bump default tox env from py37 to py38
* Add py38 package metadata
* Spawn long-running processes in the driver agent
* Update requirements and constraints
* Make ovn-octavia-provider-v2-dsvm-scenario voting
* Add Python3 victoria unit tests
* Update master for stable/ussuri
* Update the devstack local.conf sample file
* Improve test coverage
* Remove the dependency on the "mock" package
* Fix incorrect os-testr test requirement
* Update hacking for Python3

0.1.0
-----

* Add missing requirements
* Stop using Octavia network driver
* Respect SSL devstack configuration
* Remove backwards-compatibility check
* Add unit tests for hacking/checks.py
* Add tempest gate, devstack plugin and sample devstack config
* Add configuration page to docs
* Use queue library directly
* Do not try to refresh vips on OVN LB that will be deleted
* Enable cover job
* Add admin and contributor documentation
* Wrap IPv6 address with brackets
* Fix Exception string arguments
* Centralize traffic when LB and member has FIP
* Don't fail if VIP already exist or has been deleted before
* Ensure setup.cfg packages matches root directory
* Don't send malformed status update to Octavia
* Fix py2 vs py3 dict keys comparison in functional test
* Cache OvnProviderHelper object in OvnProviderDriver
* Don't fail in case subnet or Logical Switch not found
* Add support for multiple L4 protocols withing same LB
* Import OVN LB functional tests
* Move OVN Octavia Provider driver code to this repository
* Set basepython in tox.ini to python3
* Initialize repository
* Added .gitreview
