gimbal
gimbal copied to clipboard
Improve goroutine and error handling in the discoverers
Use heptio/workgroup to improve handling of the multiple goroutines that are spawned in each of the discoverers. This will also help us to bubble up errors to main, and handle them appropriately.
An example of this is #224. We wanted to handle the case where re-auth failed 3 times, but there was no good way of bubbling up the error to main.go. We could make reconciler.Run return an error to bubble it up to main.go, and use heptio/workgroup to handle the goroutine part of it.