cloudkitty/.zuul.yaml
Matt Crees 7b1cd3aee0 Add OpenSearch as a v2 storage backend
To facilitate the switch from Elasticsearch to OpenSearch, the ES
backend has been duplicated and renamed where appropriate to OpenSearch.

The OpenSearch implementation was modified in places for compatibility
with OpenSearch 2.x, for example:

- remove mapping name from bulk API URL
- replace put_mapping by post_mapping

This will allow for the future removal of the Elasticsearch backend.

Change-Id: I88b0a30f66af13dad1bd75cde412d2880b4ead30
Co-Authored-By: Pierre Riteau <pierre@stackhpc.com>
(cherry picked from commit 964c6704a2)
2023-12-15 08:48:51 +00:00

155 lines
4.7 KiB
YAML

- job:
name: base-cloudkitty-tempest-job
parent: devstack-tempest
description: |
Job testing cloudkitty installation and running tempest tests
required-projects: &base_required_projects
- name: openstack/cloudkitty
- name: openstack/cloudkitty-tempest-plugin
- name: openstack/python-cloudkittyclient
roles: &base_roles
- zuul: openstack-infra/devstack
timeout: 5400
irrelevant-files: &base_irrelevant_files
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars: &base_vars
devstack_plugins:
cloudkitty: https://opendev.org/openstack/cloudkitty
cloudkitty-tempest-plugin: https://opendev.org/openstack/cloudkitty-tempest-plugin
devstack_services:
ck-api: true
ck-proc: true
horizon: false
tempest: true
tempest_concurrency: 1
tempest_test_regex: cloudkitty_tempest_plugin.*
tox_envlist: all
devstack_localrc:
CLOUDKITTY_FETCHER: keystone
USE_PYTHON3: True
TEMPEST_PLUGINS: /opt/stack/cloudkitty-tempest-plugin
- job:
name: base-cloudkitty-v1-api-tempest-job
parent: base-cloudkitty-tempest-job
description: |
Job running tempest tests on devstack with the v1 API only
and the v1 storage driver
vars:
tempest_test_regex: cloudkitty_tempest_plugin.tests.api.v1.*
- job:
name: base-cloudkitty-v2-api-tempest-job
parent: base-cloudkitty-tempest-job
description: |
Job running tempest tests on devstack with the v2 API
and a v2 storage driver
vars:
tempest_test_regex: cloudkitty_tempest_plugin.*
- job:
name: cloudkitty-tempest-full-ipv6-only
parent: devstack-tempest-ipv6
description: |
Job testing cloudkitty installation on devstack on IPv6
and running tempest tests
required-projects: *base_required_projects
roles: *base_roles
timeout: 5400
irrelevant-files: *base_irrelevant_files
vars: *base_vars
- job:
name: cloudkitty-tempest-full-v1-storage-sqlalchemy
parent: base-cloudkitty-v1-api-tempest-job
description: |
Job testing cloudkitty installation on devstack with python 3 and the
SQLAlchemy v1 storage driver and running tempest tests
vars:
devstack_localrc:
CLOUDKITTY_STORAGE_BACKEND: sqlalchemy
CLOUDKITTY_STORAGE_VERSION: 1
- job:
name: cloudkitty-tempest-full-v2-storage-influxdb
parent: base-cloudkitty-v2-api-tempest-job
description: |
Job testing cloudkitty installation on devstack with python 3 and the
InfluxDB v2 storage driver and running tempest tests
vars:
devstack_localrc:
CLOUDKITTY_STORAGE_BACKEND: influxdb
CLOUDKITTY_STORAGE_VERSION: 2
- job:
name: cloudkitty-tempest-full-v2-storage-elasticsearch
parent: base-cloudkitty-v2-api-tempest-job
description: |
Job testing cloudkitty installation on devstack with python 3 and the
Elasticsearch v2 storage driver and running tempest tests
vars:
devstack_localrc:
CLOUDKITTY_STORAGE_BACKEND: elasticsearch
CLOUDKITTY_STORAGE_VERSION: 2
- job:
name: cloudkitty-tempest-full-v2-storage-opensearch
parent: base-cloudkitty-v2-api-tempest-job
description: |
Job testing cloudkitty installation on devstack with python 3 and the
OpenSearch v2 storage driver and running tempest tests
vars:
devstack_localrc:
CLOUDKITTY_STORAGE_BACKEND: opensearch
CLOUDKITTY_STORAGE_VERSION: 2
- job:
name: cloudkitty-tox-bandit
parent: openstack-tox
timeout: 2400
vars:
tox_envlist: bandit
required-projects:
- openstack/requirements
irrelevant-files:
- ^.*\.rst$
- ^.*\.txt$
- ^api-ref/.*$
- ^apidocs/.*$
- ^contrib/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^tools/.*$
- ^cloudkitty/hacking/.*$
- ^cloudkitty/tests/scenario/.*$
- ^cloudkitty/tests/unittests/.*$
- project:
queue: cloudkitty
templates:
- check-requirements
- openstack-cover-jobs
- openstack-python3-jobs
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
jobs:
- cloudkitty-tempest-full-v2-storage-influxdb
- cloudkitty-tempest-full-v2-storage-elasticsearch:
voting: false
- cloudkitty-tempest-full-v2-storage-opensearch:
voting: false
- cloudkitty-tempest-full-v1-storage-sqlalchemy
- cloudkitty-tempest-full-ipv6-only
- cloudkitty-tox-bandit:
voting: false
gate:
jobs:
- cloudkitty-tempest-full-v2-storage-influxdb
- cloudkitty-tempest-full-v1-storage-sqlalchemy
- cloudkitty-tempest-full-ipv6-only