diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index 5ce22c366f8..48d9d18fe46 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -11040,12 +11040,8 @@ async def login_v2(request: Request): # noqa: PLR0915 litellm_dashboard_ui += "/ui/" litellm_dashboard_ui += "?login=success" - response_content: dict = {"redirect_url": litellm_dashboard_ui} - if len(proxy_config.worker_registry) > 0: - response_content["token"] = jwt_token - json_response = JSONResponse( - content=response_content, + content={"redirect_url": litellm_dashboard_ui}, status_code=status.HTTP_200_OK, ) json_response.set_cookie(key="token", value=jwt_token) diff --git a/tests/test_litellm/proxy/test_proxy_server.py b/tests/test_litellm/proxy/test_proxy_server.py index ab6396a43e8..e6269936b5c 100644 --- a/tests/test_litellm/proxy/test_proxy_server.py +++ b/tests/test_litellm/proxy/test_proxy_server.py @@ -25,7 +25,6 @@ sys.path.insert( import litellm from litellm.proxy.auth.user_api_key_auth import user_api_key_auth from litellm.proxy.proxy_server import app, initialize -from litellm.types.proxy.control_plane_endpoints import WorkerRegistryEntry from litellm.utils import _invalidate_model_cost_lowercase_map example_embedding_result = { @@ -95,9 +94,6 @@ def test_login_v2_returns_redirect_url_and_sets_cookie(monkeypatch): monkeypatch.setattr("litellm.proxy.proxy_server.general_settings", {}) monkeypatch.setattr("litellm.proxy.proxy_server.premium_user", False) monkeypatch.setattr("litellm.proxy.proxy_server.prisma_client", mock_prisma_client) - mock_config = MagicMock() - mock_config.worker_registry = [] - monkeypatch.setattr("litellm.proxy.proxy_server.proxy_config", mock_config) monkeypatch.setattr("litellm.proxy.utils.get_server_root_path", lambda: "") monkeypatch.setattr("litellm.proxy.utils.get_proxy_base_url", lambda: None) @@ -108,10 +104,10 @@ def test_login_v2_returns_redirect_url_and_sets_cookie(monkeypatch): ) assert response.status_code == 200 - assert response.json() == { - "redirect_url": "http://testserver/ui/?login=success", - } - assert "token" not in response.json() + assert ( + response.json() + == {"redirect_url": "http://testserver/ui/?login=success"} + ) assert response.cookies.get("token") == "signed-token" mock_authenticate_user.assert_awaited_once_with( @@ -132,43 +128,6 @@ def test_login_v2_returns_redirect_url_and_sets_cookie(monkeypatch): ) -def test_login_v2_includes_token_in_body_when_control_plane(monkeypatch): - """Token should appear in the response body when workers are configured.""" - mock_prisma_client = MagicMock() - monkeypatch.setattr( - "litellm.proxy.auth.login_utils.authenticate_user", - AsyncMock(return_value={"user_id": "test-user"}), - ) - monkeypatch.setattr( - "litellm.proxy.auth.login_utils.create_ui_token_object", - MagicMock(return_value={"user_id": "test-user"}), - ) - monkeypatch.setattr("jwt.encode", MagicMock(return_value="signed-token")) - monkeypatch.setattr("litellm.proxy.proxy_server.master_key", "test-master-key") - monkeypatch.setattr("litellm.proxy.proxy_server.general_settings", {}) - monkeypatch.setattr("litellm.proxy.proxy_server.premium_user", False) - monkeypatch.setattr("litellm.proxy.proxy_server.prisma_client", mock_prisma_client) - mock_config = MagicMock() - mock_config.worker_registry = [ - WorkerRegistryEntry( - worker_id="team-a", name="Team A", url="https://worker-1:4001" - ), - ] - monkeypatch.setattr("litellm.proxy.proxy_server.proxy_config", mock_config) - monkeypatch.setattr("litellm.proxy.utils.get_server_root_path", lambda: "") - monkeypatch.setattr("litellm.proxy.utils.get_proxy_base_url", lambda: None) - - client = TestClient(app) - response = client.post( - "/v2/login", - json={"username": "alice", "password": "secret"}, - ) - - assert response.status_code == 200 - assert response.json()["token"] == "signed-token" - assert response.cookies.get("token") == "signed-token" - - def test_login_v2_returns_json_on_proxy_exception(monkeypatch): """Test that /v2/login returns JSON error when ProxyException is raised""" from litellm.proxy._types import ProxyErrorTypes, ProxyException