jonaustin09
3a60dcd88f
feat: Added proxy backend actions: DeleteObjectTagging, GetObjectTagging, PutObjectTagging, PutBucketAcl, GetBucketAcl
2023-10-11 09:00:02 -07:00
Ben McClelland
f58646b58d
feat: s3proxy backend
...
This backend redirects incoming requests to another s3 service.
This will use the incoming credentials to setup the client
requests to the external s3 service. So the IAM accounts (or
root account) must match what the external s3 service expects.
2023-10-11 09:00:02 -07:00
jonaustin09
b8140fe3ed
fix: Fixed error case when overwriting a directory object with file one
2023-10-10 18:20:42 -04:00
Ben McClelland
23281774aa
fix: allow posix GET of 0-len directory type object
2023-10-07 15:57:31 -07:00
Ben McClelland
5ca44e7c2f
fix: prevent directory type object uploads containing data
...
Since objects with trailing "/" are mapped to directories in the
posix filesystem, they must not contain data since there is no
place to store that data.
This checks both PutObject and CreateMultipartUpload for invalid
directory object types containing data.
2023-10-07 15:36:03 -07:00
jonaustin09
856d79d385
fix: Fixes #274 , Fixed putting and getting object metadata case normalization issue
2023-10-05 15:33:03 -04:00
Ben McClelland
ae4e382e61
feat: refactor internal iam service
...
This moves the internal iam service from the posix backend so
that we can start implementing new iam services right in the auth
module.
The internal iam service has same behavior as before, but now
must be enabled with the --iam-dir cli option.
New single user service is the default when no other iam service
is selected. This just runs the gateway in single user mode with
just the root account.
2023-10-02 11:12:18 -07:00
Ben McClelland
4661af11dd
feat: replace access/role context locals with full account info
2023-10-02 10:59:59 -07:00
Jon Austin
9cb357ecc5
CopyObject metadata ( #265 )
...
* fix: Object tag actions cleanup
* fix: Fixes #249 , Changed ListObjects default max-keys from -1 to 1000
* fix: Fixes #250 , Added support to provide a marker not from the objects list and list the objects after the provided marker in ListObjects(V2) actions
* feat: Closes #256 , Addded a check step, to compare object metadatas and allow the copying to itself, if the metadata has been changed
* fix: Simplified range assignment in CopyObject posix function
2023-09-26 18:09:09 -07:00
jonaustin09
5c48fcd443
fix: Fixes #250 , Added support to provide a marker not from the objects list and list the objects after the provided marker in ListObjects(V2) actions
2023-09-23 21:10:20 -07:00
jonaustin09
4be5d64c8b
fix: Object tag actions cleanup
2023-09-23 21:00:45 -07:00
jonaustin09
e392ac940a
fix: VerifyACL function clenup: removed unused bucket argument from the function declaration
2023-09-19 16:36:42 -07:00
jonaustin09
a77954a307
fix: Fixes #246 , Added max length check for tag keys and values in PutObjectTagging and PutObject actions
2023-09-19 14:42:30 -04:00
jonaustin09
c9653cff71
fix: Fixes #245 , Fixed exceeding range error for UploadPartCopy action
2023-09-19 11:53:49 -04:00
Jon Austin
1874d3c329
fix: Fixes #244 , Added destincation bucket ACL check for CopyObject action ( #253 )
2023-09-18 11:49:37 -07:00
jonaustin09
cb6b60324c
fix: Fixes #243 , fixed the error case for CopyObject to copy the object into itself
2023-09-18 09:29:25 -07:00
jonaustin09
ee1ab5bdcc
fix: Changed Walk function last object check to avoid panic
2023-09-18 08:20:08 -04:00
jonaustin09
8951cce6d0
fix: Fixes #179 , Fixes #180 , Fixes ListObject marker bug
2023-09-14 16:17:29 -04:00
Ben McClelland
c04f6d7f00
Merge pull request #233 from versity/admin/list-buckets
...
Issue 217, Admin API and CLI action to list all the buckets and its owners.
2023-09-12 16:02:29 -07: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
Ben McClelland
145c2dd4e3
fix: builds for non 64 bit linux arch
...
The scoutfs backend is only supported on 64bit linux. This corrects
the build constraints to only supported linux arch, and prevents the
incompatible import for unspported arch.
We also need to adjust the body limit setting on 32 bit since this
is an int, and our default limit will overfow on 32 bit.
2023-09-10 20:49:56 -07:00
jonaustin09
35fe6d8dee
fix: some cleanup in posix, router and acl
2023-09-08 12:46:50 -04:00
jonaustin09
8d2e2a4106
fix: Fixes #204 , Change ListBuckets action logic to return all the buckets for admin users and the buckets owned by a user for regular users. Added integration test cases for ListBuckets action
2023-09-07 14:49:47 -04:00
jonaustin09
4c7584c99f
feat: Closes #206 , Added an admin api endpoint and a CLI action to change buckets owner
2023-09-06 17:41:47 -04:00
Ben McClelland
4d50d970ea
Merge pull request #208 from versity/fix/issue-198
...
Issue-207, 198
2023-09-05 11:07:15 -07:00
jonaustin09
cb2f6a87aa
fix: Fixes #207 , Fixes #198 : added lexicographical order by object key and uploadId for ListMultipartUploads response, Added FE support to pass the necessary arguments to BE for ListMultipartUploads
2023-09-01 15:33:58 -04:00
Ben McClelland
d058dcb898
fix: cleanup backend interface functions ordering
2023-08-25 09:15:01 -07:00
jonaustin09
a2439264b2
fix: Fixes #195 , fixed DeleteObjects action response structure
2023-08-24 18:37:01 +04:00
jonaustin09
7d8a795e95
fix: Fixes #184 , Change InvalidArgument to InvalidRange error for GetObject by range for larger ragnes
2023-08-04 20:27:47 +04:00
jonaustin09
cc28535618
fix: Fixes #186 , Fixed object metadata storing and retrieval flow in PutObject and GetObject actions
2023-08-04 01:43:30 +04:00
jonaustin09
67fc857cdd
fix: Fixes #182 , fixed max-keys 0 case to not return any object key
2023-08-03 22:39:28 +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
jonaustin09
70818de594
fix: Fixes #168 . Changed PutObject existing object error from custom internal error to ErrExistingObjectIsDirectory
2023-07-31 18:17:29 +04:00
jonaustin09
898c3efaa0
fix: Fixes #153 . Fixed CompleteMultipartUpload invalid ETag error case, fixed UploadPart xattr.Set error
2023-07-28 18:20:07 +04:00
Jon Austin
bf33b9f5a2
Issue 154 ( #169 )
...
* fix: Fixes #154 , Changed GetObject range error to InvalidRange
2023-07-27 11:05:40 -07:00
Ben McClelland
884fd029c3
feat: add context to backend calls
...
This adds a context to the backend interface calls so that the backend
can enable request cancellation. This change isn't acutally implementing
any backend handling, but just putting the pieces into place to pass the
context to the backend.
2023-07-26 21:54:12 -07:00
Ben McClelland
5b31a7bafc
Merge pull request #162 from versity/fix/issue-136
...
Issue 136
2023-07-25 10:03:28 -07:00
Ben McClelland
bedd353d72
Merge pull request #160 from versity/fix/issue-155
...
Issue 155
2023-07-25 10:02:16 -07:00
jonaustin09
1649c5cafd
fix: Added KeyCount property in ListObjectsV2 action result, added a test case for one
2023-07-25 20:44:57 +04:00
jonaustin09
4c451a4822
feat: Added support to add object tags on object creation
2023-07-25 20:42:58 +04:00
jonaustin09
c598ee5416
fix: Added accept-range, Content-range and x-amz-tagging-count headers in GetObject action response, added test cases for these
2023-07-25 20:28:40 +04:00
Ben McClelland
2291c22eaa
fix: standardize Backend interface args for s3 types
2023-07-22 22:45:24 -07:00
jonaustin09
ef1de682a4
fix: Error handling for posix DeleteObject function to return an error when the object doesn't exist
2023-07-14 23:41:52 +04:00
Ben McClelland
47dea2db7c
feat: implement posix UploadCopyPart
2023-07-05 19:06:19 -07:00
jonaustin09
39803cb158
feat: Some cleanup in controller unit tests, removed backend unsupported unit tests, added test cases for admin controller functions
2023-07-03 20:35:40 +04:00
Ben McClelland
7e34078d6a
posix: cleanup extra debug output
2023-06-29 11:18:00 -07:00
Jon Austin
3c69c6922a
Integration test cases for HeadBucket, CopyObject, DeleteObject actions ( #117 )
...
* feat: Added integration test cases for HeadBucket, CopyObject, DeleteObjects
* feat: Added logger for debugging
2023-06-29 10:40:54 -07:00
Ben McClelland
6d99c69953
fix range gets with unspecified end range
...
The aws cli will send range gets of an object with ranges like
the following:
bytes=0-8388607
bytes=8388608-16777215
bytes=16777216-25165823
bytes=25165824-
The last one with the end offset unspecified just means the rest of
the object. So this fixes that case where there is only one offset
in the range.
2023-06-28 23:09:49 -07:00