Native Zuul v3
Change-Id: I938cb7d5f820a761fc65ac82d137f83a2188faed
This commit is contained in:
parent
375af0391e
commit
d79c372076
237
.zuul.yaml
237
.zuul.yaml
@ -5,64 +5,229 @@
|
||||
- publish-openstack-docs-pti
|
||||
check:
|
||||
jobs:
|
||||
- vitrage-dsvm-api-py3
|
||||
- vitrage-dsvm-datasources-py3
|
||||
- vitrage-dsvm-api-py3-ussuri
|
||||
- vitrage-dsvm-datasources-py3-ussuri
|
||||
- vitrage-dsvm-api-py3-train
|
||||
- vitrage-dsvm-datasources-py3-train
|
||||
- vitrage-dsvm-api-py3-stein
|
||||
- vitrage-dsvm-datasources-py3-stein
|
||||
- vitrage-tempest-plugin-api
|
||||
- vitrage-tempest-plugin-datasources
|
||||
- vitrage-tempest-plugin-datasources-ussuri
|
||||
- vitrage-tempest-plugin-api-ussuri
|
||||
- vitrage-tempest-plugin-datasources-train
|
||||
- vitrage-tempest-plugin-api-train
|
||||
- vitrage-tempest-plugin-datasources-stein
|
||||
- vitrage-tempest-plugin-api-stein
|
||||
gate:
|
||||
queue: vitrage
|
||||
jobs:
|
||||
- vitrage-dsvm-api-py3
|
||||
- vitrage-dsvm-datasources-py3
|
||||
- vitrage-tempest-plugin-api
|
||||
- vitrage-tempest-plugin-datasources
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-api-py3-ussuri
|
||||
parent: vitrage-dsvm-api-py3
|
||||
name: vitrage-tempest-plugin-base
|
||||
parent: devstack-tempest
|
||||
pre-run: playbooks/pre.yaml
|
||||
timeout: 7800
|
||||
required-projects: &base_required_projects
|
||||
- opendev.org/openstack/aodh
|
||||
- opendev.org/openstack/mistral
|
||||
- opendev.org/openstack/python-vitrageclient
|
||||
- opendev.org/openstack/vitrage
|
||||
- opendev.org/openstack/vitrage-tempest-plugin
|
||||
- opendev.org/openstack/ceilometer
|
||||
- opendev.org/openstack/heat
|
||||
irrelevant-files: &base_irrelevant_files
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^releasenotes/.*$
|
||||
vars: &base_vars
|
||||
devstack_local_conf:
|
||||
post-config:
|
||||
$NOVA_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
notifications:
|
||||
versioned_notifications_topics: 'versioned_notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
$NEUTRON_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
$CINDER_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
$HEAT_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
policy_file: /etc/heat/policy.yaml
|
||||
$AODH_CONF:
|
||||
oslo_messaging_notifications:
|
||||
topics: 'notifications,vitrage_notifications'
|
||||
driver: messagingv2
|
||||
$VITRAGE_CONF:
|
||||
DEFAULT:
|
||||
notifiers: 'mistral,nova,webhook'
|
||||
datasources:
|
||||
snapshots_interval: 120
|
||||
test-config:
|
||||
$TEMPEST_CONFIG:
|
||||
service_available:
|
||||
vitrage: True
|
||||
root_cause_analysis_service:
|
||||
zabbix_alarms_per_host: 2
|
||||
instances_per_host: 2
|
||||
snapshots_interval: 120
|
||||
tox_envlist: all
|
||||
tempest_concurrency: 1
|
||||
tempest_test_regex: topology|test_rca|test_alarms|test_resources|test_template|test_webhook|test_service
|
||||
tempest_black_regex: tempest\.api
|
||||
tempest_plugins:
|
||||
- vitrage-tempest-plugin
|
||||
devstack_localrc:
|
||||
VITRAGE_USE_STATIC: 1
|
||||
VITRAGE_USE_DOCTOR: 1
|
||||
VITRAGE_USE_PROMETHEUS: 1
|
||||
devstack_services:
|
||||
s-account: false
|
||||
s-container: false
|
||||
s-object: false
|
||||
s-proxy: false
|
||||
tls-proxy: false
|
||||
devstack_plugins:
|
||||
heat: https://opendev.org/openstack/heat
|
||||
ceilometer: https://opendev.org/openstack/ceilometer
|
||||
aodh: https://opendev.org/openstack/aodh
|
||||
mistral: https://opendev.org/openstack/mistral
|
||||
vitrage: https://opendev.org/openstack/vitrage
|
||||
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-api
|
||||
parent: vitrage-tempest-plugin-base
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-api-ipv6-only
|
||||
parent: devstack-tempest-ipv6
|
||||
nodeset: openstack-single-node-bionic
|
||||
pre-run: playbooks/pre.yaml
|
||||
timeout: 7800
|
||||
required-projects: *base_required_projects
|
||||
irrelevant-files: *base_irrelevant_files
|
||||
vars: *base_vars
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-datasources
|
||||
parent: vitrage-tempest-plugin-base
|
||||
vars:
|
||||
tempest_test_regex: datasources|test_events|notifiers|e2e|database
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-mock
|
||||
parent: devstack-tempest
|
||||
timeout: 7800
|
||||
required-projects:
|
||||
- opendev.org/openstack/python-vitrageclient
|
||||
- opendev.org/openstack/vitrage
|
||||
- opendev.org/openstack/vitrage-tempest-plugin
|
||||
irrelevant-files: *base_irrelevant_files
|
||||
vars:
|
||||
devstack_local_conf:
|
||||
post-config:
|
||||
$NOVA_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
notifications:
|
||||
versioned_notifications_topics: 'versioned_notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
notification_format: both
|
||||
$CINDER_CONF:
|
||||
DEFAULT:
|
||||
notification_topics: 'notifications,vitrage_notifications'
|
||||
notification_driver: messagingv2
|
||||
$VITRAGE_CONF:
|
||||
DEFAULT:
|
||||
verbose: true
|
||||
debug: false
|
||||
notifiers: 'nova,webhook'
|
||||
rpc_response_timeout: 300
|
||||
datasources:
|
||||
types: 'doctor,mock_graph_datasource'
|
||||
path: 'vitrage.datasources,vitrage.tests.mocks'
|
||||
snapshots_interval: 60
|
||||
mock_graph_datasource:
|
||||
networks: 100
|
||||
zones_per_cluster: 4
|
||||
hosts_per_zone: 16
|
||||
zabbix_alarms_per_host: 8
|
||||
instances_per_host: 50
|
||||
ports_per_instance: 3
|
||||
volumes_per_instance: 2
|
||||
vitrage_alarms_per_instance: 0
|
||||
tripleo_controllers: 3
|
||||
zabbix_alarms_per_controller: 1
|
||||
test-config:
|
||||
$TEMPEST_CONFIG:
|
||||
service_available:
|
||||
vitrage: True
|
||||
root_cause_analysis_service:
|
||||
zabbix_alarms_per_host: 8
|
||||
instances_per_host: 50
|
||||
snapshots_interval: 60
|
||||
tox_envlist: all
|
||||
tempest_concurrency: 1
|
||||
tempest_test_regex: mock_datasource
|
||||
tempest_plugins:
|
||||
- vitrage-tempest-plugin
|
||||
devstack_services:
|
||||
s-account: false
|
||||
s-container: false
|
||||
s-object: false
|
||||
s-proxy: false
|
||||
tls-proxy: false
|
||||
devstack_plugins:
|
||||
vitrage: https://opendev.org/openstack/vitrage
|
||||
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-api-ussuri
|
||||
parent: vitrage-tempest-plugin-api
|
||||
override-checkout: stable/ussuri
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-api-py3-train
|
||||
parent: vitrage-dsvm-api-py3
|
||||
nodeset: openstack-single-node-bionic
|
||||
name: vitrage-tempest-plugin-datasources-ussuri
|
||||
parent: vitrage-tempest-plugin-datasources
|
||||
override-checkout: stable/ussuri
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-api-train
|
||||
parent: vitrage-tempest-plugin-api
|
||||
override-checkout: stable/train
|
||||
vars:
|
||||
devstack_localrc:
|
||||
USE_PYTHON3: True
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-api-py3-stein
|
||||
parent: vitrage-dsvm-api-py35
|
||||
nodeset: openstack-single-node-bionic
|
||||
override-checkout: stable/stein
|
||||
vars:
|
||||
devstack_localrc:
|
||||
USE_PYTHON3: True
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-datasources-py3-ussuri
|
||||
parent: vitrage-dsvm-datasources-py3
|
||||
nodeset: openstack-single-node-bionic
|
||||
override-checkout: stable/ussuri
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-datasources-py3-train
|
||||
parent: vitrage-dsvm-datasources-py3
|
||||
nodeset: openstack-single-node-bionic
|
||||
name: vitrage-tempest-plugin-datasources-train
|
||||
parent: vitrage-tempest-plugin-datasources
|
||||
override-checkout: stable/train
|
||||
vars:
|
||||
devstack_localrc:
|
||||
USE_PYTHON3: True
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-datasources-py3-stein
|
||||
parent: vitrage-dsvm-datasources-py35
|
||||
nodeset: openstack-single-node-bionic
|
||||
name: vitrage-tempest-plugin-api-stein
|
||||
parent: vitrage-tempest-plugin-api
|
||||
override-checkout: stable/stein
|
||||
vars:
|
||||
tempest_black_regex: tempest\.api|test_template
|
||||
devstack_localrc:
|
||||
USE_PYTHON3: True
|
||||
|
||||
- job:
|
||||
name: vitrage-tempest-plugin-datasources-stein
|
||||
parent: vitrage-tempest-plugin-datasources
|
||||
override-checkout: stable/stein
|
||||
vars:
|
||||
tempest_black_regex: tempest\.api|test_template
|
||||
devstack_localrc:
|
||||
USE_PYTHON3: True
|
||||
|
@ -1,60 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 2016 - Nokia
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
STACK_USER=${STACK_USER:stack}
|
||||
|
||||
source $BASE/new/devstack/functions
|
||||
sudo chown -R $USER:$STACK_USER $BASE/new/tempest
|
||||
|
||||
DEVSTACK_PATH="$BASE/new"
|
||||
TEMPEST_CONFIG=$BASE/new/tempest/etc/tempest.conf
|
||||
|
||||
iniset $TEMPEST_CONFIG service_available vitrage true
|
||||
|
||||
if [ "$1" = "mock" ]; then
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service zabbix_alarms_per_host 8
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service instances_per_host 50
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service snapshots_interval 60
|
||||
else
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service zabbix_alarms_per_host 2
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service instances_per_host 2
|
||||
iniset $TEMPEST_CONFIG root_cause_analysis_service snapshots_interval 120
|
||||
fi
|
||||
|
||||
|
||||
#Argument is received from Zuul
|
||||
if [[ "$1" = "api" ]]; then
|
||||
TESTS="topology|test_rca|test_alarms|test_resources|test_template|test_webhook|test_service"
|
||||
elif [[ "$1" = "datasources" ]]; then
|
||||
TESTS="datasources|test_events|notifiers|e2e|database"
|
||||
elif [[ "$1" = "mock" ]]; then
|
||||
TESTS="mock_datasource"
|
||||
else # used for internal testing shouldn't get here in gate
|
||||
TESTS="$1"
|
||||
fi
|
||||
|
||||
if [[ "$DEVSTACK_GATE_USE_PYTHON3" == "True" ]]; then
|
||||
export PYTHON=python3
|
||||
fi
|
||||
|
||||
sudo cp -rf $DEVSTACK_PATH/tempest/etc/logging.conf.sample $DEVSTACK_PATH/tempest/etc/logging.conf
|
||||
|
||||
cd $DEVSTACK_PATH/tempest/
|
||||
sudo -E stestr init
|
||||
|
||||
echo "Listing existing Tempest tests"
|
||||
sudo -E stestr list vitrage_tempest_plugin | grep -E "$TESTS" | sort | tee /tmp/vitrage_tempest_tests.list
|
||||
echo "Testing $1: $TESTS..."
|
||||
sudo -E stestr run --serial --subunit --load-list=/tmp/vitrage_tempest_tests.list | subunit-trace --fails --no-failure-debug
|
@ -1,22 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 2019 - Nokia
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
DEVSTACK_PATH="$BASE/new"
|
||||
|
||||
# Copy prometheus_conf.yaml to /etc/vitrage directory
|
||||
ETC_VITRAGE=/etc/vitrage/
|
||||
PROMETHES_CONF_PATH=vitrage-tempest-plugin/vitrage_tempest_plugin/tests/resources/prometheus/prometheus_conf.yaml
|
||||
sudo mkdir -p $ETC_VITRAGE && sudo cp $DEVSTACK_PATH/$PROMETHES_CONF_PATH $ETC_VITRAGE
|
||||
|
36
playbooks/pre.yaml
Normal file
36
playbooks/pre.yaml
Normal file
@ -0,0 +1,36 @@
|
||||
- hosts: tempest
|
||||
tasks:
|
||||
- name: Create /etc/vitrage and make it available to stack and tempest user
|
||||
file:
|
||||
path: /etc/vitrage
|
||||
state: directory
|
||||
mode: 0777
|
||||
owner: tempest
|
||||
group: stack
|
||||
become: yes
|
||||
- name: Create /etc/vitrage/static_datasources and make it available to stack and tempest user
|
||||
file:
|
||||
path: /etc/vitrage/static_datasources
|
||||
state: directory
|
||||
mode: 0777
|
||||
owner: tempest
|
||||
group: stack
|
||||
become: yes
|
||||
- name: Copy prometheus_conf to vitrage folder
|
||||
blockinfile:
|
||||
path: "/etc/vitrage/prometheus_conf.yaml"
|
||||
mode: 0644
|
||||
create: yes
|
||||
block: |
|
||||
alerts:
|
||||
- key:
|
||||
alertname: HighCpuOnVmAlert
|
||||
job: libvirt
|
||||
resource:
|
||||
instance_name: domain
|
||||
host_id: instance
|
||||
- key:
|
||||
alertname: HighInodeUsage
|
||||
job: node
|
||||
resource:
|
||||
id: instance
|
Loading…
Reference in New Issue
Block a user