remotes: simplify mediatype logic
Signed-off-by: Bjorn Neergaard <bjorn.neergaard@docker.com>
This commit is contained in:
parent
8b105984b5
commit
5518a50260
@ -90,23 +90,21 @@ func MakeRefKey(ctx context.Context, desc ocispec.Descriptor) string {
|
|||||||
// discovered in a call to Dispatch. Use with ChildrenHandler to do a full
|
// discovered in a call to Dispatch. Use with ChildrenHandler to do a full
|
||||||
// recursive fetch.
|
// recursive fetch.
|
||||||
func FetchHandler(ingester content.Ingester, fetcher Fetcher) images.HandlerFunc {
|
func FetchHandler(ingester content.Ingester, fetcher Fetcher) images.HandlerFunc {
|
||||||
return func(ctx context.Context, desc ocispec.Descriptor) (subdescs []ocispec.Descriptor, err error) {
|
return func(ctx context.Context, desc ocispec.Descriptor) ([]ocispec.Descriptor, error) {
|
||||||
ctx = log.WithLogger(ctx, log.G(ctx).WithFields(log.Fields{
|
ctx = log.WithLogger(ctx, log.G(ctx).WithFields(log.Fields{
|
||||||
"digest": desc.Digest,
|
"digest": desc.Digest,
|
||||||
"mediatype": desc.MediaType,
|
"mediatype": desc.MediaType,
|
||||||
"size": desc.Size,
|
"size": desc.Size,
|
||||||
}))
|
}))
|
||||||
|
|
||||||
switch desc.MediaType {
|
if desc.MediaType == images.MediaTypeDockerSchema1Manifest {
|
||||||
case images.MediaTypeDockerSchema1Manifest:
|
|
||||||
return nil, fmt.Errorf("%v not supported", desc.MediaType)
|
return nil, fmt.Errorf("%v not supported", desc.MediaType)
|
||||||
default:
|
|
||||||
err := Fetch(ctx, ingester, fetcher, desc)
|
|
||||||
if errdefs.IsAlreadyExists(err) {
|
|
||||||
return nil, nil
|
|
||||||
}
|
|
||||||
return nil, err
|
|
||||||
}
|
}
|
||||||
|
err := Fetch(ctx, ingester, fetcher, desc)
|
||||||
|
if errdefs.IsAlreadyExists(err) {
|
||||||
|
return nil, nil
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -316,21 +314,16 @@ func FilterManifestByPlatformHandler(f images.HandlerFunc, m platforms.Matcher)
|
|||||||
return children, nil
|
return children, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
var descs []ocispec.Descriptor
|
if images.IsManifestType(desc.MediaType) && !m.Match(*desc.Platform) {
|
||||||
if images.IsManifestType(desc.MediaType) {
|
var descs []ocispec.Descriptor
|
||||||
if m.Match(*desc.Platform) {
|
for _, child := range children {
|
||||||
descs = children
|
if images.IsConfigType(child.MediaType) {
|
||||||
} else {
|
descs = append(descs, child)
|
||||||
for _, child := range children {
|
|
||||||
if images.IsConfigType(child.MediaType) {
|
|
||||||
descs = append(descs, child)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
return descs, nil
|
||||||
descs = children
|
|
||||||
}
|
}
|
||||||
return descs, nil
|
return children, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user