Skip to content

Commit

Permalink
update get_vfolder_id params
Browse files Browse the repository at this point in the history
  • Loading branch information
fregataa committed Feb 22, 2024
1 parent 022d0fa commit 5147a29
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 6 deletions.
5 changes: 4 additions & 1 deletion src/ai/backend/client/func/vfolder.py
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,10 @@ async def paginated_project_list(
)

async def _get_id_by_name(self) -> uuid.UUID:
rqst = Request("GET", "/folders/{0}/id".format(self.name))
rqst = Request("GET", "/folders/_/id")
rqst.set_json({
"name": self.name,
})
async with rqst.fetch() as resp:
data = await resp.json()
return uuid.UUID(data["id"])
Expand Down
16 changes: 11 additions & 5 deletions src/ai/backend/manager/api/vfolder.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,6 @@
check_api_params,
get_user_scopes,
pydantic_params_api_handler,
pydantic_response_api_handler,
)

if TYPE_CHECKING:
Expand Down Expand Up @@ -2314,18 +2313,25 @@ async def delete_by_name(request: web.Request) -> web.Response:
return web.Response(status=204)


class IDRequestModel(BaseModel):
name: str = Field(
validation_alias=AliasChoices("vfolder_name", "vfolderName", "name"),
description="Target vfolder name",
)


class CompactVFolderInfoModel(BaseModel):
id: uuid.UUID = Field(description="Unique ID referencing the vfolder.")
name: str = Field(description="Name of the vfolder.")


@auth_required
@server_status_required(ALL_ALLOWED)
@pydantic_response_api_handler
async def get_vfolder_id(request: web.Request) -> CompactVFolderInfoModel:
@pydantic_params_api_handler(IDRequestModel)
async def get_vfolder_id(request: web.Request, params: IDRequestModel) -> CompactVFolderInfoModel:
root_ctx: RootContext = request.app["_root.context"]

folder_name = request.match_info["name"]
folder_name = params.name
access_key = request["keypair"]["access_key"]
domain_name = request["user"]["domain_name"]
user_role = request["user"]["role"]
Expand Down Expand Up @@ -3446,7 +3452,7 @@ def create_app(default_cors_options):
vfolder_resource = cors.add(app.router.add_resource(r"/{name}"))
cors.add(vfolder_resource.add_route("GET", get_info))
cors.add(vfolder_resource.add_route("DELETE", delete_by_name))
cors.add(add_route("GET", r"/{name}/id", get_vfolder_id))
cors.add(add_route("GET", r"/_/id", get_vfolder_id))
cors.add(add_route("GET", r"/_/hosts", list_hosts))
cors.add(add_route("GET", r"/_/all-hosts", list_all_hosts))
cors.add(add_route("GET", r"/_/allowed-types", list_allowed_types))
Expand Down

0 comments on commit 5147a29

Please sign in to comment.