Introduce TaskFlowServiceController which uses taskflow
jobboard feature and saves jobs info into persistence backend.
Jobboard could be operated via RedisTaskFlowDriver or
ZookeeperTaskFlowDriver, that could be set via the config.
RedisTaskFlowDriver is intoduced as default backend for jobboard.
Usage of jobboard allows to resume jobs in case of restart/stop
of Octavia controller services.
Persistence backend saves state of flow tasks that required in
case of resuming job. SQLAlchemy backend is used here.
Bump taskflow version to 3.7.1 and add dependency to
SQLAlchemy-Utils (required for taskflow sqlalchemy
backend support).
Story: 2005072
Task: 30806
Task: 30816
Task: 30817
Change-Id: I92ee4e879e98e4718d2e9aba56486341223a9157
This patch adds a periodic job to build the amphora image using the
released version of diskimage-builder (our other jobs use Git master).
This job will not publish the produced image, it is only to test the
build.
Change-Id: I611d9cd5a519abc6a330ec2c46a2f5a1fdb89313
The diskimage-create.sh tool will now default to CentOS 8 when building
CentOS-based amphora images.
This patch also removes leftover references to support for Ubuntu Trusty
and Xenial.
Change-Id: I3aba59c8dd86aeeee28cc6a67af93697912fb55b
OpenStack is dropping support for xenial[1].
This patch removes references to support for xenial amphora images
and stops the nightly build of xenial amphora test images.
[1] https://review.opendev.org/#/c/695114/
Change-Id: I1bc0a37f35839a5f9a95650af7c82239f6544c50
The job broke around mid June and has not been fixed since that time.
Plus, Fedora 28 is no longer supported by the Fedora project and is not
tested by any of our dsvm scenario jobs. It is time to delete the job
from the periodic queue.
The community is more than welcome to help restore Fedora-based amphora
image builds. One might be interested in picking help change
https://review.opendev.org/#/c/673173/ where the build was successful
but was did not pass the dsvm scenario job.
Change-Id: Ic07629adb9419c74d5ed957a0640fb1dc8253521
The 'rpm', 'yumdownloader' and 'bc' tools do not come installed in the
Ubuntu nodepool image. We need 'rpm' and 'yumdownloader' to build
centos-minimal amphora images and 'bc' for checking minimum supported
Ubuntu version in diskimage-create.sh
This patch also adds octavia-lib to the required projects.
Change-Id: Iaa0f763005529cc394d3b95ce07f2be71e9b3778
This patch adds tox "tips" jobs to Octavia which checkout the master
branch of the dependent libraries (octavia-lib in the initial case).
Currently this runs the py37 unit tests and the py37 functional jobs.
Change-Id: Idc5dce9ed609e5bd268588f112637cab151c93bf
Configure rsyslog to forward logs to a target host
Co-Authored-By: Michael Johnson <johnsomor@gmail.com>
Story: 1665069
Task: 33646
Change-Id: I00703f86555cbb574b943794b14a36fbc644f1b2
This patch creates an Amphora v2 provider driver as well as a
V2 controller worker.
This is in preparation for having the amphora driver use the new
provider driver data models and rely less on native Octavia database
access.
It is also a prepartion step for enabling TaskFlow JobBoard as
this work will move to storing dictionaries in the flows instead
of database models.
Change-Id: Ia65539a8c39560e2276750d8e79a637be4c0f265
Story: 2005072
Task: 30806
Includes some updates to docs and configs and related files to remove
references to neutron-lbaas. Also remove handlers.
Change-Id: I3082962841d3b645f3cbd1a6b41fc7fb28dcf7e6
This is the base patch that updates octavia to use the new octavia-lib.
It is backwards compatible by using debtcollector moves.
It adds a new controller process called the "driver-agent".
This patch also adds unit test coverage for a few additional modules.
Depends-On: https://review.openstack.org/#/c/641180/
Change-Id: I438e1548ec0fb6111d1ab85b05015007d9d0a006
This patch makes the following changes in preparation for the new
multi-node gates:
1. Resolves some issues in the devstack plugin in multi-node mode.
2. Removes the legacy non-voting multi-node gates and playbooks.
3. Removes the lxd legacy playbook as the jobs were removed in a previous
patch.
Change-Id: I3fb303a67cc66ec44a4ef4d09a16ed6470cbbaff
Update the diskimage-create.sh to have a "-l" option to pass into
dib's "--logfile" option. In the devstack job, use this to redirect
the dib output to a separate logfile. Turn on verbose logging by
default for this log.
Copy this in the v1 jobs. v2 jobs are covered by a similar change in
octavia-tempest-plugin: I5bc0d9a3b071733cbe31d618f7236a3c2285b3e5
Depends-On: https://review.openstack.org/612865
Change-Id: Ie639af4266152d4626f8312b1849deeba5048348
This is a follow up of I8dc005cf023a5562466f4ac9ce862ee9fc9a9c2a,
which added periodic job for ubuntu and centos but not fedora which is
supported by our disk image builder.
Change-Id: I1c4b472b5506a64e4ecab69365a8e262aa01f66d
In Rocky, octavia-tempest-plugin (v2) got a significant bump in test coverage
surprassing existing tempest tests in Octavia repo (v1). The direction
we are pursuing is to move to v2 only anyway and drop v1 altogether once
neutron-lbaas is dropped. Hence, we should also gate on octavia v2 jobs.
This patch also proposes gating on octavia-v2-dsvm-scenario-centos-7 job
and octavia-v2-dsvm-scenario-ubuntu-bionic as check job.
In addition, this patch cleans up remaining leftovers when transitioned
to Zuul v3, as well removes jobs octavia-v1-dsvm-scenario-multinode and
octavia-v1-dsvm-py3x-scenario-multinode from gate list and nuke
octavia-v1-dsvm-scenario-lxd.
Depends-On: https://review.openstack.org/#/c/600118
Change-Id: I7d2d8223e0b876257dd6a639fc92cbb11f0d6338
The job definition of octavia-v2-dsvm-scenario-ubuntu.bionic has to be
moved over to octavia-tempest-plugin. Follow-up change
I7d2d8223e0b876257dd6a639fc92cbb11f0d6338 will re-define it and change
Iafd31337fed62affc4125e0e1eea0179db5f776d will re-enable the job
execution.
Change-Id: Iaecb484b7eee6e24e85df38a73d4f1f522e2204c
Zuul v3 does not yet offer native grenade base jobs. Workaround it by
creating a legacy grenade-devstack-octavia playbook.
Change-Id: Ib81557ee75ff2ea365ca8403dcfe6e6724657f75
Previously we were using the "ubuntu" diskimage-builder base element as the
default base OS to build the amphora image.
The "ubuntu" element is based on the ubuntu cloud image. This image includes
packages we do not need for the amphora image. At this point it's not clear
that Ubuntu will ship an 18.04 LTS cloud image in the format the "ubuntu"
element requires.
This patch switches the default Ubuntu amphora image to build with the
"ubuntu-minimal" diskimage-builder element.
This patch also moves the amphora agent into a virtual environment inside
the amphora.
It also sets up support for Ubuntu 18.04 (bionic beaver) and HAProxy 1.8.
Change-Id: I84a85ca1363bce2e0f13da64540ec7ba3575e818
Currently we run scenario and functional jobs for changes that only contain
documentation updates. This patch fixes this issue so that only relevant jobs
are run.
This patch also removes an exception for legacy ^tempest paths that
Octavia does not have.
Change-Id: I58a21808ee3db67ee20e49caf2a966ff0f373f48
There's no need to have custom functional jobs, we have them already in
openstack-zuul-jobs. Remove the local definitions and use common one
instead.
Change-Id: I5ecb535612b8cdff5bcbba057caebf241a3b649e
Zuul now supports including the file extension on the playbook path
and omitting the extension is now deprecrated. Update references
to include the extension.
Change-Id: I9335e07095ec7d2821441f70ce2a73d626bc2291
This patch cleans up the zuul v3 config for the EOL of newton and
migrates the functional tests to use openstack-tox parent.
Change-Id: Id4a97e81d8664fd789776f1fa729d7b969ae0ffc