Provide a gabbi-tempest job, tested by itself

The name follows the patterns defined by zuul docs.
The Depends-On is to a necessary Tempest change for
handling the enviornment variable.

The gabbigts in gate/gabbits talk to keystone and nova
to simply confirm that the tests can run.

Depends-On: https://review.openstack.org/607507
Change-Id: I7a9efefb28e23bf47951617cbe08f177235688d6
This commit is contained in:
Chris Dent 2018-10-18 17:41:21 +01:00
parent 086f5c3080
commit 3f0191f82d
2 changed files with 51 additions and 2 deletions

View File

@ -1,3 +1,25 @@
- project:
templates:
- noop-jobs
check:
jobs:
- gabbi-tempest
gate:
jobs:
- gabbi-tempest
- job:
name: gabbi-tempest
parent: devstack-tempest
description: |
A job that can be used as a base for running gabbi tests
against a set of directories.
required-projects:
- openstack/gabbi-tempest
vars:
gabbi_tempest_path: "{{ devstack_base_dir|default('/opt/stack') }}/gabbi-tempest/gate/gabbits"
tox_envlist: all
tempest_test_regex: 'gabbi'
# run test in serial, because we have no control over stestr group_regex
tempest_concurrency: 1
devstack_localrc:
TEMPEST_PLUGINS: "{{ devstack_base_dir|default('/opt/stack') }}/gabbi-tempest"
USE_PYTHON3: True

27
gate/gabbits/confirm.yaml Normal file
View File

@ -0,0 +1,27 @@
# A basic set of tests to confirm that we the test environment and plugin
# system is working as expected. We retrieve some information from keystone
# and then confirm it against nova.
defaults:
request_headers:
x-auth-token: $ENVIRON['SERVICE_TOKEN']
content-type: application/json
accept: application/json
tests:
- name: retrieve services
GET: $ENVIRON['IDENTITY_SERVICE']/v3/services
response_json_paths:
$.services[?type = compute].name: nova
- name: retrieve compute endpoint
GET: $ENVIRON['IDENTITY_SERVICE']/v3/endpoints?interface=public&service_id=$RESPONSE['$.services[?type = compute].id']
response_json_paths:
$.endpoints[0].url: $ENVIRON['COMPUTE_SERVICE']
- name: get compute version doc
GET: $RESPONSE['$.endpoints[0].url']
redirects: True
response_json_paths:
$.version.status: CURRENT