fix
This commit is contained in:
parent
2d31aa1f66
commit
1657fdf67d
@ -1,43 +0,0 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
|
||||
SETTINGS_PREFIX = "OPENBAO__SETTINGS__"
|
||||
RAISA_ENV_KEYS = (
|
||||
"AUTHORIZE_URL",
|
||||
"TOKEN_URL",
|
||||
"REFRESH_TOKEN_URL",
|
||||
"LOGOUT_URL",
|
||||
"JWKS_URL",
|
||||
"CLIENT_ID",
|
||||
"CLIENT_SECRET",
|
||||
"REDIRECT_URI",
|
||||
"SCOPE",
|
||||
"APP_ID",
|
||||
"APP_NAMESPACE",
|
||||
"APP_NAME",
|
||||
"LOCATION",
|
||||
)
|
||||
|
||||
|
||||
def get_setting(name: str) -> str:
|
||||
prefixed = os.getenv(f"{SETTINGS_PREFIX}{name}", "").strip()
|
||||
if prefixed:
|
||||
return prefixed
|
||||
return os.getenv(name, "").strip()
|
||||
|
||||
|
||||
def get_location() -> str:
|
||||
return get_setting("LOCATION").lower() or "prod"
|
||||
|
||||
|
||||
def apply_raisa_env_aliases() -> None:
|
||||
"""
|
||||
Заполняет обычные имена переменных из OPENBAO__SETTINGS__,
|
||||
чтобы raisa_streamlit_oauth работал одинаково в локальном и raisa runtime.
|
||||
"""
|
||||
for key in RAISA_ENV_KEYS:
|
||||
prefixed = os.getenv(f"{SETTINGS_PREFIX}{key}", "").strip()
|
||||
if prefixed and not os.getenv(key):
|
||||
os.environ[key] = prefixed
|
||||
|
||||
11
app/ui.py
11
app/ui.py
@ -2,17 +2,6 @@ from __future__ import annotations
|
||||
|
||||
import streamlit as st
|
||||
|
||||
from app.config import SETTINGS_PREFIX, get_location
|
||||
|
||||
|
||||
def render_env_check() -> None:
|
||||
with st.expander("Проверка env окружения"):
|
||||
st.write(f"Текущий режим: `{get_location()}`")
|
||||
st.code(
|
||||
f"{SETTINGS_PREFIX}LOCATION=local # для локального mock-режима",
|
||||
language="text",
|
||||
)
|
||||
|
||||
|
||||
def render_profile(profile: dict) -> None:
|
||||
st.success("Аутентификация через Keycloak Raisa выполнена.")
|
||||
|
||||
2
main.py
2
main.py
@ -2,13 +2,11 @@ import streamlit as st
|
||||
from dotenv import load_dotenv
|
||||
|
||||
from app.auth.service import AuthService, clear_session
|
||||
from app.config import apply_raisa_env_aliases
|
||||
from app.ui import render_env_check, render_profile
|
||||
|
||||
|
||||
def main() -> None:
|
||||
load_dotenv()
|
||||
apply_raisa_env_aliases()
|
||||
|
||||
st.set_page_config(page_title="SFM Streamlit", page_icon=":lock:", layout="wide")
|
||||
st.title("SFM Streamlit: Keycloak-only auth")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user