Revision 6ef51e9f snf-app/synnefo/api/servers.py

b/snf-app/synnefo/api/servers.py
1
# Copyright 2011 GRNET S.A. All rights reserved.
1
# Copyright 2011-2012 GRNET S.A. All rights reserved.
2 2
# 
3 3
# Redistribution and use in source and binary forms, with or
4 4
# without modification, are permitted provided that the following
......
161 161
    #                       overLimit (413)
162 162
    
163 163
    log.debug('list_servers detail=%s', detail)
164
    user_vms = VirtualMachine.objects.filter(owner=request.user)
164
    user_vms = VirtualMachine.objects.filter(userid=request.user)
165 165
    since = util.isoparse(request.GET.get('changes-since'))
166 166
    
167 167
    if since:
......
197 197

  
198 198
    req = util.get_request_dict(request)
199 199
    log.debug('create_server %s', req)
200
    owner = request.user
201 200
    
202 201
    try:
203 202
        server = req['server']
......
231 230
            raise faults.BadRequest("Malformed personality in request")
232 231
    
233 232
    image = {}
234
    try:
235
        img = util.get_image(image_id, owner)
236
        image['backend_id'] = img.backend_id
237
        image['format'] = img.format
238
        image['metadata'] = dict((m.meta_key.upper(), m.meta_value)
239
                for m in img.metadata.all())
240
    except faults.ItemNotFound:
241
        img = util.get_backend_image(image_id, owner)
242
        properties = img.get('properties', {})
243
        image['backend_id'] = img['location']
244
        image['format'] = img['disk_format']
245
        image['metadata'] = dict((key.upper(), val)
246
                for key, val in properties.items())
233
    img = util.get_image(image_id, request.user)
234
    properties = img.get('properties', {})
235
    image['backend_id'] = img['location']
236
    image['format'] = img['disk_format']
237
    image['metadata'] = dict((key.upper(), val) \
238
                             for key, val in properties.items())
247 239
    
248 240
    flavor = util.get_flavor(flavor_id)
249 241
    password = util.random_password()
250 242
    
251
    count = VirtualMachine.objects.filter(owner=owner, deleted=False).count()
243
    count = VirtualMachine.objects.filter(userid=request.user,
244
                                          deleted=False).count()
252 245
    if count >= settings.MAX_VMS_PER_USER:
253 246
        raise faults.OverLimit("Server count limit exceeded for your account.")
254 247
    
255 248
    # We must save the VM instance now, so that it gets a valid vm.backend_id.
256 249
    vm = VirtualMachine.objects.create(
257 250
        name=name,
258
        owner=owner,
251
        userid=request.user,
259 252
        imageid=image_id,
260 253
        flavor=flavor)
261 254
    
......
271 264
            meta_value=val,
272 265
            vm=vm)
273 266
    
274
    log.info('User %d created vm with %s cpus, %s ram and %s storage',
275
                    owner.id, flavor.cpu, flavor.ram, flavor.disk)
267
    log.info('User %s created vm with %s cpus, %s ram and %s storage',
268
             request.user, flavor.cpu, flavor.ram, flavor.disk)
276 269
    
277 270
    server = vm_to_dict(vm, detail=True)
278 271
    server['status'] = 'BUILD'
......
392 385
    #                       overLimit (413)
393 386
    
394 387
    log.debug('list_addresses_by_network %s %s', server_id, network_id)
395
    owner = request.user
396
    machine = util.get_vm(server_id, owner)
397
    network = util.get_network(network_id, owner)
388
    machine = util.get_vm(server_id, request.user)
389
    network = util.get_network(network_id, request.user)
398 390
    nic = util.get_nic(machine, network)
399 391
    address = nic_to_dict(nic)
400 392
    

Also available in: Unified diff