images/archive: use mediatype helpers
Signed-off-by: Bjorn Neergaard <bjorn.neergaard@docker.com>
This commit is contained in:
parent
bb8a472f24
commit
377c5ca9cd
@ -170,8 +170,7 @@ func Export(ctx context.Context, store content.Provider, writer io.Writer, opts
|
|||||||
dManifests := map[digest.Digest]*exportManifest{}
|
dManifests := map[digest.Digest]*exportManifest{}
|
||||||
resolvedIndex := map[digest.Digest]digest.Digest{}
|
resolvedIndex := map[digest.Digest]digest.Digest{}
|
||||||
for _, desc := range eo.manifests {
|
for _, desc := range eo.manifests {
|
||||||
switch desc.MediaType {
|
if images.IsManifestType(desc.MediaType) {
|
||||||
case images.MediaTypeDockerSchema2Manifest, ocispec.MediaTypeImageManifest:
|
|
||||||
mt, ok := dManifests[desc.Digest]
|
mt, ok := dManifests[desc.Digest]
|
||||||
if !ok {
|
if !ok {
|
||||||
// TODO(containerd): Skip if already added
|
// TODO(containerd): Skip if already added
|
||||||
@ -191,7 +190,7 @@ func Export(ctx context.Context, store content.Provider, writer io.Writer, opts
|
|||||||
if name != "" {
|
if name != "" {
|
||||||
mt.names = append(mt.names, name)
|
mt.names = append(mt.names, name)
|
||||||
}
|
}
|
||||||
case images.MediaTypeDockerSchema2ManifestList, ocispec.MediaTypeImageIndex:
|
} else if images.IsIndexType(desc.MediaType) {
|
||||||
d, ok := resolvedIndex[desc.Digest]
|
d, ok := resolvedIndex[desc.Digest]
|
||||||
if !ok {
|
if !ok {
|
||||||
if err := desc.Digest.Validate(); err != nil {
|
if err := desc.Digest.Validate(); err != nil {
|
||||||
@ -255,7 +254,7 @@ func Export(ctx context.Context, store content.Provider, writer io.Writer, opts
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
default:
|
} else {
|
||||||
return fmt.Errorf("only manifests may be exported: %w", errdefs.ErrInvalidArgument)
|
return fmt.Errorf("only manifests may be exported: %w", errdefs.ErrInvalidArgument)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user