On Mon, Sep 16, 2019 at 6:06 AM Ghanshyam Mann <gmann@ghanshyammann.com> wrote:
---- On Mon, 16 Sep 2019 18:53:58 +0900 Ghanshyam Mann <gmann@ghanshyammann.com> wrote ----
 > 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.

I found the same flow chart what Sean created in Nova about "when to bump microverison" in Cinder also which clearly say any addition to response need new microversion.
- https://docs.openstack.org/cinder/latest/contributor/api_microversion_dev.html


i would also expect any change in the request or response to result in a microversion bump as well.

peace o/

-gmann

 >
 > [1] http://lists.openstack.org/pipermail/openstack-discuss/2018-November/000358.html
 > [2]
 > - 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
 >
 > -gmann
 >