diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index 1fe5bb0d10..3ae7516765 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -544,7 +544,7 @@ class CreateServer(command.ShowOne): else: mapping['source_type'] = 'volume' mapping['destination_type'] = 'volume' - if len(dev_map) > 2: + if len(dev_map) > 2 and dev_map[2]: mapping['volume_size'] = dev_map[2] if len(dev_map) > 3: mapping['delete_on_termination'] = dev_map[3] diff --git a/openstackclient/tests/unit/compute/v2/test_server.py b/openstackclient/tests/unit/compute/v2/test_server.py index 7691ef5945..a0716e4c85 100644 --- a/openstackclient/tests/unit/compute/v2/test_server.py +++ b/openstackclient/tests/unit/compute/v2/test_server.py @@ -817,8 +817,7 @@ class TestServerCreate(TestServer): 'uuid': real_volume_mapping.split(':', 1)[0], 'destination_type': 'volume', 'source_type': 'volume', - 'delete_on_termination': '0', - 'volume_size': '' + 'delete_on_termination': '0' }], nics=[], scheduler_hints={}, diff --git a/releasenotes/notes/bug-1677236-7de9d11c3f0fb5ed.yaml b/releasenotes/notes/bug-1677236-7de9d11c3f0fb5ed.yaml new file mode 100644 index 0000000000..d67cc5c9c8 --- /dev/null +++ b/releasenotes/notes/bug-1677236-7de9d11c3f0fb5ed.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Fix creating a server with a block-device-mapping when volume_size + is empty. + [Bug `1677236 `_]