summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py22
1 files changed, 20 insertions, 2 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index c11f4b57..80bdc612 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -496,7 +496,7 @@ class AddServerSecurityGroup(command.Command):
server.add_security_group(security_group['id'])
-class AddServerVolume(command.Command):
+class AddServerVolume(command.ShowOne):
_description = _(
"Add volume to server. "
"Specify ``--os-compute-api-version 2.20`` or higher to add a volume "
@@ -595,12 +595,30 @@ class AddServerVolume(command.Command):
kwargs['delete_on_termination'] = False
- compute_client.volumes.create_server_volume(
+ volume_attachment = compute_client.volumes.create_server_volume(
server.id,
volume.id,
**kwargs
)
+ columns = ('id', 'serverId', 'volumeId', 'device')
+ column_headers = ('ID', 'Server ID', 'Volume ID', 'Device')
+ if compute_client.api_version >= api_versions.APIVersion('2.49'):
+ columns += ('tag',)
+ column_headers += ('Tag',)
+ if compute_client.api_version >= api_versions.APIVersion('2.79'):
+ columns += ('delete_on_termination',)
+ column_headers += ('Delete On Termination',)
+
+ return (
+ column_headers,
+ utils.get_item_properties(
+ volume_attachment,
+ columns,
+ mixed_case_fields=('serverId', 'volumeId'),
+ )
+ )
+
# TODO(stephenfin): Replace with 'MultiKeyValueAction' when we no longer
# support '--nic=auto' and '--nic=none'