diff options
| author | Vishvananda Ishaya <vishvananda@gmail.com> | 2010-12-13 19:54:07 +0000 |
|---|---|---|
| committer | Tarmac <> | 2010-12-13 19:54:07 +0000 |
| commit | 911f11139926a772a5d90b8ec65cc4cb7ad850e9 (patch) | |
| tree | 39583ffd87c04700eb52d91431025aadad4a2f84 /nova/api | |
| parent | a70e2bf4a5c9a3effc1f79e32ac23b53617f2634 (diff) | |
| parent | 50ac7dc67686742c3e57cc3a408ca9e8c988b89b (diff) | |
Adds support to the ec2 api for filtering describe volumes by volume_ids.
Diffstat (limited to 'nova/api')
| -rw-r--r-- | nova/api/ec2/cloud.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/nova/api/ec2/cloud.py b/nova/api/ec2/cloud.py index 05f8c3d0b..ebb13aedc 100644 --- a/nova/api/ec2/cloud.py +++ b/nova/api/ec2/cloud.py @@ -450,13 +450,15 @@ class CloudController(object): "Timestamp": now, "output": base64.b64encode(output)} - def describe_volumes(self, context, **kwargs): + def describe_volumes(self, context, volume_id=None, **kwargs): if context.user.is_admin(): volumes = db.volume_get_all(context) else: volumes = db.volume_get_all_by_project(context, context.project_id) - volumes = [self._format_volume(context, v) for v in volumes] + # NOTE(vish): volume_id is an optional list of volume ids to filter by. + volumes = [self._format_volume(context, v) for v in volumes + if volume_id is None or v['ec2_id'] in volume_id] return {'volumeSet': volumes} |
