Revision 253f0c82 api/handlers.py
b/api/handlers.py | ||
---|---|---|
5 | 5 |
|
6 | 6 |
from piston.handler import BaseHandler, AnonymousBaseHandler |
7 | 7 |
from synnefo.api.faults import fault, noContent, accepted, created |
8 |
from synnefo.api.helpers import instance_to_server |
|
9 |
from synnefo.util.rapi import GanetiRapiClient |
|
10 |
from django.conf import settings |
|
11 |
|
|
12 |
rapi = GanetiRapiClient(*settings.GANETI_CLUSTER_INFO) |
|
8 | 13 |
|
9 | 14 |
VERSIONS = [ |
10 | 15 |
{ |
... | ... | |
38 | 43 |
def read(self, request, id=None): |
39 | 44 |
if id is None: |
40 | 45 |
return self.read_all(request) |
41 |
elif id is "detail":
|
|
46 |
elif id == "detail":
|
|
42 | 47 |
return self.read_all(request, detail=True) |
43 | 48 |
else: |
44 | 49 |
return self.read_one(request, id) |
45 | 50 |
|
46 | 51 |
def read_one(self, request, id): |
47 |
print ("server info %s" % id)
|
|
48 |
return {} |
|
52 |
instance = rapi.GetInstance(id)
|
|
53 |
return { "server": instance_to_server(instance) }
|
|
49 | 54 |
|
50 | 55 |
def read_all(self, request, detail=False): |
51 | 56 |
if not detail: |
52 |
print "server info all" |
|
57 |
instances = rapi.GetInstances(bulk=False) |
|
58 |
servers = [ { "id": id, "name": id } for id in instances ] |
|
53 | 59 |
else: |
54 |
print "server info all detail" |
|
55 |
return {} |
|
60 |
instances = rapi.GetInstances(bulk=True) |
|
61 |
servers = [] |
|
62 |
for instance in instances: |
|
63 |
servers.append(instance_to_server(instance)) |
|
64 |
return { "servers": servers } |
|
56 | 65 |
|
57 | 66 |
def create(self, request): |
58 | 67 |
return accepted |
Also available in: Unified diff