mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Alerting: Check whether the internal Alertmanager is ready in remote secondary mode (#79406)
Alerting: Check whether the internal Alertmanager is ready in remote secondary
This commit is contained in:
parent
937a7ed6d9
commit
1a5c2cb55b
@ -282,21 +282,12 @@ func TestForkedAlertmanager_ModeRemoteSecondary(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Ready", func(tt *testing.T) {
|
||||
// Ready should be called on both Alertmanagers
|
||||
internal, remote, forked := genTestAlertmanagers(tt, modeRemoteSecondary)
|
||||
// Ready should be called only on the internal Alertmanager.
|
||||
internal, _, forked := genTestAlertmanagers(tt, modeRemoteSecondary)
|
||||
internal.EXPECT().Ready().Return(true).Once()
|
||||
remote.EXPECT().Ready().Return(true).Once()
|
||||
require.True(tt, forked.Ready())
|
||||
|
||||
// If one of the two Alertmanagers is not ready, it returns false.
|
||||
internal, remote, forked = genTestAlertmanagers(tt, modeRemoteSecondary)
|
||||
internal.EXPECT().Ready().Return(false).Maybe()
|
||||
remote.EXPECT().Ready().Return(true).Maybe()
|
||||
require.False(tt, forked.Ready())
|
||||
|
||||
internal, remote, forked = genTestAlertmanagers(tt, modeRemoteSecondary)
|
||||
internal.EXPECT().Ready().Return(true).Maybe()
|
||||
remote.EXPECT().Ready().Return(false).Maybe()
|
||||
require.False(tt, forked.Ready())
|
||||
})
|
||||
}
|
||||
|
@ -98,9 +98,6 @@ func (fam *RemoteSecondaryForkedAlertmanager) StopAndWait() {
|
||||
}
|
||||
|
||||
func (fam *RemoteSecondaryForkedAlertmanager) Ready() bool {
|
||||
// Both Alertmanagers must be ready.
|
||||
if ready := fam.remote.Ready(); !ready {
|
||||
return false
|
||||
}
|
||||
// We only care about the internal Alertmanager being ready.
|
||||
return fam.internal.Ready()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user