Revision bf5c82dc snf-cyclades-app/synnefo/api/servers.py
b/snf-cyclades-app/synnefo/api/servers.py | ||
---|---|---|
32 | 32 |
# or implied, of GRNET S.A. |
33 | 33 |
|
34 | 34 |
from base64 import b64decode |
35 |
from logging import getLogger |
|
36 | 35 |
|
37 | 36 |
from django.conf import settings |
38 | 37 |
from django.conf.urls.defaults import patterns |
... | ... | |
44 | 43 |
from synnefo.api import faults, util |
45 | 44 |
from synnefo.api.actions import server_actions |
46 | 45 |
from synnefo.api.common import method_not_allowed |
47 |
from synnefo.db.models import Backend, VirtualMachine, VirtualMachineMetadata
|
|
46 |
from synnefo.db.models import VirtualMachine, VirtualMachineMetadata |
|
48 | 47 |
from synnefo.logic.backend import create_instance, delete_instance |
49 | 48 |
from synnefo.logic.utils import get_rsapi_state |
50 | 49 |
from synnefo.util.rapi import GanetiApiError |
51 | 50 |
from synnefo.logic.backend_allocator import BackendAllocator |
52 | 51 |
|
53 |
from django.utils import importlib |
|
54 |
|
|
55 |
|
|
56 | 52 |
|
53 |
from logging import getLogger |
|
57 | 54 |
log = getLogger('synnefo.api') |
58 | 55 |
|
59 | 56 |
urlpatterns = patterns('synnefo.api.servers', |
... | ... | |
162 | 159 |
# badRequest (400), |
163 | 160 |
# overLimit (413) |
164 | 161 |
|
165 |
log.debug('list_servers detail=%s', detail)
|
|
162 |
log.info('list_servers detail=%s', detail)
|
|
166 | 163 |
user_vms = VirtualMachine.objects.filter(userid=request.user_uniq) |
167 | 164 |
|
168 | 165 |
since = util.isoparse(request.GET.get('changes-since')) |
... | ... | |
202 | 199 |
# serverCapacityUnavailable (503), |
203 | 200 |
# overLimit (413) |
204 | 201 |
req = util.get_request_dict(request) |
205 |
log.debug('create_server %s', req)
|
|
202 |
log.info('create_server %s', req)
|
|
206 | 203 |
|
207 | 204 |
try: |
208 | 205 |
server = req['server'] |
... | ... | |
285 | 282 |
imageid=image_id, |
286 | 283 |
flavor=flavor) |
287 | 284 |
|
285 |
log.info("Create VM %s, with NIC %s, on Backend %s", vm, nic, backend) |
|
286 |
|
|
288 | 287 |
try: |
289 | 288 |
jobID = create_instance(vm, nic, flavor, image, password, personality) |
290 | 289 |
except GanetiApiError: |
... | ... | |
323 | 322 |
# itemNotFound (404), |
324 | 323 |
# overLimit (413) |
325 | 324 |
|
326 |
log.debug('get_server_details %s', server_id)
|
|
325 |
log.info('get_server_details %s', server_id)
|
|
327 | 326 |
vm = util.get_vm(server_id, request.user_uniq) |
328 | 327 |
server = vm_to_dict(vm, detail=True) |
329 | 328 |
return render_server(request, server) |
... | ... | |
342 | 341 |
# overLimit (413) |
343 | 342 |
|
344 | 343 |
req = util.get_request_dict(request) |
345 |
log.debug('update_server_name %s %s', server_id, req)
|
|
344 |
log.info('update_server_name %s %s', server_id, req)
|
|
346 | 345 |
|
347 | 346 |
try: |
348 | 347 |
name = req['server']['name'] |
... | ... | |
368 | 367 |
# buildInProgress (409), |
369 | 368 |
# overLimit (413) |
370 | 369 |
|
371 |
log.debug('delete_server %s', server_id)
|
|
370 |
log.info('delete_server %s', server_id)
|
|
372 | 371 |
vm = util.get_vm(server_id, request.user_uniq) |
373 | 372 |
delete_instance(vm) |
374 | 373 |
return HttpResponse(status=204) |
... | ... | |
377 | 376 |
@util.api_method('POST') |
378 | 377 |
def server_action(request, server_id): |
379 | 378 |
req = util.get_request_dict(request) |
380 |
log.debug('server_action %s %s', server_id, req)
|
|
379 |
log.info('server_action %s %s', server_id, req)
|
|
381 | 380 |
vm = util.get_vm(server_id, request.user_uniq) |
382 | 381 |
if len(req) != 1: |
383 | 382 |
raise faults.BadRequest("Malformed request") |
... | ... | |
403 | 402 |
# badRequest (400), |
404 | 403 |
# overLimit (413) |
405 | 404 |
|
406 |
log.debug('list_addresses %s', server_id)
|
|
405 |
log.info('list_addresses %s', server_id)
|
|
407 | 406 |
vm = util.get_vm(server_id, request.user_uniq) |
408 | 407 |
addresses = [nic_to_dict(nic) for nic in vm.nics.all()] |
409 | 408 |
|
... | ... | |
425 | 424 |
# itemNotFound (404), |
426 | 425 |
# overLimit (413) |
427 | 426 |
|
428 |
log.debug('list_addresses_by_network %s %s', server_id, network_id)
|
|
427 |
log.info('list_addresses_by_network %s %s', server_id, network_id)
|
|
429 | 428 |
machine = util.get_vm(server_id, request.user_uniq) |
430 | 429 |
network = util.get_network(network_id, request.user_uniq) |
431 | 430 |
nic = util.get_nic(machine, network) |
... | ... | |
448 | 447 |
# badRequest (400), |
449 | 448 |
# overLimit (413) |
450 | 449 |
|
451 |
log.debug('list_server_metadata %s', server_id)
|
|
450 |
log.info('list_server_metadata %s', server_id)
|
|
452 | 451 |
vm = util.get_vm(server_id, request.user_uniq) |
453 | 452 |
metadata = dict((m.meta_key, m.meta_value) for m in vm.metadata.all()) |
454 | 453 |
return util.render_metadata(request, metadata, use_values=True, status=200) |
... | ... | |
466 | 465 |
# overLimit (413) |
467 | 466 |
|
468 | 467 |
req = util.get_request_dict(request) |
469 |
log.debug('update_server_metadata %s %s', server_id, req)
|
|
468 |
log.info('update_server_metadata %s %s', server_id, req)
|
|
470 | 469 |
vm = util.get_vm(server_id, request.user_uniq) |
471 | 470 |
try: |
472 | 471 |
metadata = req['metadata'] |
... | ... | |
494 | 493 |
# badRequest (400), |
495 | 494 |
# overLimit (413) |
496 | 495 |
|
497 |
log.debug('get_server_metadata_item %s %s', server_id, key)
|
|
496 |
log.info('get_server_metadata_item %s %s', server_id, key)
|
|
498 | 497 |
vm = util.get_vm(server_id, request.user_uniq) |
499 | 498 |
meta = util.get_vm_meta(vm, key) |
500 | 499 |
d = {meta.meta_key: meta.meta_value} |
... | ... | |
515 | 514 |
# overLimit (413) |
516 | 515 |
|
517 | 516 |
req = util.get_request_dict(request) |
518 |
log.debug('create_server_metadata_item %s %s %s', server_id, key, req)
|
|
517 |
log.info('create_server_metadata_item %s %s %s', server_id, key, req)
|
|
519 | 518 |
vm = util.get_vm(server_id, request.user_uniq) |
520 | 519 |
try: |
521 | 520 |
metadict = req['meta'] |
... | ... | |
549 | 548 |
# badMediaType(415), |
550 | 549 |
# overLimit (413), |
551 | 550 |
|
552 |
log.debug('delete_server_metadata_item %s %s', server_id, key)
|
|
551 |
log.info('delete_server_metadata_item %s %s', server_id, key)
|
|
553 | 552 |
vm = util.get_vm(server_id, request.user_uniq) |
554 | 553 |
meta = util.get_vm_meta(vm, key) |
555 | 554 |
meta.delete() |
... | ... | |
567 | 566 |
# itemNotFound (404), |
568 | 567 |
# overLimit (413) |
569 | 568 |
|
570 |
log.debug('server_stats %s', server_id)
|
|
569 |
log.info('server_stats %s', server_id)
|
|
571 | 570 |
vm = util.get_vm(server_id, request.user_uniq) |
572 | 571 |
#secret = util.encrypt(vm.backend_vm_id) |
573 | 572 |
secret = vm.backend_vm_id # XXX disable backend id encryption |
Also available in: Unified diff