163 Commits

Author SHA1 Message Date
Alex Auvolat 555a54ec40 doc precisions and fixes 2022-11-16 13:40:49 +01:00
Alex Auvolat fc8f795bba Rename subsections and add docker compose file 2022-11-16 13:33:33 +01:00
Alex Auvolat a7af0c8af9 Add best practices and doc of monitoring (fix #419) 2022-11-16 13:27:24 +01:00
Alex bcc9772470 Merge pull request 'OpenAPI spec for admin API' (#379) from ecosystem/openapi into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/379
2022-11-16 10:51:04 +00:00
Alex Auvolat 05547f2ba6 Move testing strategy to a dedicated doc section (fix #114) 2022-11-14 13:34:00 +01:00
Quentin Dufour cf23aee183 Add a "build" section, doc for SDK 2022-11-13 16:48:52 +01:00
Quentin Dufour 74ea449f4b Add missing parameter 2022-11-12 23:04:37 +01:00
Quentin Dufour eabb37b53f openapi validate fix 2022-11-12 22:37:42 +01:00
Quentin Dufour e7824faa17 Finalize the specification of the admin API 2022-11-12 18:08:41 +01:00
Baptiste Jonglez 8dfc909759 Improve Nginx reverse proxy example
By default, Nginx does proxy buffering and it may store big replies to a
temporary file up to 1 GB.  It also means that Nginx will read data as
fast as possible from Garage, even if the client downloads slowly.  Both
behaviours are often not wanted, so disable this temporary file in the example.

Ref: https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffering

Also add an example of upstream with a "backup" server, which may be
useful to only use remote servers as fallback.
2022-11-11 21:50:08 +01:00
Quentin Dufour 485109ea60 Bucket CRUD is defined 2022-11-11 18:32:35 +01:00
Quentin Dufour ebe8a41f2d Bucket skeleton 2022-11-11 17:10:41 +01:00
Quentin Dufour a976c9190c Use awscli in the getting started guide 2022-11-11 12:48:52 +01:00
Quentin Dufour 72a0f90070 Make capacity nullable to allow gateway config 2022-11-11 09:22:37 +01:00
Quentin Dufour d814deb806 Error is nullable on AddNode 2022-11-11 09:22:37 +01:00
Quentin Dufour 6a09f16da7 Set required fields in the spec 2022-11-11 09:22:36 +01:00
Quentin Dufour 23207d18a0 Fix case of garage version 2022-11-11 09:22:36 +01:00
Quentin Dufour 3024405a65 Add operationId to entrypoints 2022-11-11 09:22:36 +01:00
Quentin Dufour 5f0928f89c Declare Authorization scheme in OpenAPI 2022-11-11 09:22:36 +01:00
Quentin Dufour 0a01b34e81 Partial OpenAPI spec for admin API with a viewer 2022-11-11 09:22:36 +01:00
Baptiste Jonglez 26b3295aaa Add documentation to run Mastodon on Garage 2022-11-06 14:07:31 +01:00
Alex Auvolat 8bc5caf7aa Fix issue with 'http(s)://' prefix 2022-10-18 21:17:11 +02:00
Alex Auvolat 002b9fc50c Add TLS support for Consul discovery + refactoring 2022-10-18 18:38:20 +02:00
Tobias Krischer f1c96d108c update k2v docs for status 204 changes 2022-10-18 13:50:56 +02:00
borgified 8e442001b9 Update 'doc/book/reference-manual/features.md'
typo
2022-10-16 07:13:21 +00:00
chemicstry d2c937a931 Fix typo 2022-09-30 18:46:57 +02:00
chemicstry 744c3b4d94 Update docs 2022-09-30 18:46:57 +02:00
chemicstry 37a73d7d37 Move documentation to book 2022-09-30 18:46:57 +02:00
Alex Auvolat 0ab0d3cc29 Document db_engine 2022-09-27 16:52:36 +02:00
Alex 7291747a28 Merge pull request 'Documentation changes for v0.8' (#394) from doc-0.8 into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/394
2022-09-27 11:37:12 +02:00
Alex Auvolat 194e8be1bb Update docker image links 2022-09-26 18:01:17 +02:00
Alex Auvolat 69bcc813de Add garage v0.8 migration guide 2022-09-26 17:46:38 +02:00
Alex Auvolat a3758dc4c4 Update README 2022-09-21 12:53:02 +02:00
Alex Auvolat 1d0a610690 Finish writing about Garage features, and fix from-source instructions 2022-09-15 13:23:57 +02:00
Alex Auvolat f6aebefcc9 Some work on documentation towards v0.8 2022-09-14 19:31:13 +02:00
Alex Auvolat bbb970965c Document available build features 2022-09-06 17:16:45 +02:00
Quentin Dufour 532eca7ff9 Add some documentation for Caddy 2022-08-12 10:33:41 +02:00
Alex b74b533b7b Fix typo 2022-06-29 11:50:51 +02:00
Alex 996f2a6d58 Slides for talk at IMT Atlantique / STACK on 2022-06-23 (#333)
Co-authored-by: Alex Auvolat <alex@adnab.me>
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/333
Co-authored-by: Alex <alex@adnab.me>
Co-committed-by: Alex <alex@adnab.me>
2022-06-23 14:28:40 +02:00
Alex 77e3fd6db2 improve internal item counter mechanisms and implement bucket quotas (#326)
- [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>
2022-06-15 20:20:28 +02:00
Simon C 7eed3ceda9 docs: Add Trafik reverse proxy documentation 2022-06-07 16:16:52 +02:00
Simon C 4b8f48f3c5 docs: Fix title level 2022-06-07 13:32:52 +02:00
Simon C 7d3b5585f1 docs: Add link to facilitate navigation in the documentation 2022-06-07 09:38:59 +02:00
Quentin Dufour a1abed0378 Remove useless MC_REGION env variable 2022-06-02 12:50:11 +02:00
Alex 93eab8eaa3 Fixes to S3 compatibility page (#314)
Mention PostObject is implemented, fix english mistakes

Co-authored-by: Alex Auvolat <alex@adnab.me>
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/314
Co-authored-by: Alex <alex@adnab.me>
Co-committed-by: Alex <alex@adnab.me>
2022-05-25 16:54:44 +02:00
Quentin Dufour 43ddc933f9 Update Ceph S3 endpoints compatibility 2022-05-25 15:20:08 +02:00
Alex Auvolat 9f303f6308 Shorter page title 2022-05-24 15:47:42 +02:00
Alex Auvolat 3be43f3372 Add lost content for Restic with Garage
Suggested-by: Quentin <quentin@deuxfleurs.fr>
2022-05-24 15:32:42 +02:00
Alex Auvolat 2da448b43f Add documentation for new Admin API and a few infos on K2V 2022-05-24 15:28:37 +02:00
Alex 382e74c798 First version of admin API (#298)
**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>
2022-05-24 12:16:39 +02:00