MCPcopy Create free account
hub / github.com/containers/fetchit / runChangesConcurrent

Method runChangesConcurrent

pkg/engine/apply.go:198–215  ·  view source on GitHub ↗
(ctx context.Context, mo *SingleMethodObj, changeMap map[*object.Change]string)

Source from the content-addressed store, hash-verified

196}
197
198func (fc *FetchitConfig) runChangesConcurrent(ctx context.Context, mo *SingleMethodObj, changeMap map[*object.Change]string) error {
199 ch := make(chan error)
200 for change, changePath := range changeMap {
201 go func(ch chan<- error, changePath string, change *object.Change) {
202 if err := fc.EngineMethod(ctx, mo, changePath, change); err != nil {
203 ch <- utils.WrapErr(err, "error running engine method for change from: %s to %s", change.From.Name, change.To.Name)
204 }
205 ch <- nil
206 }(ch, changePath, change)
207 }
208 for range changeMap {
209 err := <-ch
210 if err != nil {
211 return err
212 }
213 }
214 return nil
215}

Callers 1

ApplyMethod · 0.95

Calls 2

EngineMethodMethod · 0.95
WrapErrFunction · 0.92

Tested by

no test coverage detected