[all][interop][cinder][qa] API changes with/without microversion and Tempest verification of API interoperability

Ghanshyam Mann gmann at ghanshyammann.com
Mon Sep 16 09:53:58 UTC 2019

Hello Everyone,

As per discussion over ML, Tempest started the JSON schema strict validation for Volume  APIs response [1].
Because it may affect the interop certification, it was explained to the Interop team as well as in the Board of Director meeting[2].

In Train, Tempest started implementing the validation and found an API change where the new field was added in API response without versioning[3] (Cinder has API microversion mechanism). IMO, that was not the correct way to change the API and as per API-WG guidelines[4] any field added/modified/removed in API should be with microverison(means old versions/user should not be affected by that change) and must for API interoperability.

With JSON schema validation, Tempest verifies the API interoperability recommended behaviour by API-WG.  But as per IRC conversion with cinder team, we have different opinion on API interoperability and how API should be changed under microversion mechanism.  I would like to have a conclusion on this so that Tempest can verify or leave the Volume API for strict validation. 

[1] http://lists.openstack.org/pipermail/openstack-discuss/2018-November/000358.html
- http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003652.html
- http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003655.html
[3] https://bugs.launchpad.net/tempest/+bug/1843762   https://review.opendev.org/#/c/439461/
[4] https://specs.openstack.org/openstack/api-wg/guidelines/api_interoperability.html


More information about the openstack-discuss mailing list