Revision f759041f snf-pithos-app/pithos/api/util.py
b/snf-pithos-app/pithos/api/util.py | ||
---|---|---|
56 | 56 |
BACKEND_QUEUE_EXCHANGE, |
57 | 57 |
ASTAKOSCLIENT_POOLSIZE, |
58 | 58 |
SERVICE_TOKEN, |
59 |
ASTAKOS_BASE_URL,
|
|
59 |
ASTAKOS_AUTH_URL,
|
|
60 | 60 |
BACKEND_ACCOUNT_QUOTA, |
61 | 61 |
BACKEND_CONTAINER_QUOTA, |
62 | 62 |
BACKEND_VERSIONING, BACKEND_FREE_VERSIONING, |
... | ... | |
111 | 111 |
for timestamp in timestamps: |
112 | 112 |
if timestamp in d and d[timestamp]: |
113 | 113 |
d[timestamp] = utils.isoformat( |
114 |
datetime.fromtimestamp(d[timestamp]))
|
|
114 |
datetime.fromtimestamp(d[timestamp])) |
|
115 | 115 |
return dict([(k.lower().replace('-', '_'), v) for k, v in d.iteritems()]) |
116 | 116 |
|
117 | 117 |
|
... | ... | |
298 | 298 |
########################## |
299 | 299 |
|
300 | 300 |
def retrieve_displayname(token, uuid, fail_silently=True): |
301 |
astakos = AstakosClient(ASTAKOS_BASE_URL, retry=2, use_pool=True, |
|
301 |
astakos = AstakosClient(token, ASTAKOS_AUTH_URL, |
|
302 |
retry=2, use_pool=True, |
|
302 | 303 |
logger=logger) |
303 | 304 |
try: |
304 |
displayname = astakos.get_username(token, uuid)
|
|
305 |
displayname = astakos.get_username(uuid) |
|
305 | 306 |
except NoUserName: |
306 | 307 |
if not fail_silently: |
307 | 308 |
raise ItemNotExists(uuid) |
... | ... | |
312 | 313 |
|
313 | 314 |
|
314 | 315 |
def retrieve_displaynames(token, uuids, return_dict=False, fail_silently=True): |
315 |
astakos = AstakosClient(ASTAKOS_BASE_URL, retry=2, use_pool=True, |
|
316 |
astakos = AstakosClient(token, ASTAKOS_AUTH_URL, |
|
317 |
retry=2, use_pool=True, |
|
316 | 318 |
logger=logger) |
317 |
catalog = astakos.get_usernames(token, uuids) or {}
|
|
319 |
catalog = astakos.get_usernames(uuids) or {} |
|
318 | 320 |
missing = list(set(uuids) - set(catalog)) |
319 | 321 |
if missing and not fail_silently: |
320 | 322 |
raise ItemNotExists('Unknown displaynames: %s' % ', '.join(missing)) |
... | ... | |
325 | 327 |
if is_uuid(displayname): |
326 | 328 |
return displayname |
327 | 329 |
|
328 |
astakos = AstakosClient(ASTAKOS_BASE_URL, retry=2, use_pool=True, |
|
330 |
astakos = AstakosClient(token, ASTAKOS_AUTH_URL, |
|
331 |
retry=2, use_pool=True, |
|
329 | 332 |
logger=logger) |
330 | 333 |
try: |
331 |
uuid = astakos.get_uuid(token, displayname)
|
|
334 |
uuid = astakos.get_uuid(displayname) |
|
332 | 335 |
except NoUUID: |
333 | 336 |
raise ItemNotExists(displayname) |
334 | 337 |
return uuid |
335 | 338 |
|
336 | 339 |
|
337 | 340 |
def retrieve_uuids(token, displaynames, return_dict=False, fail_silently=True): |
338 |
astakos = AstakosClient(ASTAKOS_BASE_URL, retry=2, use_pool=True, |
|
341 |
astakos = AstakosClient(token, ASTAKOS_AUTH_URL, |
|
342 |
retry=2, use_pool=True, |
|
339 | 343 |
logger=logger) |
340 |
catalog = astakos.get_uuids(token, displaynames) or {}
|
|
344 |
catalog = astakos.get_uuids(displaynames) or {} |
|
341 | 345 |
missing = list(set(displaynames) - set(catalog)) |
342 | 346 |
if missing and not fail_silently: |
343 | 347 |
raise ItemNotExists('Unknown uuids: %s' % ', '.join(missing)) |
... | ... | |
1010 | 1014 |
queue_module=BACKEND_QUEUE_MODULE, |
1011 | 1015 |
queue_hosts=BACKEND_QUEUE_HOSTS, |
1012 | 1016 |
queue_exchange=BACKEND_QUEUE_EXCHANGE, |
1013 |
astakos_url=ASTAKOS_BASE_URL,
|
|
1017 |
astakos_auth_url=ASTAKOS_AUTH_URL,
|
|
1014 | 1018 |
service_token=SERVICE_TOKEN, |
1015 | 1019 |
astakosclient_poolsize=ASTAKOSCLIENT_POOLSIZE, |
1016 | 1020 |
free_versioning=BACKEND_FREE_VERSIONING, |
... | ... | |
1063 | 1067 |
|
1064 | 1068 |
def get_pithos_usage(token): |
1065 | 1069 |
"""Get Pithos Usage from astakos.""" |
1066 |
astakos = AstakosClient(ASTAKOS_BASE_URL, retry=2, use_pool=True, |
|
1070 |
astakos = AstakosClient(token, ASTAKOS_AUTH_URL, |
|
1071 |
retry=2, use_pool=True, |
|
1067 | 1072 |
logger=logger) |
1068 |
quotas = astakos.get_quotas(token)['system']
|
|
1073 |
quotas = astakos.get_quotas()['system'] |
|
1069 | 1074 |
pithos_resources = [r['name'] for r in resources] |
1070 | 1075 |
map(quotas.pop, filter(lambda k: k not in pithos_resources, quotas.keys())) |
1071 | 1076 |
return quotas.popitem()[-1] # assume only one resource |
... | ... | |
1080 | 1085 |
@api.api_method(http_method=http_method, token_required=token_required, |
1081 | 1086 |
user_required=user_required, |
1082 | 1087 |
logger=logger, format_allowed=format_allowed, |
1083 |
astakos_url=ASTAKOS_BASE_URL,
|
|
1088 |
astakos_auth_url=ASTAKOS_AUTH_URL,
|
|
1084 | 1089 |
serializations=serializations, |
1085 | 1090 |
strict_serlization=strict_serlization) |
1086 | 1091 |
@wraps(func) |
Also available in: Unified diff