test(alert): drain notifications before teardown
CI / Test (rest) (pull_request) Successful in 39s
CI / Lint (pull_request) Successful in 11s
CI / Test (store) (pull_request) Successful in 43s
CI / Build (windows/amd64) (pull_request) Successful in 7s
CI / Build (linux/amd64) (pull_request) Successful in 8s
CI / Build (linux/arm64) (pull_request) Successful in 8s
CI / Test (server-http) (pull_request) Successful in 1m34s
e2e / Playwright vs docker-compose (pull_request) Successful in 1m27s
CI / Test (rest) (pull_request) Successful in 39s
CI / Lint (pull_request) Successful in 11s
CI / Test (store) (pull_request) Successful in 43s
CI / Build (windows/amd64) (pull_request) Successful in 7s
CI / Build (linux/amd64) (pull_request) Successful in 8s
CI / Build (linux/arm64) (pull_request) Successful in 8s
CI / Test (server-http) (pull_request) Successful in 1m34s
e2e / Playwright vs docker-compose (pull_request) Successful in 1m27s
This commit is contained in:
@@ -61,9 +61,20 @@ type Engine struct {
|
||||
stuckThresholds map[string]time.Duration
|
||||
|
||||
closeOnce sync.Once
|
||||
notifyWG sync.WaitGroup
|
||||
done chan struct{}
|
||||
}
|
||||
|
||||
func (e *Engine) dispatchNotification(ctx context.Context, payload notification.Payload) {
|
||||
e.notifyWG.Add(1)
|
||||
go func() {
|
||||
defer e.notifyWG.Done()
|
||||
e.hub.Dispatch(ctx, payload)
|
||||
}()
|
||||
}
|
||||
|
||||
func (e *Engine) waitNotifications() { e.notifyWG.Wait() }
|
||||
|
||||
// NewEngine builds the engine. agentOfflineFloor + tickPeriod default
|
||||
// to 15min and 60s respectively when zero.
|
||||
func NewEngine(st *store.Store, hub *notification.Hub) *Engine {
|
||||
|
||||
Reference in New Issue
Block a user