From aaeda25e28ba27c7e5d1870eba448e94e4a8aa1b Mon Sep 17 00:00:00 2001 From: whoami-rajat Date: Tue, 16 May 2023 17:34:20 +0530 Subject: Migrate 'volume revert' command to SDK This patch modifies the existing revert volume to snapshot call from cinderclient to SDK. Change-Id: Iaa9708ebae5d6ab3dfc73e4e2376af32ed098688 --- openstackclient/volume/v3/volume.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'openstackclient/volume') diff --git a/openstackclient/volume/v3/volume.py b/openstackclient/volume/v3/volume.py index f02053f0..0f2d3c1d 100644 --- a/openstackclient/volume/v3/volume.py +++ b/openstackclient/volume/v3/volume.py @@ -17,6 +17,7 @@ import logging from cinderclient import api_versions +from openstack import utils as sdk_utils from osc_lib.cli import format_columns from osc_lib.command import command from osc_lib import exceptions @@ -96,20 +97,22 @@ class VolumeRevertToSnapshot(command.Command): return parser def take_action(self, parsed_args): - volume_client = self.app.client_manager.volume + volume_client = self.app.client_manager.sdk_connection.volume - if volume_client.api_version < api_versions.APIVersion('3.40'): + if not sdk_utils.supports_microversion(volume_client, '3.40'): msg = _( "--os-volume-api-version 3.40 or greater is required to " "support the 'volume revert snapshot' command" ) raise exceptions.CommandError(msg) - snapshot = utils.find_resource( - volume_client.volume_snapshots, parsed_args.snapshot + snapshot = volume_client.find_snapshot( + parsed_args.snapshot, + ignore_missing=False, ) - volume = utils.find_resource(volume_client.volumes, snapshot.volume_id) - - volume_client.volumes.revert_to_snapshot( - volume=volume, snapshot=snapshot + volume = volume_client.find_volume( + snapshot.volume_id, + ignore_missing=False, ) + + volume_client.revert_volume_to_snapshot(volume, snapshot) -- cgit v1.2.1