aboutsummaryrefslogtreecommitdiff
path: root/src/api/admin/api_server.rs
Commit message (Collapse)AuthorAgeFilesLines
* [fix-auth-ct-eq] use argon2 hashing and verification for admin/metrics token ↵Alex Auvolat2024-02-291-17/+41
| | | | checking
* [dep-upgrade-202402] fix shutdown issue introduced when upgrading hyperdep-upgrade-202402Alex Auvolat2024-02-081-3/+3
|
* [dep-upgrade-202402] wip: port to http/hyper crates v1Alex Auvolat2024-02-051-13/+18
|
* Health info message now advertises API v1Quentin Dufour2023-11-221-1/+1
|
* admin api: increased compatibility for v0/ endpointsv0.9.0-rc2Alex Auvolat2023-10-051-2/+8
|
* Merge branch 'main' into nextv0.9.0-rc1Alex Auvolat2023-10-031-3/+3
|\
| * api: allow custom unix bind mode and use 0o220 for admin servernetworkException2023-10-031-1/+1
| |
| * everywhere: support unix sockets when binding in various placesnetworkException2023-09-291-2/+2
| | | | | | | | | | this patch implements binding to paths as a unix socket for generic server and web server.
* | Merge branch 'main' into nextv0.9.0-beta1Alex Auvolat2023-08-291-18/+52
|\|
| * admin api: refactor caddy check api codeAlex Auvolat2023-08-281-17/+22
| |
| * support {s3,web}.root_domains in /check endpointbug/support-root-domains-on-demand-tlsQuentin Dufour2023-08-081-9/+38
| |
* | admin and cli: hide secret keys unless askedAlex Auvolat2023-06-141-2/+7
|/
* *: apply clippy recommendations.Jonathan Davies2023-05-091-1/+1
|
* Improved bucket authorization response strings.Jonathan Davies2023-01-291-6/+10
|
* api_server.rs: Adapted to use query string per Caddy upstream change.Jonathan Davies2023-01-291-15/+19
|
* More clippy fixesAlex Auvolat2023-01-261-1/+1
|
* Implemented website hosting authorization endpoint.Jonathan Davies2023-01-131-0/+48
| | | | Fixes: #468
* Separate /health (simple text answer) and /v0/health (full json answer, ↵Alex Auvolat2022-12-051-43/+11
| | | | authenticated)
* Refactor health check and add ability to return it in jsonAlex Auvolat2022-12-051-82/+49
|
* Implement /health admin API endpoint to check node healthAlex Auvolat2022-12-051-0/+94
|
* Use status code 204 No Content for empty responsesTobias Krischer2022-10-171-3/+3
|
* Initialize metrics exporter earlier (fix #389)fix-metricsAlex Auvolat2022-09-201-2/+5
|
* Make all HTTP services optionnalAlex Auvolat2022-09-071-9/+10
|
* Allow building without Prometheus exporter (/metrics endpoint)Jakub Jirutka2022-09-061-22/+33
| | | | | | prometheus and opentelemetry-prometheus add 7 extra dependencies in total and increases the size of the garage binary by ~7 % (with fat LTO).
* improve internal item counter mechanisms and implement bucket quotas (#326)Alex2022-06-151-6/+1
| | | | | | | | | | | | | | | | - [x] Refactoring of internal counting API - [x] Repair procedure for counters (it's an offline procedure!!!) - [x] New counter for objects in buckets - [x] Add quotas to buckets struct - [x] Add CLI to manage bucket quotas - [x] Add admin API to manage bucket quotas - [x] Apply quotas by adding checks on put operations - [x] Proof-read Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/326 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* First version of admin API (#298)Alex2022-05-241-0/+199
**Spec:** - [x] Start writing - [x] Specify all layout endpoints - [x] Specify all endpoints for operations on keys - [x] Specify all endpoints for operations on key/bucket permissions - [x] Specify all endpoints for operations on buckets - [x] Specify all endpoints for operations on bucket aliases View rendered spec at <https://git.deuxfleurs.fr/Deuxfleurs/garage/src/branch/admin-api/doc/drafts/admin-api.md> **Code:** - [x] Refactor code for admin api to use common api code that was created for K2V **General endpoints:** - [x] Metrics - [x] GetClusterStatus - [x] ConnectClusterNodes - [x] GetClusterLayout - [x] UpdateClusterLayout - [x] ApplyClusterLayout - [x] RevertClusterLayout **Key-related endpoints:** - [x] ListKeys - [x] CreateKey - [x] ImportKey - [x] GetKeyInfo - [x] UpdateKey - [x] DeleteKey **Bucket-related endpoints:** - [x] ListBuckets - [x] CreateBucket - [x] GetBucketInfo - [x] DeleteBucket - [x] PutBucketWebsite - [x] DeleteBucketWebsite **Operations on key/bucket permissions:** - [x] BucketAllowKey - [x] BucketDenyKey **Operations on bucket aliases:** - [x] GlobalAliasBucket - [x] GlobalUnaliasBucket - [x] LocalAliasBucket - [x] LocalUnaliasBucket **And also:** - [x] Separate error type for the admin API (this PR includes a quite big refactoring of error handling) - [x] Add management of website access - [ ] Check that nothing is missing wrt what can be done using the CLI - [ ] Improve formatting of the spec - [x] Make sure everyone is cool with the API design Fix #231 Fix #295 Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/298 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>