Change URLBuilder methods to use references for tags and digests
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
This commit is contained in:
parent
4441333912
commit
2b20b0167a
8 changed files with 150 additions and 62 deletions
|
@ -6,7 +6,6 @@ import (
|
|||
|
||||
"github.com/docker/distribution"
|
||||
"github.com/docker/distribution/context"
|
||||
"github.com/docker/distribution/digest"
|
||||
"github.com/docker/distribution/reference"
|
||||
"github.com/docker/distribution/uuid"
|
||||
)
|
||||
|
@ -23,8 +22,8 @@ var _ Listener = &bridge{}
|
|||
|
||||
// URLBuilder defines a subset of url builder to be used by the event listener.
|
||||
type URLBuilder interface {
|
||||
BuildManifestURL(name reference.Named, tag string) (string, error)
|
||||
BuildBlobURL(name reference.Named, dgst digest.Digest) (string, error)
|
||||
BuildManifestURL(name reference.Named) (string, error)
|
||||
BuildBlobURL(ref reference.Canonical) (string, error)
|
||||
}
|
||||
|
||||
// NewBridge returns a notification listener that writes records to sink,
|
||||
|
@ -115,7 +114,12 @@ func (b *bridge) createManifestEvent(action string, repo reference.Named, sm dis
|
|||
event.Target.Size = desc.Size
|
||||
event.Target.Digest = desc.Digest
|
||||
|
||||
event.Target.URL, err = b.ub.BuildManifestURL(repo, event.Target.Digest.String())
|
||||
ref, err := reference.WithDigest(repo, event.Target.Digest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
event.Target.URL, err = b.ub.BuildManifestURL(ref)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -138,8 +142,12 @@ func (b *bridge) createBlobEvent(action string, repo reference.Named, desc distr
|
|||
event.Target.Length = desc.Size
|
||||
event.Target.Repository = repo.Name()
|
||||
|
||||
var err error
|
||||
event.Target.URL, err = b.ub.BuildBlobURL(repo, desc.Digest)
|
||||
ref, err := reference.WithDigest(repo, desc.Digest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
event.Target.URL, err = b.ub.BuildBlobURL(ref)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue