MCPcopy Create free account
hub / github.com/dagger/dagger / attachContentToLease

Method attachContentToLease

engine/server/resolver/metadata.go:249–271  ·  view source on GitHub ↗
(ctx context.Context, descs []ocispecs.Descriptor)

Source from the content-addressed store, hash-verified

247}
248
249func (r *Resolver) attachContentToLease(ctx context.Context, descs []ocispecs.Descriptor) error {
250 leaseID, ok := leases.FromContext(ctx)
251 if !ok {
252 return errors.New("attach content to lease: missing lease")
253 }
254 seen := map[digest.Digest]struct{}{}
255 for _, desc := range descs {
256 if desc.Digest == "" {
257 continue
258 }
259 if _, ok := seen[desc.Digest]; ok {
260 continue
261 }
262 seen[desc.Digest] = struct{}{}
263 if err := r.leaseManager.AddResource(ctx, leases.Lease{ID: leaseID}, leases.Resource{
264 ID: desc.Digest.String(),
265 Type: "content",
266 }); err != nil && !cerrdefs.IsAlreadyExists(err) {
267 return err
268 }
269 }
270 return nil
271}

Callers 2

Calls 3

NewMethod · 0.65
StringMethod · 0.65
AddResourceMethod · 0.45

Tested by

no test coverage detected