distribution/registry
Tibor Vass f8c09b6a7d Add a new reference package abstracting repositories, tags and digests
There seems to be a need for a type that represents a way of pointing
to an image, irrespective of the implementation.

This patch defines a Reference interface and provides 3 implementations:
- TagReference: when only a tag is provided
- DigestReference: when a digest (according to the digest package) is
  provided, can include optional tag as well

Validation of references are purely syntactic.

There is also a strong type for tags, analogous to digests, as well
as a strong type for Repository from which clients can access the
hostname alone, or the repository name without the hostname, or both
together via the String() method.

For Repository, the files names.go and names_test.go were moved from
the v2 package.

Signed-off-by: Tibor Vass <tibor@docker.com>
2015-10-09 16:05:34 -07:00
..
api Add a new reference package abstracting repositories, tags and digests 2015-10-09 16:05:34 -07:00
auth Switch tests to import "github.com/docker/distribution/context" 2015-08-20 14:50:12 -07:00
client Add a new reference package abstracting repositories, tags and digests 2015-10-09 16:05:34 -07:00
handlers Add WithVersion to context and other cleanup 2015-09-14 17:14:31 -07:00
listener [Server] Listen and serve on a unix socket 2015-05-11 16:00:14 +03:00
middleware Add pull through cache functionality to the Registry which can be configured 2015-08-04 16:09:55 -07:00
proxy Avoid returning nil, nil when fetching a manifest by tag by introducing a new 2015-09-18 16:19:37 -07:00
storage Add a new reference package abstracting repositories, tags and digests 2015-10-09 16:05:34 -07:00
doc.go Move initialization code from main.go to the registry package 2015-09-09 14:39:31 -07:00
registry.go Add WithVersion to context and other cleanup 2015-09-14 17:14:31 -07:00