Add tempest to keystone role tests

The keystone functional tests are currently not using tempest, and are
quite lacking in functionality.

This PR adds tempest testing to the keystone role.
We use the tempest.api.identity tests but exclude the tests for
credentials and ec2 which we don't currently support.

TODO: (andymccr)
We need to add support for these (and remove the exclusion) by
performing a 'keystone-manage credential_setup --keystone-user keystone
--keystone-group keystone'

Change-Id: I9a7207e75040c304c53820795cb66ce9be00c350
This commit is contained in:
Andy McCrae 2016-09-05 16:36:16 +01:00
parent d0e5097ecc
commit a0d71d6fff
5 changed files with 46 additions and 0 deletions

View File

@ -30,3 +30,11 @@
src: https://git.openstack.org/openstack/openstack-ansible-rabbitmq_server
scm: git
version: master
- name: openstack_openrc
src: https://git.openstack.org/openstack/openstack-ansible-openstack_openrc
scm: git
version: master
- name: os_tempest
src: https://git.openstack.org/openstack/openstack-ansible-os_tempest
scm: git
version: master

View File

@ -26,3 +26,6 @@ memcached_all
[keystone_all]
keystone1
keystone2
[utility_all]
keystone1

View File

@ -1,2 +1,16 @@
---
install_test_packages: True
# TODO:(andymccr) Override until we can merge this into master
tempest_main_group: utility_all
# TODO:(andymccr) We should fix this in the central-test repo so that we are smarter about this but for now lets hard code it.
tempest_service_available_aodh: False
tempest_service_available_ceilometer: False
tempest_service_available_cinder: False
tempest_service_available_glance: False
tempest_service_available_heat: False
tempest_service_available_horizon: False
tempest_service_available_neutron: False
tempest_service_available_nova: False
tempest_service_available_swift: False

View File

@ -13,6 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# Test that users/projects etc are consistent on both keystone hosts
- name: Playbook for functional testing keystone
hosts: keystone_all
user: root
@ -70,3 +71,20 @@
vars_files:
- playbooks/test-vars.yml
# Run tempest identity tests on one keystone host.
- name: Playbook for functional testing keystone
hosts: keystone_all[0]
user: root
gather_facts: false
tasks:
# TODO(andymccr): add credentials functionality to keystone and remove the "credentials" exclusion.
- name: Run tempest
shell: |
. {{ tempest_venv_bin }}/activate
{{ tempest_venv_bin | dirname }}/run_tempest.sh --no-virtual-env ${RUN_TEMPEST_OPTS} '^tempest.api.identity((?!credentials).)*$'
environment:
RUN_TEMPEST_OPTS: "--serial"
vars_files:
- playbooks/test-vars.yml

View File

@ -28,5 +28,8 @@
# Install Keystone
- include: playbooks/test-install-keystone.yml
# Install Tempest
- include: playbooks/test-install-tempest.yml
# Test Keystone
- include: test-keystone-functional.yml