api: Implement bucket notification. (#2271)

* Implement basic S3 notifications through queues

Supports multiple queues and three basic queue types:

1. NilQueue -- messages don't get sent anywhere
2. LogQueue -- messages get logged
3. AmqpQueue -- messages are sent to an AMQP queue

* api: Implement bucket notification.

Supports two different queue types

- AMQP
- ElasticSearch.

* Add support for redis
This commit is contained in:
Harshavardhana
2016-07-23 22:51:12 -07:00
committed by Anand Babu (AB) Periasamy
parent f85d94288d
commit f248089523
234 changed files with 45415 additions and 550 deletions

31
vendor/vendor.json vendored
View File

@@ -113,9 +113,10 @@
"revisionTime": "2016-07-02T02:15:29-07:00"
},
{
"path": "github.com/mitchellh/go-homedir",
"revision": "d682a8f0cf139663a984ff12528da460ca963de9",
"revisionTime": "2015-10-24T22:24:27-07:00"
"checksumSHA1": "GOSe2XEQI4AYwrMoLZu8vtmzkJM=",
"path": "github.com/minio/redigo/redis",
"revision": "5e2117cd32d677a36dcd8c9c83776a065555653b",
"revisionTime": "2016-07-24T00:05:56Z"
},
{
"path": "github.com/pkg/profile",
@@ -138,6 +139,12 @@
"revision": "762fd2bfc12e766d90478d638255981ab1966a3d",
"revisionTime": "2016-03-24T19:44:43+05:30"
},
{
"checksumSHA1": "rKV8YLkXpeNG1Oix8hlYqVsEFb4=",
"path": "github.com/streadway/amqp",
"revision": "2e25825abdbd7752ff08b270d313b93519a0a232",
"revisionTime": "2016-03-11T21:55:03Z"
},
{
"path": "golang.org/x/crypto/bcrypt",
"revision": "7b85b097bf7527677d54d3220065e966a0e3b613",
@@ -157,6 +164,24 @@
"path": "gopkg.in/check.v1",
"revision": "11d3bc7aa68e238947792f30573146a3231fc0f1",
"revisionTime": "2015-07-29T10:04:31+02:00"
},
{
"checksumSHA1": "eC4OV7g1tug838fPWrwflstr/TM=",
"path": "gopkg.in/olivere/elastic.v3",
"revision": "f7ae701daf3abe5dfb99f57b3f47738ec93c9c26",
"revisionTime": "2016-07-16T10:42:39Z"
},
{
"checksumSHA1": "lLdKOn9RPtFoTtPUNq5+sIInAiE=",
"path": "gopkg.in/olivere/elastic.v3/backoff",
"revision": "f7ae701daf3abe5dfb99f57b3f47738ec93c9c26",
"revisionTime": "2016-07-16T10:42:39Z"
},
{
"checksumSHA1": "XQg6xG6l15Ke43KolthYYnVDCYo=",
"path": "gopkg.in/olivere/elastic.v3/uritemplates",
"revision": "f7ae701daf3abe5dfb99f57b3f47738ec93c9c26",
"revisionTime": "2016-07-16T10:42:39Z"
}
],
"rootPath": "github.com/minio/minio"