Make get_image work on name or id
There is no reason to make the user specify. It's simple, while we're looping through images, if the id is an exact match, bingo - it's the image. If it's not, but the name is and matches the other rules, bingo. Everything else is stupid.
This commit is contained in:
parent
9c540a224d
commit
b3483829b5
|
@ -376,25 +376,27 @@ class OpenStackCloud(object):
|
||||||
return self._image_cache
|
return self._image_cache
|
||||||
|
|
||||||
def get_image_name(self, image_id):
|
def get_image_name(self, image_id):
|
||||||
if image_id not in self.list_images():
|
image = self.get_image(image_id, exclude)
|
||||||
self._image_cache[image_id] = None
|
if image:
|
||||||
if self._image_cache[image_id]:
|
return image.id
|
||||||
return self._image_cache[image_id].name
|
self._image_cache[image_id] = None
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def get_image_id(self, image_name, exclude=None):
|
def get_image_id(self, image_name, exclude=None):
|
||||||
image = self.get_image_by_name(image_name, exclude)
|
image = self.get_image(image_name, exclude)
|
||||||
if image:
|
if image:
|
||||||
return image.id
|
return image.id
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def get_image_by_name(self, name, exclude=None):
|
def get_image(self, name_or_id, exclude=None):
|
||||||
for (image_id, image) in self.list_images().items():
|
for (image_id, image) in self.list_images().items():
|
||||||
if (name in image.name and (
|
if image_id == name_or_id:
|
||||||
|
return image
|
||||||
|
if (name_or_id in image.name and (
|
||||||
not exclude or exclude not in image.name)):
|
not exclude or exclude not in image.name)):
|
||||||
return image
|
return image
|
||||||
raise OpenStackCloudException(
|
raise OpenStackCloudException(
|
||||||
"Error finding image id from name(%s)" % name)
|
"Error finding image from %s" % name_or_id)
|
||||||
|
|
||||||
def _get_volumes_from_cloud(self):
|
def _get_volumes_from_cloud(self):
|
||||||
try:
|
try:
|
||||||
|
|
Loading…
Reference in New Issue