diff --git a/docker/api/default.conf b/docker/api/default.conf index c16124f..70825a7 100644 --- a/docker/api/default.conf +++ b/docker/api/default.conf @@ -13,12 +13,12 @@ server { add_header Access-Control-Allow-Origin *; - # location /header/json { - # proxy_pass http://127.0.0.1:7039/header/json; - # expires max; - # log_not_found off; - # access_log off; - # } + location /avatar { + proxy_pass http://127.0.0.1:7039/avatar; + expires max; + log_not_found off; + access_log off; + } location /json { alias /api/api/static/templates/header.json; diff --git a/docker/api/src/api/lib/avatars.py b/docker/api/src/api/lib/avatars.py index 6b694b8..1ba9f96 100644 --- a/docker/api/src/api/lib/avatars.py +++ b/docker/api/src/api/lib/avatars.py @@ -9,21 +9,33 @@ import logging import traceback import yaml, json -from jinja2 import Environment, FileSystemLoader - +import os from keycloak import KeycloakAdmin class Avatars(): - def __init__(self): - self.keycloak_admin = KeycloakAdmin(server_url="http://isard-sso-keycloak:8080/auth/", - username='admin', - password='keycloakkeycloak', - realm_name="master", - verify=True) + def __init__(self, + url="http://isard-sso-keycloak:8080/auth/", + username=os.environ['KEYCLOAK_USER'], + password=os.environ['KEYCLOAK_PASSWORD'], + realm='master', + verify=True): + self.url=url + self.username=username + self.password=password + self.realm=realm + self.verify=verify + + def connect(self): + self.keycloak_admin = KeycloakAdmin(server_url=self.url, + username=self.username, + password=self.password, + realm_name=self.realm, + verify=self.verify) def get_user_avatar(self,username): + self.connect() return self.keycloak_admin.get_user_id(username)