Revision e780930a snf-cyclades-app/synnefo/admin/stats.py

b/snf-cyclades-app/synnefo/admin/stats.py
43 43

  
44 44
from snf_django.lib.astakos import UserCache
45 45
from synnefo.db.models import VirtualMachine, Network, Backend
46
from synnefo.api.util import get_image
46
from synnefo.plankton.utils import image_backend
47 47
from synnefo.logic import backend as backend_mod
48 48

  
49 49

  
......
122 122

  
123 123
    active_servers_images = active_servers.values("imageid", "userid")\
124 124
                                          .annotate(number=Count("imageid"))
125

  
125 126
    image_cache = ImageCache()
126 127
    image_stats = defaultdict(int)
127 128
    for result in active_servers_images:
......
200 201
    def get_image(self, imageid, userid):
201 202
        if not imageid in self.images:
202 203
            try:
203
                image = get_image(imageid, userid)
204
                with image_backend(userid) as ib:
205
                    image = ib.get_image(imageid)
206
                properties = image.get("properties")
207
                os = properties.get("os",
208
                                    properties.get("osfamily", "unknown"))
204 209
                owner = image["owner"]
205 210
                owner = "system" if image["owner"] == self.system_user_uuid\
206 211
                        else "user"
207
                self.images[imageid] = owner + ":" + image["name"]
212
                self.images[imageid] = owner + ":" + os
208 213
            except Exception:
209 214
                self.images[imageid] = "unknown:unknown"
210 215

  

Also available in: Unified diff