MCPcopy Create free account
hub / github.com/containerd/nerdctl / readLayerContent

Function readLayerContent

pkg/cmd/image/import.go:278–290  ·  view source on GitHub ↗
(ctx context.Context, cs content.Store, layerDigest digest.Digest, size int64)

Source from the content-addressed store, hash-verified

276}
277
278func readLayerContent(ctx context.Context, cs content.Store, layerDigest digest.Digest, size int64) ([]byte, error) {
279 ra, err := cs.ReaderAt(ctx, ocispec.Descriptor{Digest: layerDigest, Size: size})
280 if err != nil {
281 return nil, err
282 }
283 defer ra.Close()
284
285 layerContent := make([]byte, size)
286 if _, err := ra.ReadAt(layerContent, 0); err != nil {
287 return nil, err
288 }
289 return layerContent, nil
290}
291
292func buildDockerArchive(configJSON []byte, configDigest digest.Digest, layerContent []byte, layerDigest digest.Digest, prefix string) (io.ReadCloser, error) {
293 layerFileName := layerDigest.Encoded() + ".tar.gz"

Callers 1

Calls 3

ReadAtMethod · 0.80
ReaderAtMethod · 0.45
CloseMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…