diff --git a/.mailmap b/.mailmap index 832af7d..dfe9917 100644 --- a/.mailmap +++ b/.mailmap @@ -21,7 +21,7 @@ - + @@ -116,4 +116,4 @@ Vishvananda Ishaya Vishvananda Ishaya Vivek YS Vivek YS vivek.ys@gmail.com <> Zhongyue Luo -Édouard Thuleau Thuleau Édouard +Édouard Thuleau Thuleau Édouard diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 6088cbf..daf0b48 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -1217,28 +1217,17 @@ class ComputeManager(manager.SchedulerDependentManager): :param rotation: int representing how many backups to keep around; None if rotation shouldn't be used (as in the case of snapshots) """ - # NOTE(jk0): Eventually extract this out to the ImageService? - def fetch_images(): - images = [] - marker = None - while True: - batch = image_service.detail(context, filters=filters, - marker=marker, sort_key='created_at', sort_dir='desc') - if not batch: - break - images += batch - marker = batch[-1]['id'] - return images - image_service = glance.get_default_image_service() filters = {'property-image_type': 'backup', 'property-backup_type': backup_type, 'property-instance_uuid': instance['uuid']} - images = fetch_images() + images = image_service.detail(context, filters=filters, + sort_key='created_at', sort_dir='desc') num_images = len(images) LOG.debug(_("Found %(num_images)d images (rotation: %(rotation)d)") % locals(), instance=instance) + if num_images > rotation: # NOTE(sirp): this deletes all backups that exceed the rotation # limit diff --git a/nova/image/glance.py b/nova/image/glance.py index 9282a15..8ea207a 100644 --- a/nova/image/glance.py +++ b/nova/image/glance.py @@ -177,7 +177,7 @@ class GlanceImageService(object): accepted_params = ('filters', 'marker', 'limit', 'sort_key', 'sort_dir') for param in accepted_params: - if param in params: + if param in params and params.get(param): _params[param] = params.get(param) # ensure filters is a dict