INNER CODE UNIT · Go
platformMC
container2wasm/container2wasm · cmd/create-spec/main.go:101
platformMC = platforms.Only(*platform)
}
return unpackOCI(ctx, imgDir, platformMC, rootfs, idx.Manifests)
}
func unpackOCI(ctx context.Context, imgDir string, platformMC platforms.MatchComparer, rootfs string, descs []ocispec.Descriptor) (io.Reader, error) {
var children []ocispec.Descriptor
for _, desc := range descs {
switch desc.MediaType {
case ocispec.MediaTypeImageManifest, images.MediaTypeDockerSchema2Manifest:
if desc.Platform != nil && platformMC != nil && !platformMC.Match(*desc.Platform) {
continue
}
mfstD, err := os.ReadFile(filepath.Join(imgDir, "/blobs/sha256", desc.Digest.Encoded()))
if err != nil {
return nil, err
}
var manifest ocispec.Manifest