in resource_registry.go [40:58]
func (r *baseResourceRegistry) cleanup() {
var wg sync.WaitGroup
for name, res := range r.m {
if res.creator == nil || // placeholder resource
(res.creator != nil && !res.createdInWorkflow) || // resource isn‘t created successfully
(res.NoCleanup && !r.w.forceCleanup) || // resource is flagged to avoid cleanup
res.deleted { // resource has been deleted
continue
}
wg.Add(1)
go func(name string) {
defer wg.Done()
if err := r.delete(name); err != nil && err.etype() != resourceDNEError {
fmt.Println(err)
}
}(name)
}
wg.Wait()
}