summaryrefslogtreecommitdiff
path: root/src/services/api/rest
AgeCommit message (Collapse)Author
2026-05-28T8502: add server support for config-sync excluded pathsJohn Estabrook
2026-03-24T8410: Fix typos and mistakes for operational and configuration commandsViacheslav Hletenko
Fix typos and mistakes in the commands and comments No functional changes
2026-02-09http-api: T8235: Use asyncio lock to prevent deadlock in config-file handlerNavneetBarwal-RA
The HTTPS API config-file handler previously used a blocking threading.Lock in an async FastAPI endpoint, which can block the event loop and make the API unresponsive under concurrent load. This commit replaces the blocking lock with an asyncio.Lock to serialize config operations without blocking async execution, resolving the reported deadlock when concurrent /config-file load operations occur. The behavior of run_in_threadpool and background task scheduling remains consistent with prior logic, so the handler preserves existing commit and commit-confirm semantics.
2026-01-28http-api: T7090: Implement background configure operations for REST APIOleksandr Kuchmystyi
Large config commits (`service config-sync`) can block the REST API request path and sometimes must be deferred (e.g., when changing `service https`). This commit introduces an in-memory background operation manager that queues (FIFO) full configure operations (commands + commit/commit-confirm) as single jobs, tracks status/result, and exposes active operations via `/retrieve/background-operations`.
2025-12-14T8026: Fixed missing session commit for the generate routerxTITUSMAXIMUSX
2025-08-13http-api: T7711: config sync method should be asyncJohn Estabrook
This is needed due to the recent change of the underlying method _configure_op to async.
2025-07-08T7499: expose destructive merge in http-apiJohn Estabrook
2025-07-03T7588: move blocking function to threadpool to allow asyncJohn Estabrook
Refactor the blocking code in config handlers (endpoints /configure, /config-file) to run in a threadpool; this allows defining the handler as async. Consequently, the handler itself runs in the main thread, avoiding the need for thread registration for libvyosconfig function calls.
2025-06-28T7591: remove copyright years from source filesChristian Breunig
The legal team says years are not necessary so we can go ahead with it, since it will simplify backporting. Automatically removed using: git ls-files | grep -v libvyosconfig | xargs sed -i -E \ 's/^# Copyright (19|20)[0-9]{2}(-[0-9]{4})? VyOS maintainers.*/# Copyright VyOS maintainers and contributors <maintainers@vyos.io>/g' In addition we will error-out during "make" if someone re-adds a legacy copyright notice
2025-05-29http-api: T3955: add commit-confirm to endpoints /configure /config-fileJohn Estabrook
2025-05-29Merge pull request #4530 from jestabro/api-extend-load-mergeChristian Breunig
http-api: T7498: allow passing config string in body of 'load' or 'merge' request
2025-05-28http-api: T7498: allow passing config string in body of 'merge' requestJohn Estabrook
2025-05-28http-api: T7498: allow passing config string in body of 'load' requestJohn Estabrook
2025-05-28T7395: Add support for renew in REST ServerIDerr
2025-03-06T4406: Add public API endpoint to display informationoniko94
2024-10-21Merge branch 'current' into T6695Nataliia S.
2024-10-18pki: T4914: Rewrite the PKI op mode in the new styleNataliia Solomko
2024-10-11T6695: Machine-readable operational mode support for tracerouteNataliia Solomko
2024-10-03http-api: T6736: sanitize error message containing user inputJohn Estabrook
2024-09-30http-api: T6736: normalize formattingJohn Estabrook
2024-09-29http-api: T6736: remove routes on config deleteJohn Estabrook
Avoid duplicate entries in the list of routes when adding/deleting endpoints.
2024-09-29http-api: T6736: separate REST API and GraphQL API activationJohn Estabrook
The GraphQL API was implemented as an addition to the existing REST API. As there is no necessary dependency, separate the initialization of the respective endpoints. Factor out the REST Pydantic models and FastAPI routes for symmetry and clarity.