diff options
| author | Zuul <zuul@review.opendev.org> | 2021-03-11 12:44:47 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2021-03-11 12:44:47 +0000 |
| commit | e6b0473b8b94b2ddc073f4e308dc5ccb60b68ccd (patch) | |
| tree | 3c752141a341c26304278cd235dc0ecce358b6f9 /openstackclient/compute | |
| parent | 274d1eeffb9facc5d802c54a2360491e582a31b0 (diff) | |
| parent | 7c1d6f769c4f0d2afe61410fefd8bc8f26a22980 (diff) | |
| download | python-openstackclient-e6b0473b8b94b2ddc073f4e308dc5ccb60b68ccd.tar.gz | |
Merge "compute: Add functional tests for --block-device"
Diffstat (limited to 'openstackclient/compute')
| -rw-r--r-- | openstackclient/compute/v2/server.py | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index 9838ed54..b2ae93c8 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -832,13 +832,12 @@ class CreateServer(command.ShowOne): action=parseractions.MultiKeyValueAction, dest='block_devices', default=[], - required_keys=[ - 'boot_index', - ], + required_keys=[], optional_keys=[ 'uuid', 'source_type', 'destination_type', - 'disk_bus', 'device_type', 'device_name', 'guest_format', - 'volume_size', 'volume_type', 'delete_on_termination', 'tag', + 'disk_bus', 'device_type', 'device_name', 'volume_size', + 'guest_format', 'boot_index', 'delete_on_termination', 'tag', + 'volume_type', ], help=_( 'Create a block device on the server.\n' @@ -1336,14 +1335,15 @@ class CreateServer(command.ShowOne): block_device_mapping_v2.append(mapping) for mapping in parsed_args.block_devices: - try: - mapping['boot_index'] = int(mapping['boot_index']) - except ValueError: - msg = _( - 'The boot_index key of --block-device should be an ' - 'integer' - ) - raise exceptions.CommandError(msg) + if 'boot_index' in mapping: + try: + mapping['boot_index'] = int(mapping['boot_index']) + except ValueError: + msg = _( + 'The boot_index key of --block-device should be an ' + 'integer' + ) + raise exceptions.CommandError(msg) if 'tag' in mapping and ( compute_client.api_version < api_versions.APIVersion('2.42') @@ -1383,9 +1383,9 @@ class CreateServer(command.ShowOne): ) raise exceptions.CommandError(msg) else: - if mapping['source_type'] in ('image', 'blank'): + if mapping['source_type'] in ('blank',): mapping['destination_type'] = 'local' - else: # volume, snapshot + else: # volume, image, snapshot mapping['destination_type'] = 'volume' if 'delete_on_termination' in mapping: |
