(ctx context.Context, desc ocispec.Descriptor)
| 554 | } |
| 555 | |
| 556 | func (nw *namespacedWriter) createAndCopy(ctx context.Context, desc ocispec.Descriptor) error { |
| 557 | nwDescWithoutDigest := desc |
| 558 | nwDescWithoutDigest.Digest = "" |
| 559 | w, err := nw.provider.Writer(ctx, content.WithRef(nw.bref), content.WithDescriptor(nwDescWithoutDigest)) |
| 560 | if err != nil { |
| 561 | return err |
| 562 | } |
| 563 | |
| 564 | if desc.Size > 0 { |
| 565 | ra, err := nw.provider.ReaderAt(ctx, nw.desc) |
| 566 | if err != nil { |
| 567 | w.Close() |
| 568 | return err |
| 569 | } |
| 570 | defer ra.Close() |
| 571 | |
| 572 | if err := content.CopyReaderAt(w, ra, desc.Size); err != nil { |
| 573 | w.Close() |
| 574 | return err |
| 575 | } |
| 576 | } |
| 577 | nw.w = w |
| 578 | |
| 579 | return nil |
| 580 | } |
| 581 | |
| 582 | func (nw *namespacedWriter) Commit(ctx context.Context, size int64, expected digest.Digest, opts ...content.Opt) error { |
| 583 | ctx = namespaces.WithNamespace(ctx, nw.namespace) |
no test coverage detected