From 031f452425bada21f8365af0190e26d350f065ee Mon Sep 17 00:00:00 2001 From: TommyLike Date: Thu, 19 Jul 2018 18:54:28 +0800 Subject: [PATCH] Deprecate volume reserve/unreserve capability In general, when attach/detach volumes, there are several internal APIs which only used to update volume status and to indicate the intermediate state. For example, os-attach and os-detach, they have already been discussed in the maillist [2] and marked as deprecated in patch [1]. Since the complete attach/detach process has already been covered by "compute-volume-attach" capability. This patch proposes to deprecate volume "reserve&unreserve" capability as well. These tests could break defcore testing for OpenStack clouds, especially for public clouds. 1. Remove V2 and V3 reserve&unreserve from 2017.09 2. Remove V2 and V3 reserve&unreserve from 2018.02 3. Remove V2 and V3 reserve&unreserve from next [1]: d234631f4f9f7e32ae7dc660dbb42a35166dfb8a [2]: http://lists.openstack.org/pipermail/interop-wg/2017-April/000116.html Change-Id: I1599c1c3721e72a415be65af8b474206b174f241 --- 2017.09.json | 56 ++++++++++++++++++++++++++++++++++++------- 2018.02.json | 56 ++++++++++++++++++++++++++++++++++++------- next.json | 67 ++++++++++++++++++++++++++++++++++++++++++---------- 3 files changed, 150 insertions(+), 29 deletions(-) diff --git a/2017.09.json b/2017.09.json index 4c591c5c..58203dbe 100644 --- a/2017.09.json +++ b/2017.09.json @@ -2741,19 +2741,39 @@ "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } }, @@ -3275,19 +3295,39 @@ "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } }, diff --git a/2018.02.json b/2018.02.json index 2b934b77..a06de822 100644 --- a/2018.02.json +++ b/2018.02.json @@ -2846,19 +2846,39 @@ "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } }, @@ -3348,19 +3368,39 @@ "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } }, diff --git a/next.json b/next.json index 21c1c857..1e15d9d2 100644 --- a/next.json +++ b/next.json @@ -154,7 +154,6 @@ "volumes-v2-availability-zones", "volumes-v2-extensions", "volumes-v2-metadata", - "volumes-v2-reserve", "volumes-v2-readonly", "volumes-v2-upload", "volumes-v3-create-delete", @@ -167,7 +166,6 @@ "volumes-v3-availability-zones", "volumes-v3-extensions", "volumes-v3-metadata", - "volumes-v3-reserve", "volumes-v3-readonly" ], "advisory": [ @@ -175,7 +173,10 @@ "identity-v3-catalog", "identity-v3-tokens-validate" ], - "deprecated": [], + "deprecated": [ + "volumes-v2-reserve", + "volumes-v3-reserve" + ], "removed": [ "volumes-v2-attach-detach", "volumes-v3-attach-detach" @@ -2834,23 +2835,43 @@ "admin": false, "description": "Volume reservation operations with the Cinder v2 API", "project": "cinder", - "required_since": "2016.08", + "required_since": "", "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } }, @@ -3329,23 +3350,43 @@ "admin": false, "description": "Volume reservation operations with the Cinder v3 API. This is being added as advisory to highlight the transitition from v2 to v3.", "project": "cinder", - "required_since": "2018.02", + "required_since": "", "tests": { "tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_reserve_unreserve_volume": { "idempotent_id": "id-92c4ef64-51b2-40c0-9f7e-4749fbaaba33", - "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"] + "aliases": ["tempest.api.volume.test_volumes_actions.VolumesV2ActionsTest.test_reserve_unreserve_volume"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_negative_volume_status": { "idempotent_id": "id-449c4ed2-ecdd-47bb-98dc-072aeccf158c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_negative_volume_status"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_reserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-ac6084c0-0546-45f9-b284-38a367e0e0e2", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_reserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } }, "tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_unreserve_volume_with_nonexistent_volume_id": { "idempotent_id": "id-eb467654-3dc1-4a72-9b46-47c29d22654c", - "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"] + "aliases": ["tempest.api.volume.test_volumes_negative.VolumesV2NegativeTest.test_unreserve_volume_with_nonexistent_volume_id"], + "flagged": { + "reason": "[D400] These are internal APIs which means they can be changed/removed in the future.", + "action": "This test will be removed from future guidelines.", + "date": "2018-07-10" + } } } },