summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/compute/api.py10
-rw-r--r--nova/tests/compute/test_compute.py16
2 files changed, 7 insertions, 19 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py
index eccf13da6..b7e5f5beb 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -477,19 +477,15 @@ class API(base.Base):
return instance
def _check_config_drive(self, context, config_drive):
- bool_like = True
try:
- strutils.bool_from_string(config_drive, strict=True)
+ bool_like = strutils.bool_from_string(config_drive, strict=True)
except ValueError:
bool_like = False
if config_drive is None:
return None, None
- elif bool_like and config_drive not in (0, 1, '0', '1'):
- # NOTE(sirp): '0' and '1' could be a bool value or an ID. Since
- # there are many other ways to specify bools (e.g. 't', 'f'), it's
- # better to treat as an ID.
- return None, config_drive
+ elif bool_like:
+ return None, bool_like
else:
cd_image_service, config_drive_id = \
glance.get_remote_image_service(context, config_drive)
diff --git a/nova/tests/compute/test_compute.py b/nova/tests/compute/test_compute.py
index f5c23ccee..a02a5ad6e 100644
--- a/nova/tests/compute/test_compute.py
+++ b/nova/tests/compute/test_compute.py
@@ -8989,21 +8989,13 @@ class CheckConfigDriveTestCase(test.TestCase):
self.assertCheck((None, None), None)
self.assertFalse(self.called['show'])
- def test_value_is_bool_like_string(self):
- self.assertCheck((None, 'True'), 'True')
- self.assertCheck((None, 'yes'), 'yes')
-
def test_bool_string_or_id(self):
- # NOTE(sirp): '0' and '1' could be a bool value or an ID. Since there
- # are many other ways to specify bools (e.g. 't', 'f'), it's better to
- # treat as an ID.
- self.assertCheck((0, None), 0)
- self.assertCheck((1, None), 1)
- self.assertCheck(('0', None), '0')
- self.assertCheck(('1', None), '1')
+ self.assertCheck((None, True), "true")
+ self.assertCheck((None, True), 1)
+ self.assertCheck((None, True), 't')
def test_value_is_image_id(self):
- self.assertCheck((2, None), 2)
+ self.assertCheck(("fake-uuid", None), "fake-uuid")
class CheckRequestedImageTestCase(test.TestCase):