Now donut supports bucket ACL's, bringing in this support for dl.minio.io

This commit is contained in:
Harshavardhana
2015-04-27 02:04:05 -07:00
parent f5a51ae1bb
commit c99d96dbc2
8 changed files with 165 additions and 22 deletions

View File

@@ -235,7 +235,7 @@ func testBucketMetadata(c *check.C, create func() Driver) {
metadata, err := drivers.GetBucketMetadata("string")
c.Assert(err, check.IsNil)
c.Assert(metadata.Name, check.Equals, "string")
c.Assert(metadata.ACL, check.Equals, BucketACL("private"))
}
func testBucketRecreateFails(c *check.C, create func() Driver) {

View File

@@ -150,6 +150,9 @@ func (d donutDriver) CreateBucket(bucketName, acl string) error {
return iodine.New(drivers.InvalidACL{ACL: acl}, nil)
}
if drivers.IsValidBucket(bucketName) && !strings.Contains(bucketName, ".") {
if strings.TrimSpace(acl) == "" {
acl = "private"
}
return d.donut.MakeBucket(bucketName, acl)
}
return iodine.New(drivers.BucketNameInvalid{Bucket: bucketName}, nil)
@@ -173,7 +176,7 @@ func (d donutDriver) GetBucketMetadata(bucketName string) (drivers.BucketMetadat
return drivers.BucketMetadata{}, iodine.New(drivers.BackendCorrupted{}, nil)
}
bucketMetadata := drivers.BucketMetadata{
Name: metadata["name"],
Name: bucketName,
Created: created,
ACL: drivers.BucketACL(acl),
}

View File

@@ -285,6 +285,10 @@ func (memory *memoryDriver) CreateBucket(bucketName, acl string) error {
}
memory.lock.RUnlock()
if strings.TrimSpace(acl) == "" {
// default is private
acl = "private"
}
var newBucket = storedBucket{}
newBucket.metadata = drivers.BucketMetadata{}
newBucket.metadata.Name = bucketName