From a7a0705699662ec3a604126eec868c673cd5328e Mon Sep 17 00:00:00 2001 From: Sirisha Devineni Date: Thu, 13 Sep 2012 23:44:08 +0530 Subject: Raise NotFound for non-existent volume snapshot create When user tries to create snapshot of a non-existent volume then handle the VolumeNotFound exception raised during snapshot creation and throw it as HTTPNotFound Fixes bug 1050388 Change-Id: I869ed6a29f66889636bcf92115117d407079e539 --- nova/api/openstack/volume/snapshots.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'nova/api') diff --git a/nova/api/openstack/volume/snapshots.py b/nova/api/openstack/volume/snapshots.py index bba3b0ced..74c5f75e6 100644 --- a/nova/api/openstack/volume/snapshots.py +++ b/nova/api/openstack/volume/snapshots.py @@ -151,7 +151,12 @@ class SnapshotsController(wsgi.Controller): snapshot = body['snapshot'] volume_id = snapshot['volume_id'] - volume = self.volume_api.get(context, volume_id) + + try: + volume = self.volume_api.get(context, volume_id) + except exception.VolumeNotFound as err: + raise exc.HTTPNotFound(explanation=unicode(err)) + force = snapshot.get('force', False) msg = _("Create snapshot from volume %s") LOG.audit(msg, volume_id, context=context) -- cgit