add support for vhost/dns style bucket access #154
No reviewers
Labels
No Label
AdminAPI
Bug
Check AWS
CI
Correctness
Critical
Documentation
Ideas
Improvement
Low priority
Newcomer
Performance
S3 Compatibility
Testing
Usability
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Deuxfleurs/garage#154
Loading…
Reference in New Issue
No description provided.
Delete Branch "trinity-1686a/garage:vhost-style"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
fix #137
I moved some code arround so it's not duplicated between s3 and web.
f0681dea33
to2e70257d29
I have some doubt on the correctness of key extraction on some edge-case : if a path starts with
//some-key
, it gets translated tosome-key
. Maybe it should be/some-key
instead? (stripping only the first /)Indeed, I also think that we should only strip one slash. Ideally, we should do some tests with Amazon implementation / look how minio handles this case :)
tested with minio. It seems to have the same behavior
pcap capture shows PUT being diriged to
/minio-test//////cpuinfo.txt
, and answer to ListObject is<Key>cpuinfo.txt</Key>
, so it appears all/
should be stripped.In general, multiple
/
may be subject to path normalisation (nginx, by default, compress multiples/
in a single one), so the caller should probably not rely on/
being kept@ -30,6 +30,7 @@ sled_flush_every_ms = 2000
[s3_api]
api_bind_addr = "[::]:3900"
s3_region = "garage"
root_domain = ".3.garage"
".s3.garage"
?changes were tested using mcli (read and list object, write is blocked by #64) and rclone (read, write and list). Other endpoints were not tested, but should hopefully work
Thanks for the PR :)