mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Alerting: deactivate an Alertmanager configuration (#36794)
* Alerting: deactivate an Alertmanager configuration Implement DELETE /api/alertmanager/grafana/config/api/v1/alerts by storing the default configuration which stops existing cnfiguration from being in use. * Apply suggestions from code review
This commit is contained in:
committed by
GitHub
parent
f4f2c197ae
commit
afe6e793ff
@@ -122,6 +122,30 @@ func TestNotificationChannels(t *testing.T) {
|
||||
mockChannel.matchesExpNotifications(t, expNonEmailNotifications)
|
||||
require.Equal(t, expEmailNotifications, mockEmail.emails)
|
||||
require.NoError(t, mockChannel.Close())
|
||||
|
||||
{
|
||||
// Delete the configuration; so it returns the default configuration.
|
||||
u := fmt.Sprintf("http://grafana:password@%s/api/alertmanager/grafana/config/api/v1/alerts", grafanaListedAddr)
|
||||
req, err := http.NewRequest(http.MethodDelete, u, nil)
|
||||
require.NoError(t, err)
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := resp.Body.Close()
|
||||
require.NoError(t, err)
|
||||
})
|
||||
b, err := ioutil.ReadAll(resp.Body)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, 202, resp.StatusCode)
|
||||
require.JSONEq(t, `{"message":"configuration deleted; the default is applied"}`, string(b))
|
||||
|
||||
alertsURL := fmt.Sprintf("http://grafana:password@%s/api/alertmanager/grafana/config/api/v1/alerts", grafanaListedAddr)
|
||||
resp = getRequest(t, alertsURL, http.StatusOK) // nolint
|
||||
b, err = ioutil.ReadAll(resp.Body)
|
||||
require.NoError(t, err)
|
||||
require.JSONEq(t, defaultAlertmanagerConfigJSON, string(b))
|
||||
}
|
||||
}
|
||||
|
||||
func getAlertmanagerConfig(channelAddr string) string {
|
||||
|
||||
Reference in New Issue
Block a user