Revision 83f46e8b snf-cyclades-app/synnefo/volume/volumes.py
b/snf-cyclades-app/synnefo/volume/volumes.py | ||
---|---|---|
86 | 86 |
elif source_type == "snapshot": |
87 | 87 |
source_snapshot = util.get_snapshot(user_id, source_uuid, |
88 | 88 |
exception=faults.BadRequest) |
89 |
snap_status = source_snapshot.get("status", "").upper() |
|
90 |
if snap_status != "AVAILABLE": |
|
91 |
raise faults.BadRequest("Cannot create volume from snapshot, while" |
|
92 |
" snapshot is in '%s' status" % |
|
93 |
snap_status) |
|
89 | 94 |
source = Volume.prefix_source(source_uuid, |
90 | 95 |
source_type="snapshot") |
91 | 96 |
if size is None: |
... | ... | |
98 | 103 |
elif source_type == "image": |
99 | 104 |
source_image = util.get_image(user_id, source_uuid, |
100 | 105 |
exception=faults.BadRequest) |
106 |
img_status = source_image.get("status", "").upper() |
|
107 |
if img_status != "AVAILABLE": |
|
108 |
raise faults.BadRequest("Cannot create volume from image, while" |
|
109 |
" image is in '%s' status" % img_status) |
|
101 | 110 |
if size is None: |
102 | 111 |
raise faults.BadRequest("Volume size is required") |
103 | 112 |
elif (size << 30) < int(source_image["size"]): |
Also available in: Unified diff