aboutsummaryrefslogtreecommitdiff
path: root/src/api/api_server.rs
Commit message (Collapse)AuthorAgeFilesLines
* BucketWebsite (#174)trinity-1686a2021-12-151-0/+5
| | | | | | | | | | | fix #77 this does not store anything but a on/off switch for website, and does not implement GetBucketWebsite as it would require storing more. GetBucketWebsite should be pretty easy to implement once data is stored though. Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/174 Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* add proper request router for s3 api (#163)trinity-1686a2021-12-061-151/+141
| | | | | | | | | | | | | fix #161 Current request router was organically grown, and is getting messier and messier with each addition. This router cover exaustively existing API endpoints (with exceptions listed in [#161(comment)](https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/161#issuecomment-1773) either because new and old api endpoint can't feasabily be differentied, or it's more lambda than s3). Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/163 Reviewed-by: Alex <alex@adnab.me> Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* Improved handling of HTTP rangestrinity-1686a2021-11-291-3/+8
| | | | | | | | | | | - correct HTTP code when range syntax is invalid (fix #140) - when multiple ranges are given, simply ignore and send whole file Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/157 Reviewed-by: Alex <alex@adnab.me> Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* update doc and commentsTrinity Pointard2021-11-161-1/+2
|
* clippyTrinity Pointard2021-11-161-1/+1
|
* fix issue where list on vhost-bucket would list bucket instead of bucket contentTrinity Pointard2021-11-161-73/+29
|
* add support for vhost-style s3 bucketTrinity Pointard2021-11-161-9/+101
|
* Fix clippy lints (fix #121)Alex Auvolat2021-10-261-19/+16
|
* Add basic support for the "Versioning" commandQuentin Dufour2021-05-141-0/+3
|
* fix clippy warnings on apiTrinity Pointard2021-05-031-24/+24
|
* S3 API: support ListBucketsQuentin Dufour2021-05-031-2/+4
|
* Many S3 compatibility improvements:v0.2.1.5Alex Auvolat2021-04-281-8/+18
| | | | | | | | - return XML errors - implement AuthorizationHeaderMalformed error to redirect clients to correct location (used by minio client) - implement GetBucketLocation - fix DeleteObjects XML parsing and response
* document api crateTrinity Pointard2021-04-271-0/+1
|
* add support for caching headersTrinity Pointard2021-03-181-1/+1
|
* Time and metadata improvementsAlex Auvolat2021-03-151-1/+4
|
* Cargo fmtAlex Auvolat2021-02-231-3/+8
|
* More precise logging (warn only when returning a 500)Alex Auvolat2021-02-201-1/+5
|
* Add verification of part numbers in CompleteMultipartUpload (WIP #30)Alex Auvolat2021-02-201-2/+2
|
* Add compatibility listAlex Auvolat2021-02-191-1/+1
|
* Implement ListObjectsV2Alex Auvolat2021-02-191-24/+2
|
* Fix S3 ListObjects result and replace println!s by debug!s0.1.1bAlex Auvolat2021-01-161-2/+2
|
* Refactor error management in API parterror-refactoringAlex Auvolat2020-11-081-11/+8
|
* Modif parse_bucket_key to fail when bucket is ""feature/unit-testsAlex Auvolat2020-11-081-10/+19
|
* Add a second testQuentin2020-11-071-1/+12
|
* Fix formattingQuentin2020-11-071-2/+2
|
* Add a test for parse_bucket_keyQuentin2020-11-071-0/+17
|
* Validate content MD5 and SHA256 sums for PutObject and UploadPartAlex Auvolat2020-07-151-3/+12
|
* Apply cargo fmt; add trace output when request signature is badAlex Auvolat2020-07-081-4/+1
|
* Update to Hyper 0.13.6 that accepts non-Sync streams in wrap_stream.Alex Auvolat2020-07-071-6/+5
| | | | Simplifies code and makes it possible to publish on crates.io
* Rename garage_core to garage_modelAlex Auvolat2020-07-071-1/+1
|
* Implement HTTP ranges in getAlex Auvolat2020-05-041-21/+18
|
* Implement DeleteObjectsAlex Auvolat2020-05-011-9/+19
|
* Slightly improved S3 compatibilityAlex Auvolat2020-05-011-38/+58
| | | | | | | | - ListBucket does not require any of the parameters (delimiter, prefix, max-keys, etc) - URLs are properly percent_decoded - PutObject and DeleteObject calls now answer correctly (empty body, version id in the x-amz-version-id: header)
* Compatibility fixesAlex Auvolat2020-04-281-7/+1
|
* Work on APIAlex Auvolat2020-04-281-19/+56
|
* Abort multipart uploadAlex Auvolat2020-04-261-4/+12
|
* Implement multipart uploadsAlex Auvolat2020-04-261-30/+53
|
* Prepare for multipart uploadsAlex Auvolat2020-04-261-3/+2
|
* S3 compatibility: fix bucket listing and HEAD and PUT on bucketAlex Auvolat2020-04-261-2/+12
|
* Remove leading / in keys; better delimiter handlingAlex Auvolat2020-04-241-0/+1
|
* Some basic S3 functionnalityAlex Auvolat2020-04-241-302/+40
|
* Starting to be S3 compatibleAlex Auvolat2020-04-241-35/+105
|
* Split code for modular compilationAlex Auvolat2020-04-241-9/+9
|
* Make table objects slightly more fool-proof; add key tableAlex Auvolat2020-04-231-41/+36
|
* Reorganize codeAlex Auvolat2020-04-231-0/+360