Add a new tempest job with a mock datasource
In this tempest job, the mock datasource is used to create an entity graph with ~20,000 vertices. This job will contain tests for init procedure, processes, restarts, multiple api calls. Other data sources are disabled. Heat, Telemetry, Mistral are not installed. Depends-On: I9c4c329983bbe5930de5484fa6932b318746ed5c Depends-On: Ice708f4aaf6132e4e8a7ae6352112f8b563b95b8 Change-Id: I6fd5c70efa6f722461d36c1cd1aa94352e6e4596
This commit is contained in:
parent
5e37cca8a0
commit
b73d66e166
37
.zuul.yaml
37
.zuul.yaml
@ -3,10 +3,13 @@
|
||||
jobs:
|
||||
- vitrage-dsvm-api-py27
|
||||
- vitrage-dsvm-datasources-py27
|
||||
- vitrage-dsvm-mock-py27
|
||||
- vitrage-dsvm-api-py35:
|
||||
branches: ^(?!stable/(newton|ocata|pike)).*$
|
||||
- vitrage-dsvm-datasources-py35:
|
||||
branches: ^(?!stable/(newton|ocata|pike)).*$
|
||||
- vitrage-dsvm-mock-py35:
|
||||
branches: ^(?!stable/(newton|ocata|pike)).*$
|
||||
- openstack-tox-lower-constraints
|
||||
gate:
|
||||
jobs:
|
||||
@ -87,3 +90,37 @@
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^releasenotes/.*$
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-mock-py27
|
||||
parent: legacy-dsvm-base
|
||||
voting: false
|
||||
run: playbooks/legacy/vitrage-dsvm-mock-py27/run.yaml
|
||||
post-run: playbooks/legacy/vitrage-dsvm-mock-py27/post.yaml
|
||||
timeout: 7800
|
||||
required-projects:
|
||||
- openstack-infra/devstack-gate
|
||||
- openstack/python-vitrageclient
|
||||
- openstack/vitrage
|
||||
- openstack/vitrage-tempest-plugin
|
||||
irrelevant-files:
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^releasenotes/.*$
|
||||
|
||||
- job:
|
||||
name: vitrage-dsvm-mock-py35
|
||||
parent: legacy-dsvm-base
|
||||
voting: false
|
||||
run: playbooks/legacy/vitrage-dsvm-mock-py35/run.yaml
|
||||
post-run: playbooks/legacy/vitrage-dsvm-mock-py35/post.yaml
|
||||
timeout: 7800
|
||||
required-projects:
|
||||
- openstack-infra/devstack-gate
|
||||
- openstack/python-vitrageclient
|
||||
- openstack/vitrage
|
||||
- openstack/vitrage-tempest-plugin
|
||||
irrelevant-files:
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^releasenotes/.*$
|
||||
|
70
devstack/gate_hook_mock.sh
Normal file
70
devstack/gate_hook_mock.sh
Normal file
@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 2018 - 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.
|
||||
|
||||
export DEVSTACK_GATE_INSTALL_TESTONLY=1
|
||||
export DEVSTACK_GATE_TEMPEST=1
|
||||
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
|
||||
export KEEP_LOCALRC=1
|
||||
|
||||
DEVSTACK_LOCAL_CONFIG+=$'\nenable_plugin vitrage git://git.openstack.org/openstack/vitrage'
|
||||
DEVSTACK_LOCAL_CONFIG+=$'\nenable_plugin vitrage-tempest-plugin git://git.openstack.org/openstack/vitrage-tempest-plugin'
|
||||
|
||||
# we don't want swift
|
||||
DEVSTACK_LOCAL_CONFIG+=$'\ndisable_service s-account s-container s-object s-proxy'
|
||||
|
||||
DEVSTACK_LOCAL_CONFIG+="$(cat <<EOF
|
||||
|
||||
|
||||
[[post-config|\$NOVA_CONF]]
|
||||
[DEFAULT]
|
||||
notification_topics = notifications,vitrage_notifications
|
||||
notification_driver = messagingv2
|
||||
|
||||
[[post-config|\$CINDER_CONF]]
|
||||
[DEFAULT]
|
||||
notification_topics = notifications,vitrage_notifications
|
||||
notification_driver = messagingv2
|
||||
|
||||
[[post-config|\$VITRAGE_CONF]]
|
||||
|
||||
[DEFAULT]
|
||||
verbose = true
|
||||
debug = false
|
||||
notifiers = nova,webhook
|
||||
|
||||
[datasources]
|
||||
types=mock_graph_datasource
|
||||
path=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
|
||||
|
||||
[persistency]
|
||||
enable_persistency=true
|
||||
EOF
|
||||
)"
|
||||
|
||||
export DEVSTACK_LOCAL_CONFIG
|
||||
$BASE/new/devstack-gate/devstack-vm-gate.sh
|
80
playbooks/legacy/vitrage-dsvm-mock-py27/post.yaml
Normal file
80
playbooks/legacy/vitrage-dsvm-mock-py27/post.yaml
Normal file
@ -0,0 +1,80 @@
|
||||
- hosts: primary
|
||||
tasks:
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*nose_results.html
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*testr_results.html.gz
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/.testrepository/tmp*
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*testrepository.subunit.gz
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}/tox'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/.tox/*/log/*
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/logs/**
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
51
playbooks/legacy/vitrage-dsvm-mock-py27/run.yaml
Normal file
51
playbooks/legacy/vitrage-dsvm-mock-py27/run.yaml
Normal file
@ -0,0 +1,51 @@
|
||||
- hosts: all
|
||||
name: Autoconverted job legacy-vitrage-dsvm-mock-py27 from old job gate-vitrage-dsvm-mock-py27-ubuntu-xenial
|
||||
tasks:
|
||||
|
||||
- name: Ensure legacy workspace directory
|
||||
file:
|
||||
path: '{{ ansible_user_dir }}/workspace'
|
||||
state: directory
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
cat > clonemap.yaml << EOF
|
||||
clonemap:
|
||||
- name: openstack-infra/devstack-gate
|
||||
dest: devstack-gate
|
||||
EOF
|
||||
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
|
||||
git://git.openstack.org \
|
||||
openstack-infra/devstack-gate
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
export PYTHONUNBUFFERED=true
|
||||
export PROJECTS="openstack/python-vitrageclient $PROJECTS"
|
||||
export PROJECTS="openstack/vitrage $PROJECTS"
|
||||
export PROJECTS="openstack/vitrage-tempest-plugin $PROJECTS"
|
||||
|
||||
export DEVSTACK_GATE_USE_PYTHON3=False
|
||||
|
||||
function gate_hook {
|
||||
source $BASE/new/vitrage/devstack/gate_hook_mock.sh
|
||||
}
|
||||
export -f gate_hook
|
||||
|
||||
function post_test_hook {
|
||||
source $BASE/new/vitrage-tempest-plugin/devstack/post_test_hook.sh 'mock'
|
||||
}
|
||||
export -f post_test_hook
|
||||
|
||||
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
||||
./safe-devstack-vm-gate-wrap.sh
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
80
playbooks/legacy/vitrage-dsvm-mock-py35/post.yaml
Normal file
80
playbooks/legacy/vitrage-dsvm-mock-py35/post.yaml
Normal file
@ -0,0 +1,80 @@
|
||||
- hosts: primary
|
||||
tasks:
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*nose_results.html
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*testr_results.html.gz
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/.testrepository/tmp*
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=**/*testrepository.subunit.gz
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}/tox'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/.tox/*/log/*
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/logs/**
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
51
playbooks/legacy/vitrage-dsvm-mock-py35/run.yaml
Normal file
51
playbooks/legacy/vitrage-dsvm-mock-py35/run.yaml
Normal file
@ -0,0 +1,51 @@
|
||||
- hosts: all
|
||||
name: Autoconverted job legacy-vitrage-dsvm-mock-py35 from old job gate-vitrage-dsvm-mock-py35-ubuntu-xenial-nv
|
||||
tasks:
|
||||
|
||||
- name: Ensure legacy workspace directory
|
||||
file:
|
||||
path: '{{ ansible_user_dir }}/workspace'
|
||||
state: directory
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
cat > clonemap.yaml << EOF
|
||||
clonemap:
|
||||
- name: openstack-infra/devstack-gate
|
||||
dest: devstack-gate
|
||||
EOF
|
||||
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
|
||||
git://git.openstack.org \
|
||||
openstack-infra/devstack-gate
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
export PYTHONUNBUFFERED=true
|
||||
export PROJECTS="openstack/python-vitrageclient $PROJECTS"
|
||||
export PROJECTS="openstack/vitrage $PROJECTS"
|
||||
export PROJECTS="openstack/vitrage-tempest-plugin $PROJECTS"
|
||||
|
||||
export DEVSTACK_GATE_USE_PYTHON3=True
|
||||
|
||||
function gate_hook {
|
||||
source $BASE/new/vitrage/devstack/gate_hook_mock.sh
|
||||
}
|
||||
export -f gate_hook
|
||||
|
||||
function post_test_hook {
|
||||
source $BASE/new/vitrage-tempest-plugin/devstack/post_test_hook.sh 'mock'
|
||||
}
|
||||
export -f post_test_hook
|
||||
|
||||
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
||||
./safe-devstack-vm-gate-wrap.sh
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
Loading…
Reference in New Issue
Block a user