Skip to content

Commit c016bb0

Browse files
committed
drafts ideas for rest entyrpoint
1 parent 54c69f9 commit c016bb0

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

services/web/server/src/simcore_service_webserver/licenses/_licensed_items_rest.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,3 +112,21 @@ async def purchase_licensed_item(request: web.Request):
112112
body_params=body_params,
113113
)
114114
return web.json_response(status=status.HTTP_204_NO_CONTENT)
115+
116+
117+
@routes.post(
118+
f"/{VTAG}/catalog/licensed-items/{{licensed_item_id}}:resync",
119+
name="resync_licensed_item",
120+
)
121+
@login_required
122+
@permission_required("catalog/licensed-items.admin")
123+
@handle_plugin_requests_exceptions
124+
async def resync_licensed_item(request: web.Request):
125+
req_ctx = LicensedItemsRequestContext.model_validate(request)
126+
127+
# TODO: forces resync. can schedule a run with a lock?
128+
# fetches resources
129+
# register resources
130+
# returns issues
131+
132+
return web.json_response(status=status.HTTP_202_ACCEPTED)

services/web/server/src/simcore_service_webserver/security/_authz_access_roles.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,9 @@ class PermissionDict(TypedDict, total=False):
111111
UserRole.ADMIN: PermissionDict(
112112
can=[
113113
"admin.*",
114-
"storage.files.sync",
114+
"catalog/licensed-items.admin",
115115
"resource-usage.write",
116+
"storage.files.sync",
116117
],
117118
inherits=[UserRole.TESTER],
118119
),

0 commit comments

Comments
 (0)