diff --git a/src/dstack/_internal/server/routers/users.py b/src/dstack/_internal/server/routers/users.py index 1feac5da36..6030416f50 100644 --- a/src/dstack/_internal/server/routers/users.py +++ b/src/dstack/_internal/server/routers/users.py @@ -15,7 +15,7 @@ UpdateUserRequest, ) from dstack._internal.server.security.permissions import Authenticated, GlobalAdmin -from dstack._internal.server.services import users +from dstack._internal.server.services import events, users from dstack._internal.server.utils.routers import ( CustomORJSONResponse, get_base_api_additional_responses, @@ -86,7 +86,7 @@ async def update_user( ): res = await users.update_user( session=session, - actor=user, + actor=events.UserActor.from_user(user), username=body.username, global_role=body.global_role, email=body.email, diff --git a/src/dstack/_internal/server/services/users.py b/src/dstack/_internal/server/services/users.py index e8fbcde782..3f8f6afa7b 100644 --- a/src/dstack/_internal/server/services/users.py +++ b/src/dstack/_internal/server/services/users.py @@ -130,7 +130,7 @@ async def create_user( async def update_user( session: AsyncSession, - actor: UserModel, + actor: events.AnyActor, username: str, global_role: GlobalRole, email: Optional[str] = None, @@ -152,7 +152,7 @@ async def update_user( events.emit( session, f"User updated. Updated fields: {', '.join(updated_fields) or ''}", - actor=events.UserActor.from_user(actor), + actor=actor, targets=[events.Target.from_model(user)], ) await session.commit()