summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-10-04 16:25:55 +0000
committerGerrit Code Review <review@openstack.org>2016-10-04 16:25:55 +0000
commit4ac8124801c058efe99f66ad63a31a02cb7395d3 (patch)
treec55f9a48316398f7798ae5d768a0c7890079e86c
parentfb3b74e580d5956ee78aec60ee6aae5764e4d96e (diff)
parentca9be53870529f7098b7e63415395c5551d0e605 (diff)
downloadpython-troveclient-4ac8124801c058efe99f66ad63a31a02cb7395d3.tar.gz
Merge "Throw correct error on creation of size 0"
-rw-r--r--troveclient/tests/test_v1_shell.py4
-rw-r--r--troveclient/v1/shell.py6
2 files changed, 9 insertions, 1 deletions
diff --git a/troveclient/tests/test_v1_shell.py b/troveclient/tests/test_v1_shell.py
index 660b789..58c9d4c 100644
--- a/troveclient/tests/test_v1_shell.py
+++ b/troveclient/tests/test_v1_shell.py
@@ -274,6 +274,10 @@ class ShellTest(utils.TestCase):
self.run_command('cluster-force-delete cls-1234')
self.assert_called('DELETE', '/clusters/cls-1234')
+ def test_boot_fail_with_size_0(self):
+ self.assertRaises(exceptions.ValidationError, self.run_command,
+ 'create test-member-1 1 --size 0 --volume_type lvm')
+
def test_boot(self):
self.run_command('create test-member-1 1 --size 1 --volume_type lvm')
self.assert_called_anytime(
diff --git a/troveclient/v1/shell.py b/troveclient/v1/shell.py
index 712aa83..7fef8cb 100644
--- a/troveclient/v1/shell.py
+++ b/troveclient/v1/shell.py
@@ -521,7 +521,11 @@ def do_create(cs, args):
"""Creates a new instance."""
flavor_id = _find_flavor(cs, args.flavor).id
volume = None
- if args.size:
+ if args.size is not None and args.size <= 0:
+ raise exceptions.ValidationError(
+ "Volume size '%s' must be an integer and greater than 0."
+ % args.size)
+ elif args.size:
volume = {"size": args.size,
"type": args.volume_type}
restore_point = None