)]}'
{
  "commit": "fa32884e1cd9973bd22adc0b1ca6c4036da70441",
  "tree": "cc710ca25d31327c41665fb28ae3acda6289166a",
  "parents": [
    "f070f7bb67fa01719458156b9d26d16385171f09"
  ],
  "author": {
    "name": "ghanshyam",
    "email": "ghanshyammann@gmail.com",
    "time": "Thu Dec 14 07:22:12 2017 +0000"
  },
  "committer": {
    "name": "Ilya Menkov",
    "email": "imenkov@mirantis.com",
    "time": "Tue Jan 26 10:48:10 2021 +0000"
  },
  "message": "Volume Service Testing: default to v3 endpoints\n\nVolume service has 2 versions of APIs, v2 and v3. v3 base\nversion \u0027v3.0\u0027 is supposed to be identical to v2 APIs.\n\nCurrent supported API is v3 and all future development\nwill be on v3 with microversion.\n\nBase API       v3.0 \u003d\u003d v2\nAPI versioning  v3.0 + microversion (v3.1, v3.2 etc)\n\nIn current situation, Tempest tests v2 API mainly and\nv3 microversion specific change. As Cinder already made v3 as\ncurrent supported APIs which are supposed to be identical to v2,\nit\u0027s is good to test v3 API as default with ability to configure\nto test v2 APIs also.\n\nTempest should have flexibility to run existing test against any\nof the API version. All existing tests which used to run on v2 APIs\nshould pass on v3.0 without any change.\n\nIdea to achieve that is:\n -  Use config option ``[volume].catalog_type`` to switch the target API\n    version for testing. For example-\n    If it is configured to v3 endpoints, all tests will run against v3 APIs. like\n    \u0027volumev3\u0027 in case of devstack [1].\n    If it is configured to v2 endpoints, all tests will run against v2 APIs. like\n    \u0027volumev2\u0027 in case of devstack.\n\nChanges required:\nTempest: this commit\n 1. Change the default value of the config option ``[volume].catalog_type`` to ``volumev3``\n    so that all gate job test v3 as default.\n 2. Make all volume service clients version less.\n\nDevstack: I531f3b32e81ac5d282461597ca286c09429cb143\n 3. Make Devstack to configure the ``[volume].catalog_type`` on tempest for v2 job.\n 4. If Tempest if configured to tests v2 APIs, configure tempest to skip microversion tests\n    as no microversion supported in v2 APIs.\n\nv2 API Job: TODO\n 5. Add new job for v2 APIs testing and set ``[volume].catalog_type`` to ``volumev2``\n    to run all tests against v2 APIs.\n\nThis way we will have:\n - default gate testing of v3 APIs.\n - separate job testing v2 APIs till it is required.\n\n..1 https://github.com/openstack-dev/devstack/blob/924b1149c8138bf1401aaef709e00f680509c33f/lib/cinder#L361\n\nNOTE: Next patch will make all service clients under v3 dir\n      and keep v2 service clients available for backward\n      compatibility.\nRelated-prod: PRODX-9612\nChange-Id: I0c9193501eb9eaa25eb5f0786bb72eb7855099fb\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ea6929351b15d4dcf56401d0b3c6ea78eceb118c",
      "new_mode": 33188,
      "new_path": "releasenotes/notes/volume-service-testing-default-to-v3-endpoints-20b86895a590925d.yaml"
    },
    {
      "type": "modify",
      "old_id": "babb5a3b98269a750d13ea8bbf190d6558a0243c",
      "old_mode": 33188,
      "old_path": "tempest/config.py",
      "new_id": "dbfc59dc00ff79f51df8b907da10a8221191f55f",
      "new_mode": 33188,
      "new_path": "tempest/config.py"
    },
    {
      "type": "modify",
      "old_id": "bb4a357f4e29f10fa79d46bd525ab213aeeac1e8",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/availability_zone_client.py",
      "new_id": "147e4c6560e3350efb5ca88e874f19b02a4048fa",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/availability_zone_client.py"
    },
    {
      "type": "modify",
      "old_id": "adfa6a61430323bd38aab2012c66e1b74d3848f6",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/backups_client.py",
      "new_id": "3dbb30c9db80415c19525932b6ff51888ebeba71",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/backups_client.py"
    },
    {
      "type": "modify",
      "old_id": "240be135dc4227b73cb8aafecfa4180c777f005c",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/capabilities_client.py",
      "new_id": "7ebcd69bf9fc7164380d14395728355b9e567df2",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/capabilities_client.py"
    },
    {
      "type": "modify",
      "old_id": "b99d1febd0b562d5e99c90cdd4cf34e569c44627",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/encryption_types_client.py",
      "new_id": "5a7ea12b2f877c52cafec29ea11f7ee48ada9807",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/encryption_types_client.py"
    },
    {
      "type": "modify",
      "old_id": "09279d578dffa7b94800f4d96eb731b22e78c1a5",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/extensions_client.py",
      "new_id": "45b7a56bb68d67bde1d6b03f5e52a57e62793130",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/extensions_client.py"
    },
    {
      "type": "modify",
      "old_id": "f44bda3913ebeeb371ad4ee0c582ad01677a4862",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/hosts_client.py",
      "new_id": "c395325dc663e6b47b6cb056a2f837c1f5a89cf9",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/hosts_client.py"
    },
    {
      "type": "modify",
      "old_id": "ce9fba9b9e52d65bb98b472d1a236f109159d333",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/limits_client.py",
      "new_id": "95002547e93675fc71a73fa5fb82d9745475301f",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/limits_client.py"
    },
    {
      "type": "modify",
      "old_id": "47d3914cb127c71ecb75c8421f5dfec72942285a",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/qos_client.py",
      "new_id": "f8b8c3cddb888ce7765f16774dce695db5848194",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/qos_client.py"
    },
    {
      "type": "modify",
      "old_id": "733b1ac744a82a8aef2c2b018c976f1be02305e7",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/quota_classes_client.py",
      "new_id": "eeeb268c0dbdee30cd2288b47ac1f94bf4f62636",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/quota_classes_client.py"
    },
    {
      "type": "modify",
      "old_id": "e4b28950940cf0cb37258199ad2c456c7ad8b343",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/quotas_client.py",
      "new_id": "8906294d492e2f9879a8298ee049c9911fc72967",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/quotas_client.py"
    },
    {
      "type": "modify",
      "old_id": "0d04f85d2b175801dd3d5b3b2328214f7e63e576",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/scheduler_stats_client.py",
      "new_id": "bd5fa6d2585b9fb988bf3ef80120b9dec531dab4",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/scheduler_stats_client.py"
    },
    {
      "type": "modify",
      "old_id": "bc554696dd0bbc821aeb9c1b4696cf5991310f74",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/services_client.py",
      "new_id": "09036a4833e8c07104117e03e943d69430160030",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/services_client.py"
    },
    {
      "type": "modify",
      "old_id": "aecd30b1d669342fdc10a7c60208bbdb169f0131",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/snapshot_manage_client.py",
      "new_id": "43fd328ac8f7d1402072d2c5d86cf791219fb95e",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/snapshot_manage_client.py"
    },
    {
      "type": "modify",
      "old_id": "4bc2842a63b747061cc33145e873a3c5df905860",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/snapshots_client.py",
      "new_id": "1f051801d1de4b35648b1b259993e618b08401ee",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/snapshots_client.py"
    },
    {
      "type": "modify",
      "old_id": "2dfbe7bb1ba516b83f5f068872d390703b9a45b3",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/transfers_client.py",
      "new_id": "291aadf83f44f05950214b72ed577c4ce20a402a",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/transfers_client.py"
    },
    {
      "type": "modify",
      "old_id": "af4fd8cd6c41af8bf54321b010792ae5568eb25f",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/types_client.py",
      "new_id": "ef5e434a08907c760c028cb550fff3880565d299",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/types_client.py"
    },
    {
      "type": "modify",
      "old_id": "12f4240a538587f546b5867e813de4f8ab60fdbc",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/volume_manage_client.py",
      "new_id": "ddae1278c6ee7b2d688ef8c2b1187926ef49ce29",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/volume_manage_client.py"
    },
    {
      "type": "modify",
      "old_id": "da3f2b53aa8c60093a6f09e864e2cf46f21a6309",
      "old_mode": 33188,
      "old_path": "tempest/lib/services/volume/v2/volumes_client.py",
      "new_id": "dd019f6809cd7d7bb86c0d0a0a0fcb30cef1c777",
      "new_mode": 33188,
      "new_path": "tempest/lib/services/volume/v2/volumes_client.py"
    }
  ]
}
