
Relevant changes; - swarmkit#2681 Handle an edge case in CA rotation where we reclaim CA service from an external CA - swarmkit#2750 Use gometalinter; switch from x/net/context -> context Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
13 lines
340 B
Go
13 lines
340 B
Go
package agent
|
|
|
|
import "context"
|
|
|
|
// runctx blocks until the function exits, closed is closed, or the context is
|
|
// cancelled. Call as part of go statement.
|
|
func runctx(ctx context.Context, closed chan struct{}, errs chan error, fn func(ctx context.Context) error) {
|
|
select {
|
|
case errs <- fn(ctx):
|
|
case <-closed:
|
|
case <-ctx.Done():
|
|
}
|
|
}
|