mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-10-28 03:02:22 +02:00
Add privilege dependencies for the new API endpoints
This commit is contained in:
parent
87f5a4560a
commit
bc15e3331b
@ -231,16 +231,18 @@ async def duplicate_template(
|
|||||||
template = await TemplatesService(templates_repo).duplicate_template(template_id)
|
template = await TemplatesService(templates_repo).duplicate_template(template_id)
|
||||||
return template
|
return template
|
||||||
|
|
||||||
@router.get("/{template_id}/base-config/{filename}")
|
@router.get(
|
||||||
|
"/{template_id}/base-config/{filename}",
|
||||||
|
dependencies=[Depends(has_privilege("Template.Audit"))]
|
||||||
|
)
|
||||||
async def get_base_config(
|
async def get_base_config(
|
||||||
template_id: UUID,
|
template_id: UUID,
|
||||||
filename: str,
|
filename: str,
|
||||||
templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)),
|
templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)),
|
||||||
):
|
):
|
||||||
|
|
||||||
service = TemplatesService(templates_repo)
|
service = TemplatesService(templates_repo)
|
||||||
|
|
||||||
await service.get_template(template_id)
|
await service.get_template(template_id)
|
||||||
|
|
||||||
content = service.get_file(str(template_id), filename)
|
content = service.get_file(str(template_id), filename)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@ -250,7 +252,10 @@ async def get_base_config(
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@router.put("/{template_id}/base-config/{filename}")
|
@router.put(
|
||||||
|
"/{template_id}/base-config/{filename}",
|
||||||
|
dependencies=[Depends(has_privilege("Template.Modify"))]
|
||||||
|
)
|
||||||
async def update_base_config(
|
async def update_base_config(
|
||||||
template_id: UUID,
|
template_id: UUID,
|
||||||
filename: str,
|
filename: str,
|
||||||
@ -261,9 +266,7 @@ async def update_base_config(
|
|||||||
raise ControllerBadRequestError("Missing 'content' field")
|
raise ControllerBadRequestError("Missing 'content' field")
|
||||||
|
|
||||||
service = TemplatesService(templates_repo)
|
service = TemplatesService(templates_repo)
|
||||||
|
|
||||||
await service.get_template(template_id)
|
await service.get_template(template_id)
|
||||||
|
|
||||||
service.update_file(str(template_id), filename, body["content"])
|
service.update_file(str(template_id), filename, body["content"])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@ -273,14 +276,14 @@ async def update_base_config(
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@router.get("/{template_id}/base-configs")
|
@router.get(
|
||||||
|
"/{template_id}/base-configs",
|
||||||
|
dependencies=[Depends(has_privilege("Template.Audit"))]
|
||||||
|
)
|
||||||
async def list_base_configs(
|
async def list_base_configs(
|
||||||
template_id: UUID,
|
template_id: UUID,
|
||||||
templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)),
|
templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)),
|
||||||
):
|
):
|
||||||
service = TemplatesService(templates_repo)
|
service = TemplatesService(templates_repo)
|
||||||
|
|
||||||
await service.get_template(template_id)
|
await service.get_template(template_id)
|
||||||
|
|
||||||
return service.list_files(str(template_id))
|
return service.list_files(str(template_id))
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user