diff options
Diffstat (limited to 'vendor/github.com/containers/image/docker/docker_image_src.go')
-rw-r--r-- | vendor/github.com/containers/image/docker/docker_image_src.go | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/vendor/github.com/containers/image/docker/docker_image_src.go b/vendor/github.com/containers/image/docker/docker_image_src.go index 7b96e95e8..98f6067e1 100644 --- a/vendor/github.com/containers/image/docker/docker_image_src.go +++ b/vendor/github.com/containers/image/docker/docker_image_src.go @@ -30,8 +30,8 @@ type dockerImageSource struct { // newImageSource creates a new ImageSource for the specified image reference. // The caller must call .Close() on the returned ImageSource. -func newImageSource(ctx *types.SystemContext, ref dockerReference) (*dockerImageSource, error) { - c, err := newDockerClientFromRef(ctx, ref, false, "pull") +func newImageSource(sys *types.SystemContext, ref dockerReference) (*dockerImageSource, error) { + c, err := newDockerClientFromRef(sys, ref, false, "pull") if err != nil { return nil, err } @@ -53,7 +53,7 @@ func (s *dockerImageSource) Close() error { } // LayerInfosForCopy() returns updated layer info that should be used when reading, in preference to values in the manifest, if specified. -func (s *dockerImageSource) LayerInfosForCopy() ([]types.BlobInfo, error) { +func (s *dockerImageSource) LayerInfosForCopy(ctx context.Context) ([]types.BlobInfo, error) { return nil, nil } @@ -74,11 +74,11 @@ func simplifyContentType(contentType string) string { // It may use a remote (= slow) service. // If instanceDigest is not nil, it contains a digest of the specific manifest instance to retrieve (when the primary manifest is a manifest list); // this never happens if the primary manifest is not a manifest list (e.g. if the source never returns manifest lists). -func (s *dockerImageSource) GetManifest(instanceDigest *digest.Digest) ([]byte, string, error) { +func (s *dockerImageSource) GetManifest(ctx context.Context, instanceDigest *digest.Digest) ([]byte, string, error) { if instanceDigest != nil { - return s.fetchManifest(context.TODO(), instanceDigest.String()) + return s.fetchManifest(ctx, instanceDigest.String()) } - err := s.ensureManifestIsLoaded(context.TODO()) + err := s.ensureManifestIsLoaded(ctx) if err != nil { return nil, "", err } @@ -108,7 +108,7 @@ func (s *dockerImageSource) fetchManifest(ctx context.Context, tagOrDigest strin // // ImageSource implementations are not required or expected to do any caching, // but because our signatures are “attached” to the manifest digest, -// we need to ensure that the digest of the manifest returned by GetManifest(nil) +// we need to ensure that the digest of the manifest returned by GetManifest(ctx, nil) // and used by GetSignatures(ctx, nil) are consistent, otherwise we would get spurious // signature verification failures when pulling while a tag is being updated. func (s *dockerImageSource) ensureManifestIsLoaded(ctx context.Context) error { @@ -131,13 +131,13 @@ func (s *dockerImageSource) ensureManifestIsLoaded(ctx context.Context) error { return nil } -func (s *dockerImageSource) getExternalBlob(urls []string) (io.ReadCloser, int64, error) { +func (s *dockerImageSource) getExternalBlob(ctx context.Context, urls []string) (io.ReadCloser, int64, error) { var ( resp *http.Response err error ) for _, url := range urls { - resp, err = s.c.makeRequestToResolvedURL(context.TODO(), "GET", url, nil, nil, -1, false) + resp, err = s.c.makeRequestToResolvedURL(ctx, "GET", url, nil, nil, -1, false) if err == nil { if resp.StatusCode != http.StatusOK { err = errors.Errorf("error fetching external blob from %q: %d", url, resp.StatusCode) @@ -162,14 +162,14 @@ func getBlobSize(resp *http.Response) int64 { } // GetBlob returns a stream for the specified blob, and the blob’s size (or -1 if unknown). -func (s *dockerImageSource) GetBlob(info types.BlobInfo) (io.ReadCloser, int64, error) { +func (s *dockerImageSource) GetBlob(ctx context.Context, info types.BlobInfo) (io.ReadCloser, int64, error) { if len(info.URLs) != 0 { - return s.getExternalBlob(info.URLs) + return s.getExternalBlob(ctx, info.URLs) } path := fmt.Sprintf(blobsPath, reference.Path(s.ref.ref), info.Digest.String()) logrus.Debugf("Downloading %s", path) - res, err := s.c.makeRequest(context.TODO(), "GET", path, nil, nil) + res, err := s.c.makeRequest(ctx, "GET", path, nil, nil) if err != nil { return nil, 0, err } @@ -309,8 +309,8 @@ func (s *dockerImageSource) getSignaturesFromAPIExtension(ctx context.Context, i } // deleteImage deletes the named image from the registry, if supported. -func deleteImage(ctx *types.SystemContext, ref dockerReference) error { - c, err := newDockerClientFromRef(ctx, ref, true, "push") +func deleteImage(ctx context.Context, sys *types.SystemContext, ref dockerReference) error { + c, err := newDockerClientFromRef(sys, ref, true, "push") if err != nil { return err } @@ -325,7 +325,7 @@ func deleteImage(ctx *types.SystemContext, ref dockerReference) error { return err } getPath := fmt.Sprintf(manifestPath, reference.Path(ref.ref), refTail) - get, err := c.makeRequest(context.TODO(), "GET", getPath, headers, nil) + get, err := c.makeRequest(ctx, "GET", getPath, headers, nil) if err != nil { return err } @@ -347,7 +347,7 @@ func deleteImage(ctx *types.SystemContext, ref dockerReference) error { // When retrieving the digest from a registry >= 2.3 use the following header: // "Accept": "application/vnd.docker.distribution.manifest.v2+json" - delete, err := c.makeRequest(context.TODO(), "DELETE", deletePath, headers, nil) + delete, err := c.makeRequest(ctx, "DELETE", deletePath, headers, nil) if err != nil { return err } |