It is done by disabling the eventlet patching and configuring oslo.service backend to threading. Once oslo.service backend is configured, it can't be reverted to eventlet. This needs to be done before including other modules, which may include oslo.service library. Adds a job that run a subset of tests with eventlet patching disabled. Change-Id: I9f8c2c5bbcf3192313cc3b309e8f2719a3bea18f Signed-off-by: Douglas Viroel <viroel@gmail.com>
320 lines
10 KiB
YAML
320 lines
10 KiB
YAML
- job:
|
|
name: watcher-tempest-actuator
|
|
parent: watcher-tempest-multinode
|
|
vars:
|
|
tempest_test_regex: watcher_tempest_plugin.tests.scenario.test_execute_actuator
|
|
|
|
- job:
|
|
name: watcher-tempest-strategies
|
|
parent: watcher-tempest-multinode
|
|
vars:
|
|
tempest_concurrency: 1
|
|
# All tests inside watcher_tempest_plugin.tests.scenario with tag "strategy"
|
|
# or test_execute_strategies file
|
|
# excluding tests with tag "real_load"
|
|
tempest_test_regex: (^watcher_tempest_plugin.tests.scenario)(.*\[.*\bstrategy\b.*\].*)|(^watcher_tempest_plugin.tests.scenario.test_execute_strategies)
|
|
tempest_exclude_regex: .*\[.*\breal_load\b.*\].*
|
|
|
|
- job:
|
|
name: watcher-tempest-multinode
|
|
parent: watcher-tempest-functional
|
|
nodeset: openstack-two-node-noble
|
|
roles:
|
|
- zuul: openstack/tempest
|
|
group-vars:
|
|
subnode:
|
|
devstack_local_conf:
|
|
post-config:
|
|
$WATCHER_CONF:
|
|
watcher_cluster_data_model_collectors.compute:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.baremetal:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.storage:
|
|
period: 120
|
|
devstack_services:
|
|
watcher-api: false
|
|
watcher-decision-engine: true
|
|
watcher-applier: false
|
|
c-bak: false
|
|
ceilometer: false
|
|
ceilometer-acompute: false
|
|
ceilometer-acentral: false
|
|
ceilometer-anotification: false
|
|
watcher: false
|
|
gnocchi-api: false
|
|
gnocchi-metricd: false
|
|
rabbit: false
|
|
mysql: false
|
|
vars:
|
|
devstack_local_conf:
|
|
post-config:
|
|
$WATCHER_CONF:
|
|
watcher_cluster_data_model_collectors.compute:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.baremetal:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.storage:
|
|
period: 120
|
|
test-config:
|
|
$TEMPEST_CONFIG:
|
|
compute:
|
|
min_compute_nodes: 2
|
|
min_microversion: 2.56
|
|
compute-feature-enabled:
|
|
live_migration: true
|
|
block_migration_for_live_migration: true
|
|
placement:
|
|
min_microversion: 1.29
|
|
devstack_plugins:
|
|
ceilometer: https://opendev.org/openstack/ceilometer
|
|
|
|
- job:
|
|
name: watcher-tempest-functional
|
|
parent: devstack-tempest
|
|
timeout: 7200
|
|
required-projects: &base_required_projects
|
|
- openstack/ceilometer
|
|
- openstack/python-openstackclient
|
|
- openstack/python-watcherclient
|
|
- openstack/watcher
|
|
- openstack/watcher-tempest-plugin
|
|
- openstack/tempest
|
|
vars: &base_vars
|
|
devstack_plugins:
|
|
watcher: https://opendev.org/openstack/watcher
|
|
devstack_services:
|
|
watcher-api: true
|
|
watcher-decision-engine: true
|
|
watcher-applier: true
|
|
tempest: true
|
|
s-account: false
|
|
s-container: false
|
|
s-object: false
|
|
s-proxy: false
|
|
tempest_plugins:
|
|
- watcher-tempest-plugin
|
|
tempest_test_regex: watcher_tempest_plugin.tests.api
|
|
tox_envlist: all
|
|
zuul_copy_output:
|
|
/etc/hosts: logs
|
|
|
|
|
|
- job:
|
|
name: watcher-tempest-functional-ipv6-only
|
|
parent: devstack-tempest-ipv6
|
|
description: |
|
|
Watcher devstack tempest tests job for IPv6-only deployment
|
|
required-projects: *base_required_projects
|
|
vars: *base_vars
|
|
|
|
- job:
|
|
name: watcher-grenade
|
|
parent: grenade
|
|
required-projects:
|
|
- openstack/watcher
|
|
- openstack/python-watcherclient
|
|
- openstack/watcher-tempest-plugin
|
|
vars: *base_vars
|
|
irrelevant-files: &irrelevent_files
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^api-ref/.*$
|
|
- ^doc/.*$
|
|
- ^watcher/hacking/.*$
|
|
- ^watcher/tests/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tools/.*$
|
|
- ^tox.ini$
|
|
|
|
- job:
|
|
name: watcher-sg-core-tempest-base
|
|
parent: devstack-tempest
|
|
nodeset: openstack-two-node-noble
|
|
description: |
|
|
This job is for testing watcher and sg-core/prometheus installation
|
|
abstract: true
|
|
pre-run:
|
|
- playbooks/generate_prometheus_config.yml
|
|
irrelevant-files: *irrelevent_files
|
|
timeout: 7800
|
|
required-projects: &base_sg_required_projects
|
|
- openstack/aodh
|
|
- openstack/ceilometer
|
|
- openstack/tempest
|
|
- openstack-k8s-operators/sg-core
|
|
- openstack/watcher
|
|
- openstack/python-watcherclient
|
|
- openstack/watcher-tempest-plugin
|
|
- openstack/devstack-plugin-prometheus
|
|
vars:
|
|
configure_swap_size: 8192
|
|
devstack_plugins:
|
|
ceilometer: https://opendev.org/openstack/ceilometer
|
|
aodh: https://opendev.org/openstack/aodh
|
|
sg-core: https://github.com/openstack-k8s-operators/sg-core
|
|
watcher: https://opendev.org/openstack/watcher
|
|
devstack-plugin-prometheus: https://opendev.org/openstack/devstack-plugin-prometheus
|
|
devstack_services:
|
|
watcher-api: true
|
|
watcher-decision-engine: true
|
|
watcher-applier: true
|
|
tempest: true
|
|
# We do not need Swift in this job so disable it for speed
|
|
# Swift services
|
|
s-account: false
|
|
s-container: false
|
|
s-object: false
|
|
s-proxy: false
|
|
# Prometheus related service
|
|
prometheus: true
|
|
node_exporter: true
|
|
devstack_localrc:
|
|
CEILOMETER_BACKENDS: "sg-core"
|
|
CEILOMETER_PIPELINE_INTERVAL: 15
|
|
CEILOMETER_ALARM_THRESHOLD: 6000000000
|
|
# avoid collecting real host cpu metrics since tests
|
|
# will inject fake metrics when needed
|
|
NODE_EXPORTER_COLLECTOR_EXCLUDE: "cpu"
|
|
PROMETHEUS_CONFIG_FILE: "/home/zuul/prometheus.yml"
|
|
devstack_local_conf:
|
|
post-config:
|
|
$WATCHER_CONF:
|
|
watcher_datasources:
|
|
datasources: prometheus
|
|
prometheus_client:
|
|
host: 127.0.0.1
|
|
port: 9090
|
|
watcher_cluster_data_model_collectors.compute:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.baremetal:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.storage:
|
|
period: 120
|
|
test-config:
|
|
$TEMPEST_CONFIG:
|
|
compute:
|
|
min_compute_nodes: 2
|
|
min_microversion: 2.56
|
|
compute-feature-enabled:
|
|
live_migration: true
|
|
block_migration_for_live_migration: true
|
|
placement:
|
|
min_microversion: 1.29
|
|
service_available:
|
|
sg_core: True
|
|
telemetry_services:
|
|
metric_backends: prometheus
|
|
telemetry:
|
|
disable_ssl_certificate_validation: True
|
|
ceilometer_polling_interval: 15
|
|
optimize:
|
|
datasource: prometheus
|
|
tempest_plugins:
|
|
- watcher-tempest-plugin
|
|
# All tests inside watcher_tempest_plugin.tests.scenario with tag "strategy"
|
|
# or test_execute_strategies file
|
|
# excluding tests with tag "real_load"
|
|
tempest_test_regex: (watcher_tempest_plugin.tests.scenario)(.*\[.*\bstrategy\b.*\].*)|(watcher_tempest_plugin.tests.scenario.test_execute_strategies)
|
|
tempest_exclude_regex: .*\[.*\breal_load\b.*\].*
|
|
tempest_concurrency: 1
|
|
tox_envlist: all
|
|
zuul_copy_output:
|
|
/etc/prometheus/prometheus.yml: logs
|
|
group-vars:
|
|
subnode:
|
|
devstack_plugins:
|
|
ceilometer: https://opendev.org/openstack/ceilometer
|
|
devstack-plugin-prometheus: https://opendev.org/openstack/devstack-plugin-prometheus
|
|
devstack_services:
|
|
ceilometer-acompute: true
|
|
sg-core: false
|
|
prometheus: false
|
|
node_exporter: true
|
|
devstack_localrc:
|
|
CEILOMETER_BACKEND: "none"
|
|
CEILOMETER_BACKENDS: "none"
|
|
# avoid collecting real host cpu metric since tests
|
|
# will inject fake metrics when needed
|
|
NODE_EXPORTER_COLLECTOR_EXCLUDE: "cpu"
|
|
devstack_local_conf:
|
|
post-config:
|
|
$WATCHER_CONF:
|
|
watcher_cluster_data_model_collectors.compute:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.baremetal:
|
|
period: 120
|
|
watcher_cluster_data_model_collectors.storage:
|
|
period: 120
|
|
|
|
- job:
|
|
name: watcher-prometheus-integration
|
|
parent: watcher-sg-core-tempest-base
|
|
|
|
- job:
|
|
name: watcher-prometheus-integration-realdata
|
|
parent: watcher-sg-core-tempest-base
|
|
vars:
|
|
devstack_localrc:
|
|
NODE_EXPORTER_COLLECTOR_EXCLUDE: ""
|
|
devstack_local_conf:
|
|
test-config:
|
|
$TEMPEST_CONFIG:
|
|
optimize:
|
|
datasource: ""
|
|
# All tests inside watcher_tempest_plugin.tests.scenario with tag "real_load"
|
|
tempest_test_regex: (^watcher_tempest_plugin.tests.scenario)(.*\[.*\breal_load\b.*\].*)
|
|
tempest_exclude_regex: ""
|
|
group-vars:
|
|
subnode:
|
|
devstack_localrc:
|
|
NODE_EXPORTER_COLLECTOR_EXCLUDE: ""
|
|
|
|
- job:
|
|
name: watcher-prometheus-integration-threading
|
|
parent: watcher-sg-core-tempest-base
|
|
vars:
|
|
devstack_localrc:
|
|
'SYSTEMD_ENV_VARS["watcher-decision-engine"]': OS_WATCHER_DISABLE_EVENTLET_PATCHING=true
|
|
|
|
- job:
|
|
name: openstack-tox-py312-threading
|
|
parent: openstack-tox-py312
|
|
description: |
|
|
Run tox with the py3-threading environment.
|
|
vars:
|
|
tox_envlist: py3-threading
|
|
|
|
- project:
|
|
queue: watcher
|
|
templates:
|
|
- check-requirements
|
|
- openstack-cover-jobs
|
|
- openstack-python3-jobs
|
|
- publish-openstack-docs-pti
|
|
- release-notes-jobs-python3
|
|
check:
|
|
jobs:
|
|
- openstack-tox-py312-threading
|
|
- watcher-tempest-functional
|
|
- watcher-grenade
|
|
- watcher-tempest-strategies
|
|
- watcher-tempest-actuator
|
|
- python-watcherclient-functional:
|
|
files:
|
|
- ^watcher/api/*
|
|
- watcher-tempest-functional-ipv6-only
|
|
- watcher-prometheus-integration
|
|
- watcher-prometheus-integration-threading
|
|
gate:
|
|
jobs:
|
|
- watcher-tempest-functional
|
|
- watcher-tempest-functional-ipv6-only
|
|
experimental:
|
|
jobs:
|
|
- watcher-prometheus-integration-realdata
|
|
periodic-weekly:
|
|
jobs:
|
|
- watcher-prometheus-integration-realdata
|