panel-install-fix
Some checks failed
Deploy on push / deploy (push) Failing after 32s

This commit is contained in:
2025-09-27 13:08:57 +03:00
parent 0f6cc61286
commit 97cb0f999c
4 changed files with 15 additions and 187 deletions

View File

@@ -787,7 +787,12 @@ async def oauth_callback_http(request: Request) -> JSONResponse | RedirectRespon
logger.error(f"❌ Exception while creating session token for {provider}: {e}", exc_info=True)
raise # Re-raise для обработки в основном except блоке
if not session_token:
logger.error(f"❌ Session token is empty for {provider}")
raise ValueError("Session token creation failed")
logger.info(f"✅ Session token created for {provider}: token_length={len(session_token)}")
logger.info(f"🔧 Session token preview: {session_token[:20]}..." if len(session_token) > 20 else f"🔧 Session token: {session_token}")
# Получаем redirect_uri из OAuth данных
redirect_uri = oauth_data.get("redirect_uri", FRONTEND_URL)
@@ -844,6 +849,7 @@ async def oauth_callback_http(request: Request) -> JSONResponse | RedirectRespon
response = RedirectResponse(url=final_redirect_url, status_code=307)
# 🍪 Устанавливаем httpOnly cookie для безопасности
cookie_domain = ".discours.io" if "discours.io" in parsed_redirect.netloc else None
response.set_cookie(
SESSION_COOKIE_NAME,
session_token,
@@ -852,10 +858,12 @@ async def oauth_callback_http(request: Request) -> JSONResponse | RedirectRespon
samesite=SESSION_COOKIE_SAMESITE,
max_age=SESSION_COOKIE_MAX_AGE,
path="/", # Важно: устанавливаем path="/" для доступности cookie во всех путях
domain=".discours.io" if "discours.io" in parsed_redirect.netloc else None, # Поддержка поддоменов
domain=cookie_domain, # Поддержка поддоменов
)
logger.info(f"OAuth успешно завершен для {provider}, user_id={author.id}")
logger.info(f"🍪 Cookie установлен: name={SESSION_COOKIE_NAME}, domain={cookie_domain}, secure={SESSION_COOKIE_SECURE}")
logger.info(f"🔗 Final redirect: {final_redirect_url}")
logger.info(f"✅ OAuth успешно завершен для {provider}, user_id={author.id}")
return response
except Exception as e: