Load ceilometer credentials from controller
[plstackapi.git] / planetstack / core / views / stats.py
index 46ebe2e..58f33e5 100644 (file)
@@ -1,11 +1,19 @@
 from django.http import HttpResponse
 from monitor import driver
+from core.models import *
 import json
 
 def Stats(request):
     model = request.GET['model_name']
     pk = int(request.GET['pk'])
-    meter = int(request.GET['meter'])
+    meter = request.GET['meter']
+    controller_name = request.GET['controller_name']
     
-    meters = monitor.get_meters(meter, model, pk)
-    return json.dumps(meters)
+    controller = Controller.objects.filter(name=controller_name)[0]
+    keystone = {'username':controller.admin_user, 'password':controller.admin_password, 'tenant_name':controller.admin_tenant, 'auth_url':controller.auth_url, 'cacert':'/etc/ssl/certs/ca-certificates.crt'}
+
+    for k,v in keystone.items():
+        keystone['os_'+k] = v
+    
+    meters = driver.get_meter(meter, model, pk, keystone)
+    return HttpResponse(json.dumps(meters))