57833dbdad
In case of DB outages when a flow is running, an exception is caught and the flow is reverted. In most of the flows, the revert function of the first task's (the last to be reverted) unlocks the load balancer by setting its provisioning status (to ERROR or ACTIVE, depending on the flow), but it fails if the DB is not reachable, leaving the LB in a PENDING_* state. This commit adds tenacity.retry to those functions, Octavia retries to set the status during ~2h45 (2000 attempts, 1 sec initial delay, 5 sec max delay). Note: stable/2023.1 and older, the patch also includes modifications for v1/tasks/lifecycle_tasks.py Conflicts: octavia/tests/unit/controller/worker/test_task_utils.py octavia/controller/worker/v1/tasks/lifecycle_tasks.py Closes-Bug: #2036952 Change-Id: I458dd6d6f5383edc24116ea0fa27e3a593044146 (cherry picked from commit |
||
---|---|---|
api-ref/source | ||
bin | ||
devstack | ||
diskimage-create | ||
doc | ||
elements | ||
etc | ||
httpd | ||
octavia | ||
playbooks | ||
releasenotes | ||
specs | ||
specs-tests | ||
tools | ||
zuul.d | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.pre-commit-config.yaml | ||
.pylintrc | ||
.stestr.conf | ||
bindep.txt | ||
CONSTITUTION.rst | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
TESTING.rst | ||
tox.ini |
Team and repository tags
Octavia
Octavia is an operator-grade open source scalable load balancer for use in large OpenStack deployments.
Octavia provides the load balancing API for OpenStack. It supports multiple "provider drivers" that implement load balancing, including the "amphora" reference driver included with Octavia.
Octavia is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
Developer documentation for the Octavia project is available at https://docs.openstack.org/octavia/latest/
Release notes for the Octavia project are available at https://docs.openstack.org/releasenotes/octavia/
The project source code repository is located at https://opendev.org/openstack/octavia
Project status, bugs, and requests for feature enhancements are tracked on https://storyboard.openstack.org/#!/project/openstack/octavia
For more information on project direction and guiding principles for contributors, please see the CONSTITUTION.rst file in this directory, or specifications in the specs/ sub-directory.
The project roadmap is available at https://wiki.openstack.org/wiki/Octavia/Roadmap
External Resources
- Octavia Wiki: https://wiki.openstack.org/wiki/Octavia
- For help on usage and hacking of Octavia, please send an email to OpenStack-dev Mailing List <mailto:openstack-discuss@lists.openstack.org> with [Octavia] tag.