Skip to content

Commit

Permalink
chore: Add override annotations to RBAC methods (#2891)
Browse files Browse the repository at this point in the history
  • Loading branch information
fregataa authored Oct 7, 2024
1 parent a322178 commit d909a3e
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 0 deletions.
9 changes: 9 additions & 0 deletions src/ai/backend/manager/models/agent.py
Original file line number Diff line number Diff line change
Expand Up @@ -832,6 +832,7 @@ async def calculate_permission(
permissions = await self._calculate_permission_by_predefined_roles(roles)
return permissions

@override
async def build_ctx_in_system_scope(
self,
ctx: ClientContext,
Expand All @@ -845,6 +846,7 @@ async def build_ctx_in_system_scope(
perm_ctx.merge(to_be_merged)
return perm_ctx

@override
async def build_ctx_in_domain_scope(
self,
ctx: ClientContext,
Expand All @@ -870,6 +872,7 @@ async def build_ctx_in_domain_scope(
aid_permission_map[ag.id] = permissions
return AgentPermissionContext(object_id_to_additional_permission_map=aid_permission_map)

@override
async def build_ctx_in_project_scope(
self,
ctx: ClientContext,
Expand All @@ -895,6 +898,7 @@ async def build_ctx_in_project_scope(
aid_permission_map[ag.id] = permissions
return AgentPermissionContext(object_id_to_additional_permission_map=aid_permission_map)

@override
async def build_ctx_in_user_scope(
self,
ctx: ClientContext,
Expand Down Expand Up @@ -928,30 +932,35 @@ async def build_ctx_in_user_scope(
aid_permission_map[ag.id] = permissions
return AgentPermissionContext(object_id_to_additional_permission_map=aid_permission_map)

@override
@classmethod
async def _permission_for_owner(
cls,
) -> frozenset[AgentPermission]:
return OWNER_PERMISSIONS

@override
@classmethod
async def _permission_for_admin(
cls,
) -> frozenset[AgentPermission]:
return ADMIN_PERMISSIONS

@override
@classmethod
async def _permission_for_monitor(
cls,
) -> frozenset[AgentPermission]:
return MONITOR_PERMISSIONS

@override
@classmethod
async def _permission_for_privileged_member(
cls,
) -> frozenset[AgentPermission]:
return PRIVILEGED_MEMBER_PERMISSIONS

@override
@classmethod
async def _permission_for_member(
cls,
Expand Down
9 changes: 9 additions & 0 deletions src/ai/backend/manager/models/session.py
Original file line number Diff line number Diff line change
Expand Up @@ -2005,6 +2005,7 @@ async def calculate_permission(
permissions = await self._calculate_permission_by_predefined_roles(roles)
return permissions

@override
async def build_ctx_in_system_scope(
self,
ctx: ClientContext,
Expand All @@ -2018,6 +2019,7 @@ async def build_ctx_in_system_scope(
perm_ctx.merge(to_be_merged)
return perm_ctx

@override
async def build_ctx_in_domain_scope(
self,
ctx: ClientContext,
Expand All @@ -2032,6 +2034,7 @@ async def build_ctx_in_domain_scope(
permission_ctx.merge(_project_perm_ctx)
return permission_ctx

@override
async def build_ctx_in_project_scope(
self,
ctx: ClientContext,
Expand All @@ -2042,6 +2045,7 @@ async def build_ctx_in_project_scope(
permission_ctx.merge(_user_perm_ctx)
return permission_ctx

@override
async def build_ctx_in_user_scope(
self,
ctx: ClientContext,
Expand Down Expand Up @@ -2120,30 +2124,35 @@ async def _build_at_user_scope_non_recursively(
result = ComputeSessionPermissionContext(user_id_to_permission_map={user_id: permissions})
return result

@override
@classmethod
async def _permission_for_owner(
cls,
) -> frozenset[ComputeSessionPermission]:
return OWNER_PERMISSIONS

@override
@classmethod
async def _permission_for_admin(
cls,
) -> frozenset[ComputeSessionPermission]:
return ADMIN_PERMISSIONS

@override
@classmethod
async def _permission_for_monitor(
cls,
) -> frozenset[ComputeSessionPermission]:
return MONITOR_PERMISSIONS

@override
@classmethod
async def _permission_for_privileged_member(
cls,
) -> frozenset[ComputeSessionPermission]:
return PRIVILEGED_MEMBER_PERMISSIONS

@override
@classmethod
async def _permission_for_member(
cls,
Expand Down
9 changes: 9 additions & 0 deletions src/ai/backend/manager/models/storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ async def calculate_permission(
permissions = await self._calculate_permission_by_predefined_roles(roles)
return permissions

@override
async def build_ctx_in_system_scope(
self,
ctx: ClientContext,
Expand All @@ -465,6 +466,7 @@ async def build_ctx_in_system_scope(
perm_ctx.merge(to_be_merged)
return perm_ctx

@override
async def build_ctx_in_domain_scope(
self,
ctx: ClientContext,
Expand Down Expand Up @@ -493,6 +495,7 @@ async def build_ctx_in_domain_scope(
)
return result

@override
async def build_ctx_in_project_scope(
self,
ctx: ClientContext,
Expand Down Expand Up @@ -522,6 +525,7 @@ async def build_ctx_in_project_scope(
)
return result

@override
async def build_ctx_in_user_scope(
self,
ctx: ClientContext,
Expand Down Expand Up @@ -567,30 +571,35 @@ async def build_ctx_in_user_scope(
)
return result

@override
@classmethod
async def _permission_for_owner(
cls,
) -> frozenset[StorageHostPermission]:
return OWNER_PERMISSIONS

@override
@classmethod
async def _permission_for_admin(
cls,
) -> frozenset[StorageHostPermission]:
return ADMIN_PERMISSIONS

@override
@classmethod
async def _permission_for_monitor(
cls,
) -> frozenset[StorageHostPermission]:
return MONITOR_PERMISSIONS

@override
@classmethod
async def _permission_for_privileged_member(
cls,
) -> frozenset[StorageHostPermission]:
return PRIVILEGED_MEMBER_PERMISSIONS

@override
@classmethod
async def _permission_for_member(
cls,
Expand Down
9 changes: 9 additions & 0 deletions src/ai/backend/manager/models/vfolder.py
Original file line number Diff line number Diff line change
Expand Up @@ -2321,6 +2321,7 @@ async def calculate_permission(
permissions = await self._calculate_permission_by_predefined_roles(roles)
return permissions

@override
async def build_ctx_in_system_scope(
self,
ctx: ClientContext,
Expand All @@ -2334,6 +2335,7 @@ async def build_ctx_in_system_scope(
perm_ctx.merge(to_be_merged)
return perm_ctx

@override
async def build_ctx_in_domain_scope(
self,
ctx: ClientContext,
Expand All @@ -2348,6 +2350,7 @@ async def build_ctx_in_domain_scope(
permission_ctx.merge(_project_perm_ctx)
return permission_ctx

@override
async def build_ctx_in_project_scope(
self, ctx: ClientContext, scope: ProjectScope
) -> VFolderPermissionContext:
Expand All @@ -2356,6 +2359,7 @@ async def build_ctx_in_project_scope(
permission_ctx.merge(_user_perm_ctx)
return permission_ctx

@override
async def build_ctx_in_user_scope(
self, ctx: ClientContext, scope: UserRBACScope
) -> VFolderPermissionContext:
Expand Down Expand Up @@ -2492,30 +2496,35 @@ async def _build_at_user_scope_non_recursively(
result.object_id_to_overriding_permission_map = object_id_to_permission_map
return result

@override
@classmethod
async def _permission_for_owner(
cls,
) -> frozenset[VFolderRBACPermission]:
return OWNER_PERMISSIONS

@override
@classmethod
async def _permission_for_admin(
cls,
) -> frozenset[VFolderRBACPermission]:
return ADMIN_PERMISSIONS

@override
@classmethod
async def _permission_for_monitor(
cls,
) -> frozenset[VFolderRBACPermission]:
return MONITOR_PERMISSIONS

@override
@classmethod
async def _permission_for_privileged_member(
cls,
) -> frozenset[VFolderRBACPermission]:
return PRIVILEGED_MEMBER_PERMISSIONS

@override
@classmethod
async def _permission_for_member(
cls,
Expand Down

0 comments on commit d909a3e

Please sign in to comment.