jonaustin09
06e2f2183d
fix: Changes GetObjectAttributes action xml encoding root element to GetObjectAttributesResponse. Adds input validation for x-amz-object-attributes header. Adds x-amz-delete-marker and x-maz-version-id headers for GetObjectAttributes action. Adds VersionId in HeadObject response, if it's not specified in the request
2024-10-30 15:42:15 -04:00
jonaustin09
4d6ec783bf
feat: Implements pagination for ListBuckets
2024-10-28 16:26:08 -04:00
jonaustin09
c6359a7050
feat: Refactoring admin APIs: changes i/o data transfer encoding to xml, implements traditional aws-like error handling, adds admin role checker middleware. Refactoring admin CLI actions to handle aws-like error responses
2024-10-25 11:40:23 -04:00
jonaustin09
b39b5e2373
fix: Fixed object versions listing with ListObjectVersions when versioning is not configured for the gateway
2024-10-07 18:16:11 -04:00
jonaustin09
b0aee40f21
fix: Implemented the AmzDate type to handle iso8601 date parsing and validation. Used it to parse/validate the RetainUntilDate prop in PutObjectRetention data input
2024-10-03 13:13:18 -04:00
jonaustin09
7b5765bd59
fix: Changed the GetBucketVersioning action return type, to return empty result for unset versioning configuration
2024-09-27 18:14:53 -04:00
jonaustin09
800cf62209
feat: Implemented object versioning for multipart uploads. Implemented integration tests for the versioning implementation for multipart uploads
2024-09-19 13:29:19 -07:00
jonaustin09
8252ecd452
feat: basic logic implementation of bucket object versioning in posix backend
...
New posix backend option --versioning-dir will enable storing object versions
in specified directory.
2024-09-18 13:04:34 -07:00
Ben McClelland
9dbfaeed0c
fix: time locale utc in responses
...
Change all response times to UTC. Fix bucket create date time
formatting. This was using the incorrct xml field name before.
2024-09-12 19:17:46 -07:00
Ben McClelland
3bf8b296d8
fix: format timestamp responses with RFC3339TimeFormat
...
This fixes the rest of the s3reponse types to marshall the time
field in RFC3339TimeFormat when MarshalXML called.
Fixes #782
2024-09-07 12:29:09 -07:00
Ben McClelland
e1c2945fb0
fix: add XMLName to InitiateMultipartUploadResult for consistency
2024-08-27 15:32:07 -07:00
Jon Austin
d79f978df9
feat: Added the standard storage class to all the available get/list actions responses in posix. ( #765 )
2024-08-27 15:28:40 -07:00
Ben McClelland
ee202b76f3
fix: move RFC 3339 time formatting to s3response
...
It is better if we let the s3response module handle the xml
formatting spec specifics, and let the backends not worry
about how to format the time fields. This should help to
prevent any future backend modifications or additions from
accidental incorrect time formatting.
2024-08-26 21:08:24 -07:00
jonaustin09
684ab2371b
fix: Changed ListObjects and ListObjectsV2 actions return types
...
Changed ListObjectsV2 and ListObjects actions return types from
*s3.ListObjects(V2)Output to s3response.ListObjects(V2)Result.
Changed the listing objects timestamp to RFC3339 to match AWS
S3 objects timestamp.
Fixes #752
2024-08-26 15:46:45 -07:00
jonaustin09
cc3c62cd9d
fix: Change CreateMultipartUpload return type to match expected xml response
...
The AWS spec for the create multipart upload response is:
<?xml version="1.0" encoding="UTF-8"?>
<InitiateMultipartUploadResult>
<Bucket>string</Bucket>
<Key>string</Key>
<UploadId>string</UploadId>
</InitiateMultipartUploadResult>
So we need the return type to marshal to this xml format.
2024-08-21 14:49:39 -07:00
jonaustin09
7545e6236c
feat: Implement bucket ownership controls
...
Bucket ACLs are now disabled by default the same as AWS.
By default the object ownership is BucketOwnerEnforced
which means that bucket ACLs are disabled. If one attempts
to set bucket ACL the following error is returned both in
the gateway and on AWS:
ErrAclNotSupported: {
Code: "AccessControlListNotSupported",
Description: "The bucket does not allow ACLs",
HTTPStatusCode: http.StatusBadRequest,
},
ACls can be enabled with PutBucketOwnershipControls
Changed bucket canned ACL translation
New backend interface methods:
PutBucketOwnershipControls
GetBucketOwnershipControls
DeleteBucketOwnershipControls
Added these to metrics
2024-06-28 21:03:09 -07:00
jonaustin09
0c3771ae2d
feat: Added GetObjectAttributes actions implementation in posix, azure and s3 backends. Added integration tests for GetObjectAttributes action
2024-04-29 15:31:53 -04:00
Ben McClelland
0d8a4f5791
fix: remove namespace restrictions on tag xml input
...
Fixes #447 . Previously we required XML namespace and got these
errors with this input:
DEBUG: <Tagging><TagSet><Tag><Key>mykey</Key><Value>myvalue</Value></Tag></TagSet></Tagging>
DEBUG: expected element <Tagging> in name space http://s3.amazonaws.com/doc/2006-03-01/ but have no name space
2024-03-11 21:01:40 -07:00
Ben McClelland
f7655dab9b
fix: delete object xml response should be DeleteResult instead of DeleteObjectsResult
2024-03-09 10:20:15 -08:00
Ben McClelland
0760467c3d
fix: correct xml response encoding for list-buckets and tagging
...
fixes #395
2024-02-12 16:20:07 -08:00
jonaustin09
8cc89fa713
feat: Azure backend implementation
2023-12-29 21:55:32 -08:00
jonaustin09
4f8e4714ee
fix: Fixes #286 , Fixed SelectObjectContent CLI bug, added Content-Length header in response
2023-10-13 13:23:19 -04:00
jonaustin09
6ac69b3198
feat: Closes #217 , Created an admin API and CLI action to list all the buckets and its owners as a table
2023-09-12 08:29:34 -04:00
jonaustin09
a2439264b2
fix: Fixes #195 , fixed DeleteObjects action response structure
2023-08-24 18:37:01 +04:00
jonaustin09
009ceee748
feat: Added FE support for SelectObjectContent action
2023-08-02 00:08:28 +04:00
jonaustin09
97847735c8
fix: s3response action responses naming cleanup
2023-07-31 21:41:10 -07:00
Jon Austin
091375fa00
Issue 151 ( #174 )
...
* fix: Fixes #151 . Fixed DeleteObjects action bugs: Corrected request body serialization type, added return type
2023-07-31 21:36:33 -07:00
Jon Austin
45e3c0922d
Tag actions FE ( #113 )
...
* feat: Added get-object-tagging, put-object-tagging, delete-object-tagging actions in fe
2023-06-26 12:29:56 -07:00
Ben McClelland
ef06d11d7c
fix: get simple multipart upload tests passing
2023-06-12 07:37:21 -07:00
jonaustin09
346a05b49a
feat: removed s3 xsd schema
2023-05-17 00:46:21 +05:00
jonaustin09
6a3254c29f
feat: add s3 xsd new schemas, create new routes
...
add: DeleteObjects new xsd schema
add: HeadObject, DeleteObjects api actions
2023-05-12 23:17:36 +04:00
jonaustin09
8c6e016109
feat: add s3 xsd new schemas, create new routes
...
add: GetBucketAcl, GetObjectAcl, GetObjectAttributes, HeadBucket, HeadObject new xsd schemas
add: GetBucketAcl, GetObjectAcl, HeadBucket api actions
2023-05-12 04:19:33 +04:00
Ben McClelland
f156a78dee
fill out basic project layout
2023-05-05 17:16:59 -07:00