pull_v2_unix.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. // +build !windows
  2. package distribution // import "github.com/docker/docker/distribution"
  3. import (
  4. "context"
  5. "runtime"
  6. "github.com/docker/distribution"
  7. "github.com/docker/distribution/manifest/manifestlist"
  8. "github.com/sirupsen/logrus"
  9. )
  10. func (ld *v2LayerDescriptor) open(ctx context.Context) (distribution.ReadSeekCloser, error) {
  11. blobs := ld.repo.Blobs(ctx)
  12. return blobs.Open(ctx, ld.digest)
  13. }
  14. func filterManifests(manifests []manifestlist.ManifestDescriptor, _ string) []manifestlist.ManifestDescriptor {
  15. var matches []manifestlist.ManifestDescriptor
  16. for _, manifestDescriptor := range manifests {
  17. if manifestDescriptor.Platform.Architecture == runtime.GOARCH && manifestDescriptor.Platform.OS == runtime.GOOS {
  18. matches = append(matches, manifestDescriptor)
  19. logrus.Debugf("found match for %s/%s with media type %s, digest %s", runtime.GOOS, runtime.GOARCH, manifestDescriptor.MediaType, manifestDescriptor.Digest.String())
  20. }
  21. }
  22. return matches
  23. }
  24. // checkImageCompatibility is a Windows-specific function. No-op on Linux
  25. func checkImageCompatibility(imageOS, imageOSVersion string) error {
  26. return nil
  27. }