Harshavardhana
d5057b3c51
accessPolicy: Implement Put, Get, Delete access policy.
...
This patch implements Get,Put,Delete bucket policies
Supporting - http://docs.aws.amazon.com/AmazonS3/latest/dev/access-policy-language-overview.html
Currently supports following actions.
"*": true,
"s3:*": true,
"s3:GetObject": true,
"s3:ListBucket": true,
"s3:PutObject": true,
"s3:CreateBucket": true,
"s3:GetBucketLocation": true,
"s3:DeleteBucket": true,
"s3:DeleteObject": true,
"s3:AbortMultipartUpload": true,
"s3:ListBucketMultipartUploads": true,
"s3:ListMultipartUploadParts": true,
following conditions for "StringEquals" and "StringNotEquals"
"s3:prefix", "s3:max-keys"
9 years ago
Harshavardhana
aed62788d9
api: Implement multiple objects Delete api - fixes #956
...
This API takes input XML input in following form.
```
<?xml version="1.0" encoding="UTF-8"?>
<Delete>
<Quiet>true</Quiet>
<Object>
<Key>Key</Key>
</Object>
<Object>
<Key>Key</Key>
</Object>
...
</Delete>
```
and responds the list of successful deletes, list of errors
for all the deleted objects.
```
<?xml version="1.0" encoding="UTF-8"?>
<DeleteResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/ ">
<Deleted>
<Key>sample1.txt</Key>
</Deleted>
<Error>
<Key>sample2.txt</Key>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
</Error>
</DeleteResult>
```
9 years ago
Brendan Ashworth
adf74ffdb0
api: DRY code and add new test
...
This commit makes code cleaner and reduces the repetitions in the code
base. Specifically, it reduces the clutter in setObjectHeaders. It also
merges encodeSuccessResponse and encodeErrorResponse together because
they served no purpose differently. Finally, it adds a simple test for
generateRequestID.
9 years ago
Harshavardhana
f111997184
multipart: remove proper MD5, rather create MD5 based on parts to be s3 compatible.
...
This increases the performance phenominally.
9 years ago
Harshavardhana
ee1b86e517
api: Implement support for additional request headers.
...
Now GetObject and HeadObject both support
- If-Modified-Since, If-Unmodified-Since
- If-Match, If-None-Match
request headers.
These headers are used to further handle the responses for GetObject
and HeadObject API.
Fixes #1098
9 years ago
Harshavardhana
3ff8a1b719
api: Implement CopyObject s3 API, doing server side copy.
...
Fixes #1172
9 years ago
Harshavardhana
800b19d8e5
cleanup: Remove definitions and move them to its relative places accordingly
...
- Move fs-definitions.go and break them into fs-datatypes.go, fs-bucket-acl.go
and fs-utils.go
- Move api-definitions.go to api-response.go, where they should be.
- Move web-definitions to its related handlers.
9 years ago
Harshavardhana
a4c005ce30
multipart: Code cleanup
...
- More locking cleanup. Fix naming convention.
- Simplify concatenation and blocking calls.
9 years ago
Harshavardhana
0aedb67de0
contentType: Reply back proper contentTypes based on the file extension.
...
Currently the server would set 'application/octet-stream' for all
objects, set this value based on the file extension transparently.
This is useful in case of minio browser to facilitate displaying
proper icons for the different mime data types.
9 years ago
Harshavardhana
682020ef2f
listObjects: Channel based changes.
...
Supports:
- prefixes
- marker
9 years ago
Krishna Srinivas
9e18bfa60e
listObjects: Channel based ftw - initial implementation.
9 years ago
Harshavardhana
0c6a6dc380
http: Enable Transfer-Encoding chunked transfer
...
Fixes #1020
9 years ago
Harshavardhana
704fa420a3
Reply back proper statuses for DeleteBucket/DeleteObject
9 years ago
Harshavardhana
762b798767
Migrate this project to minio micro services code
9 years ago
Harshavardhana
11048708bb
Implement GetBucketACL - fixes #893
9 years ago
Harshavardhana
2a9c37ba26
Remove using HTTP responses in json reply always in application/xml
9 years ago
Harshavardhana
e510e97f28
Consolidating more codebase and cleanup in server / controller
9 years ago
Harshavardhana
d54488f144
Move all server and controller packages into top-level
9 years ago
Harshavardhana
63c9cf0c4b
Move from Minimalist Object Storage to Minio Cloud Storage
9 years ago
Harshavardhana
7615a6bfe5
HEAD shouldn't have any body, handle it in writeErrorResponse()
10 years ago
Harshavardhana
84f427f14a
All other API's now support signature v4
10 years ago
Harshavardhana
00890c254e
CompleteMultipartUpload and CreateObjectPart now fully support signature v4
10 years ago
Harshavardhana
ec33d79d57
Add server side signaturev4 check, not wired up to the readers yet.
10 years ago
Harshavardhana
8a4e7bcdcf
Add full API tests, move storage/donut to donut, add disk tests as well
10 years ago
Harshavardhana
0533abf6a8
Make priority queue lambda function return error over a channel
10 years ago
Harshavardhana
4addf7a996
Restructure API handlers, add JSON RPC simple HelloService right now.
10 years ago
Harshavardhana
335c7827eb
More donut, cache, api cleanup
10 years ago
Harshavardhana
dc0df3dc0e
Breakaway from driver model, move cache into donut
10 years ago
Harshavardhana
72572d6c71
Remove some api server code bringing in new cleanup
10 years ago
Harshavardhana
6d44274db6
Make sure to reply back ETag with quotes for s3 compliance
10 years ago
Harshavardhana
317637fcb8
Remove redundant WriteHeader calls
10 years ago
Harshavardhana
1bd94ec6ab
An attempt to implement ListMultipartUploads()
10 years ago
Harshavardhana
8d06504068
Change all minio-io path to minio
10 years ago
Harshavardhana
18c7f620cc
Add listparts support
10 years ago
Harshavardhana
82c3656f79
Reply back CompleteMultipartUploadResult properly with final ETag computed
...
- Now s3 libraries and also objectstorage-go work properly
10 years ago
Frederick F. Kautz IV
f050d5e974
Adding multipart support
10 years ago
Harshavardhana
75028c2ad1
Add lexicographic Marker/NextMarker support for recursive listing of objects.
...
Also update times when an object is accessed logic
10 years ago
Harshavardhana
92e4301414
Add proper content-length for error and success responses
...
- All compliance issues with S3 API for Put,Get,List (Bucket,Object) respectively
- Encodes and returns back proper HTTP headers
10 years ago
Harshavardhana
d1d5f7a78d
Collate success response into writeSuccessResponse(), add docs
10 years ago
Frederick F. Kautz IV
202fc26719
Revert "Exporting WriteErrorResponse"
...
This reverts commit e05d46a0b5
.
10 years ago
Frederick F. Kautz IV
e05d46a0b5
Exporting WriteErrorResponse
10 years ago
Harshavardhana
107e077ec0
Implement x-amz-acl handling
10 years ago
Frederick F. Kautz IV
6241c9880b
Moving object storage drivers back to minio
10 years ago
Frederick F. Kautz IV
ea961ef16d
Updating to use objectdriver
10 years ago
Harshavardhana
85e547d854
Parse response headers in tests
10 years ago
Harshavardhana
0474439b43
Code restructuring, assigning proper subsystems to each
...
- Drivers contain
* donut/*
* file/*
* memory/*
- Storage format contains
* donut/*
- GetObject() --> renamed to GetObjectReader()
- Deleted stale objectwriter.go, renamed donutwriter.go to object_writer.go
Simplifying, and documenting codebase further
10 years ago
Harshavardhana
2b0b5f014a
Update license header Mini should be Minimalist really
10 years ago
Harshavardhana
7ce3ab3193
Restructure minio api, move signature checks from utils to Api.
10 years ago
Frederick F. Kautz IV
1a88b36c55
Switching from base64 to hex for etag
10 years ago
Frederick F. Kautz IV
211b084e50
Performing etag off of bytes rather than md5 string
10 years ago