Revision aa8230bd

b/snf-cyclades-app/synnefo/api/flavors.py
95 95
    #                       overLimit (413)
96 96
    
97 97
    log.debug('get_flavor_details %s', flavor_id)
98
    flavor = util.get_flavor(flavor_id)
98
    flavor = util.get_flavor(flavor_id, include_deleted=True)
99 99
    flavordict = flavor_to_dict(flavor, detail=True)
100 100

  
101 101
    if request.serialization == 'xml':
b/snf-cyclades-app/synnefo/api/servers.py
242 242
        image['metadata'] = dict((key.upper(), val) \
243 243
                                 for key, val in properties.items())
244 244

  
245
        flavor = util.get_flavor(flavor_id)
245
        # Ensure that request if for active flavor
246
        flavor = util.get_flavor(flavor_id, include_deleted=False)
246 247
        password = util.random_password()
247 248

  
248 249
        count = VirtualMachine.objects.filter(userid=request.user_uniq,
b/snf-cyclades-app/synnefo/api/util.py
191 191
        backend.close()
192 192

  
193 193

  
194
def get_flavor(flavor_id):
194
def get_flavor(flavor_id, include_deleted=False):
195 195
    """Return a Flavor instance or raise ItemNotFound."""
196 196

  
197 197
    try:
198 198
        flavor_id = int(flavor_id)
199
        # Ensure that request if for active flavor
200
        return Flavor.objects.get(id=flavor_id, deleted=False)
199
        if include_deleted:
200
            return Flavor.objects.get(id=flavor_id)
201
        else:
202
            return Flavor.objects.get(id=flavor_id, deleted=include_deleted)
201 203
    except (ValueError, Flavor.DoesNotExist):
202 204
        raise ItemNotFound('Flavor not found.')
203 205

  

Also available in: Unified diff