Revision 468ba00b snf-cyclades-app/synnefo/helpdesk/views.py
b/snf-cyclades-app/synnefo/helpdesk/views.py | ||
---|---|---|
45 | 45 |
|
46 | 46 |
from snf_django.lib.astakos import get_user |
47 | 47 |
from synnefo.db.models import VirtualMachine, NetworkInterface, Network |
48 |
from snf_django.lib import astakos
|
|
48 |
from astakosclient import AstakosClient
|
|
49 | 49 |
|
50 | 50 |
# server actions specific imports |
51 | 51 |
from synnefo.api import servers |
... | ... | |
58 | 58 |
VM_SEARCH_REGEX = re.compile('vm(-){0,}(?P<vmid>[0-9]+)') |
59 | 59 |
|
60 | 60 |
|
61 |
|
|
62 | 61 |
def get_token_from_cookie(request, cookiename): |
63 | 62 |
""" |
64 | 63 |
Extract token from the cookie name provided. Cookie should be in the same |
... | ... | |
81 | 80 |
PERMITTED_GROUPS = getattr(settings, 'HELPDESK_PERMITTED_GROUPS', ['helpdesk']) |
82 | 81 |
SHOW_DELETED_VMS = getattr(settings, 'HELPDESK_SHOW_DELETED_VMS', False) |
83 | 82 |
|
84 |
# guess cyclades setting too |
|
85 |
USER_CATALOG_URL = getattr(settings, 'CYCLADES_USER_CATALOG_URL', None) |
|
86 |
USER_CATALOG_URL = getattr(settings, 'HELPDESK_USER_CATALOG_URL', |
|
87 |
USER_CATALOG_URL) |
|
88 |
|
|
89 | 83 |
|
90 | 84 |
def token_check(func): |
91 | 85 |
""" |
... | ... | |
115 | 109 |
raise Http404 |
116 | 110 |
|
117 | 111 |
token = get_token_from_cookie(request, AUTH_COOKIE_NAME) |
118 |
get_user(request, settings.ASTAKOS_URL, fallback_token=token) |
|
112 |
get_user(request, settings.ASTAKOS_URL, |
|
113 |
fallback_token=token, logger=logger) |
|
119 | 114 |
if hasattr(request, 'user') and request.user: |
120 | 115 |
groups = request.user.get('groups', []) |
121 | 116 |
|
... | ... | |
199 | 194 |
account = None |
200 | 195 |
search_query = vmid |
201 | 196 |
|
197 |
astakos = AstakosClient(settings.ASTAKOS_URL, retry=2, |
|
198 |
use_pool=True, logger=logger) |
|
199 |
|
|
202 | 200 |
if is_uuid: |
203 | 201 |
account = search_query |
204 |
account_name = astakos.get_displayname(auth_token, account, |
|
205 |
USER_CATALOG_URL) |
|
202 |
account_name = astakos.get_username(auth_token, account) |
|
206 | 203 |
|
207 | 204 |
if account_exists and not is_uuid: |
208 | 205 |
account_name = search_query |
209 |
account = astakos.get_user_uuid(auth_token, account_name, |
|
210 |
USER_CATALOG_URL) |
|
206 |
account = astakos.get_uuid(auth_token, account_name) |
|
211 | 207 |
|
212 | 208 |
if not account: |
213 | 209 |
account_exists = False |
Also available in: Unified diff