distribution/storage
Stephen J Day 0a29b59e14 Webhook notification support in registry webapp
Endpoints are now created at applications startup time, using notification
configuration. The instances are then added to a Broadcaster instance, which
becomes the main event sink for the application. At request time, an event
bridge is configured to listen to repository method calls. The actor and source
of the eventBridge are created from the requeest context and application,
respectively. The result is notifications are dispatched with calls to the
context's Repository instance and are queued to each endpoint via the
broadcaster.

This commit also adds the concept of a RequestID and App.InstanceID. The
request id uniquely identifies each request and the InstanceID uniquely
identifies a run of the registry. These identifiers can be used in the future
to correlate log messages with generated events to support rich debugging.

The fields of the app were slightly reorganized for clarity and a few horrid
util functions have been removed.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-02-03 13:32:37 -08:00
..
notifications Webhook notification support in registry webapp 2015-02-03 13:32:37 -08:00
blobstore.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00
cloudfrontlayerhandler.go Updates goamz dependency from crowdmob->AdRoll 2015-02-02 11:03:20 -08:00
delegatelayerhandler.go DelegateLayerHandler now uses http method in url generation 2015-01-15 18:15:26 -08:00
doc.go Lots of various golint fixes 2014-11-17 15:46:06 -08:00
filereader_test.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
filereader.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
filewriter_test.go Implement a remote file writer for use with StorageDriver 2015-01-09 14:49:06 -08:00
filewriter.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
layer_test.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
layer.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
layerhandler.go Adds support for content redirects for layer downloads 2015-01-08 17:01:28 -08:00
layerreader.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
layerstore.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00
layerupload.go Handle empty blob files more appropriately 2015-02-02 13:01:49 -08:00
manifeststore_test.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00
manifeststore.go Add payload and signatures method to SignedManifest 2015-02-03 13:30:20 -08:00
paths_test.go Prefix non-name path components 2015-02-02 14:47:24 -08:00
paths.go Prefix non-name path components 2015-02-02 14:47:24 -08:00
registry.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00
revisionstore.go Add payload and signatures method to SignedManifest 2015-02-03 13:30:20 -08:00
services.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00
tagstore.go Refactor storage API to be registry oriented 2015-01-16 18:33:21 -08:00