storj / edge

Storj edge services (including multi-tenant, S3-compatible server to interact with the Storj network)
GNU Affero General Public License v3.0
48 stars 18 forks source link

Understand if all necessary placeholders exist in Gateway-{ST,MT} for versioning to work #368

Closed amwolff closed 7 months ago

amwolff commented 9 months ago

Objective

The goal of this issue is to ensure that the gateway has all the necessary placeholders for handling the following S3 actions, to expedite the connection to the underlying Satellite actions when they become available for use.

Actions to verify

### Tasks
- [ ] PutBucketVersioning
- [ ] GetBucketVersioning
- [ ] ListObjectVersions
- [ ] GetObject
- [ ] HeadObject
- [ ] PutObject
- [ ] CompleteMultipartUpload
- [ ] DeleteObject
- [ ] DeleteObjects
- [ ] PutObjectTagging
- [ ] GetObjectTagging
- [ ] DeleteObjectTagging
amwolff commented 7 months ago

Jeremy had some feedback that what this task wants to accomplish is confusing, and I agree; the issue states that what should be done is verification if all placeholders exist while specifying what the expected behavior is. This list is a copy-paste from another issue, so that's probably why it's like that. Regardless, I think what we should do as part of this is verification if all placeholders exist along with data structures necessary for these actions to exhibit the expected behavior. So for example: DeleteObjectTagging: if the implementation of this action is already supported within our codebase, we should only verify if the code supports responding with something so that x-amz-version-id header will be returned (if there's nothing like that, maybe our underlying dependencies (minio) won't even respond with that header?). We should also verify if DeleteObjectTagging allows users to specify the version ID to be removed. If data structures of code for handling this action already include such a construct, we can be confident that clients will be able to communicate that, allowing this action to work the way we want here. @jewharton what do you think?

jewharton commented 7 months ago

@amwolff That sounds good to me. Thanks for clarifying.

jewharton commented 7 months ago

Evaluations were made based on the following versions: