diff options
| author | Huanxuan Ao <huanxuan.ao@easystack.cn> | 2016-04-28 11:09:49 +0800 |
|---|---|---|
| committer | Huanxuan Ao <huanxuan.ao@easystack.cn> | 2016-04-28 19:59:53 +0800 |
| commit | 4524b3605fa4260a2f916421eebfc7a99b320e4b (patch) | |
| tree | 76d22360247e708c995299833f95931f4c9103be /openstackclient | |
| parent | 74162fa31a3c34ee08472f24318f1c326b493330 (diff) | |
| download | python-openstackclient-4524b3605fa4260a2f916421eebfc7a99b320e4b.tar.gz | |
Fix error in flavor set/unset command
In the "flavor set/unset" command,the "flavor" parameter
can be a name but can not be a id of a flavor.
I think we should find a flavor by using "utils.find_resource()"
in these commands.
Change-Id: I5836788f7ed18813f1ebde31bb808b7c3f932b80
Closes-Bug: #1575624
Diffstat (limited to 'openstackclient')
| -rw-r--r-- | openstackclient/compute/v2/flavor.py | 6 | ||||
| -rw-r--r-- | openstackclient/tests/compute/v2/test_flavor.py | 12 |
2 files changed, 12 insertions, 6 deletions
diff --git a/openstackclient/compute/v2/flavor.py b/openstackclient/compute/v2/flavor.py index 29e0e9d4..04674614 100644 --- a/openstackclient/compute/v2/flavor.py +++ b/openstackclient/compute/v2/flavor.py @@ -239,7 +239,8 @@ class SetFlavor(command.Command): def take_action(self, parsed_args): compute_client = self.app.client_manager.compute - flavor = compute_client.flavors.find(name=parsed_args.flavor) + flavor = utils.find_resource(compute_client.flavors, + parsed_args.flavor) flavor.set_keys(parsed_args.property) @@ -289,5 +290,6 @@ class UnsetFlavor(command.Command): def take_action(self, parsed_args): compute_client = self.app.client_manager.compute - flavor = compute_client.flavors.find(name=parsed_args.flavor) + flavor = utils.find_resource(compute_client.flavors, + parsed_args.flavor) flavor.unset_keys(parsed_args.property) diff --git a/openstackclient/tests/compute/v2/test_flavor.py b/openstackclient/tests/compute/v2/test_flavor.py index 03ca8807..fa29111b 100644 --- a/openstackclient/tests/compute/v2/test_flavor.py +++ b/openstackclient/tests/compute/v2/test_flavor.py @@ -288,8 +288,10 @@ class TestFlavorSet(TestFlavor): parsed_args = self.check_parser(self.cmd, arglist, verifylist) result = self.cmd.take_action(parsed_args) - - self.flavors_mock.find.assert_called_with(name='baremetal') + try: + self.flavors_mock.find.assert_called_with(name=parsed_args.flavor) + except Exception: + self.flavors_mock.get.assert_called_with(parsed_args.flavor) self.assertIsNone(result) @@ -382,6 +384,8 @@ class TestFlavorUnset(TestFlavor): parsed_args = self.check_parser(self.cmd, arglist, verifylist) result = self.cmd.take_action(parsed_args) - - self.flavors_mock.find.assert_called_with(name='baremetal') + try: + self.flavors_mock.find.assert_called_with(name=parsed_args.flavor) + except Exception: + self.flavors_mock.get.assert_called_with(parsed_args.flavor) self.assertIsNone(result) |
