[sahara][qa][api-sig]Support for Sahara APIv2 in tempest tests, unversioned endpoints

Luigi Toscano ltoscano at redhat.com
Wed Jan 2 10:13:54 UTC 2019


Hi all,

I'm working on adding support for APIv2 to the Sahara tempest plugin.

If I get it correctly, there are two main steps

1) Make sure that that tempest client works with APIv2 (and don't regress with 
APIv1.1).

This mainly mean implementing the tempest client for Sahara APIv2, which 
should not be too complicated.

On the other hand, we hit an issue with the v1.1 client in an APIv2 
environment. 
A change associated with API v2 is usage of an unversioned endpoint for the 
deployment (see https://review.openstack.org/#/c/622330/ , without the /v1,1/$
(tenant_id) suffix) which should magically work with both API variants, but it 
seems that the current tempest client fails in this case:

http://logs.openstack.org/30/622330/1/check/sahara-tests-tempest/7e02114/job-output.txt.gz#_2018-12-05_21_20_23_535544

Does anyone know if this is an issue with the code of the tempest tests (which 
should maybe have some logic to build the expected endpoint when it's 
unversioned, like saharaclient does) or somewhere else?


2) fix the tests to support APIv2.

Should I duplicate the tests for APIv1.1 and APIv2? Other projects which 
supports different APIs seems to do this.
But can I freely move the existing tests under a subdirectory 
(sahara_tempest_plugins/tests/api/ -> sahara_tempest_plugins/tests/api/v1/), 
or are there any compatibility concerns? Are the test ID enough to ensure that 
everything works as before?

And what about CLI tests currently under sahara_tempest_plugin/tests/cli/ ? 
They supports both API versions through a configuration flag. Should they be 
duplicated as well?


Ciao
(and happy new year if you have a new one in your calendar!)
-- 
Luigi





More information about the openstack-discuss mailing list