mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Alerting: Update to alerting 20230203015918-0e4e2675d7aa (after refactoring) (#62823)
* add alerting prefix to some packages from alerting that have similar names in prometheus alertmanager
This commit is contained in:
@@ -16,12 +16,20 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/grafana/alerting/alerting/notifier/channels"
|
||||
"github.com/grafana/grafana/pkg/expr"
|
||||
"github.com/grafana/alerting/receivers"
|
||||
alertingLine "github.com/grafana/alerting/receivers/line"
|
||||
alertingPagerduty "github.com/grafana/alerting/receivers/pagerduty"
|
||||
alertingPushover "github.com/grafana/alerting/receivers/pushover"
|
||||
alertingSlack "github.com/grafana/alerting/receivers/slack"
|
||||
alertingTelegram "github.com/grafana/alerting/receivers/telegram"
|
||||
alertingThreema "github.com/grafana/alerting/receivers/threema"
|
||||
alertingTemplates "github.com/grafana/alerting/templates"
|
||||
"github.com/prometheus/alertmanager/template"
|
||||
"github.com/prometheus/common/model"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/grafana/grafana/pkg/expr"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
apimodels "github.com/grafana/grafana/pkg/services/ngalert/api/tooling/definitions"
|
||||
ngmodels "github.com/grafana/grafana/pkg/services/ngalert/models"
|
||||
@@ -720,24 +728,24 @@ func TestIntegrationNotificationChannels(t *testing.T) {
|
||||
mockChannel.responses["slack_recvX"] = `{"ok": true}`
|
||||
|
||||
// Overriding some URLs to send to the mock channel.
|
||||
os, opa, ot, opu, ogb, ol, oth := channels.SlackAPIEndpoint, channels.PagerdutyEventAPIURL,
|
||||
channels.TelegramAPIURL, channels.PushoverEndpoint, channels.GetBoundary,
|
||||
channels.LineNotifyURL, channels.ThreemaGwBaseURL
|
||||
originalTemplate := channels.DefaultTemplateString
|
||||
os, opa, ot, opu, ogb, ol, oth := alertingSlack.APIURL, alertingPagerduty.APIURL,
|
||||
alertingTelegram.APIURL, alertingPushover.APIURL, receivers.GetBoundary,
|
||||
alertingLine.APIURL, alertingThreema.APIURL
|
||||
originalTemplate := alertingTemplates.DefaultTemplateString
|
||||
t.Cleanup(func() {
|
||||
channels.SlackAPIEndpoint, channels.PagerdutyEventAPIURL,
|
||||
channels.TelegramAPIURL, channels.PushoverEndpoint, channels.GetBoundary,
|
||||
channels.LineNotifyURL, channels.ThreemaGwBaseURL = os, opa, ot, opu, ogb, ol, oth
|
||||
channels.DefaultTemplateString = originalTemplate
|
||||
alertingSlack.APIURL, alertingPagerduty.APIURL,
|
||||
alertingTelegram.APIURL, alertingPushover.APIURL, receivers.GetBoundary,
|
||||
alertingLine.APIURL, alertingThreema.APIURL = os, opa, ot, opu, ogb, ol, oth
|
||||
alertingTemplates.DefaultTemplateString = originalTemplate
|
||||
})
|
||||
channels.DefaultTemplateString = channels.TemplateForTestsString
|
||||
channels.SlackAPIEndpoint = fmt.Sprintf("http://%s/slack_recvX/slack_testX", mockChannel.server.Addr)
|
||||
channels.PagerdutyEventAPIURL = fmt.Sprintf("http://%s/pagerduty_recvX/pagerduty_testX", mockChannel.server.Addr)
|
||||
channels.TelegramAPIURL = fmt.Sprintf("http://%s/telegram_recv/bot%%s/%%s", mockChannel.server.Addr)
|
||||
channels.PushoverEndpoint = fmt.Sprintf("http://%s/pushover_recv/pushover_test", mockChannel.server.Addr)
|
||||
channels.LineNotifyURL = fmt.Sprintf("http://%s/line_recv/line_test", mockChannel.server.Addr)
|
||||
channels.ThreemaGwBaseURL = fmt.Sprintf("http://%s/threema_recv/threema_test", mockChannel.server.Addr)
|
||||
channels.GetBoundary = func() string { return "abcd" }
|
||||
alertingTemplates.DefaultTemplateString = alertingTemplates.TemplateForTestsString
|
||||
alertingSlack.APIURL = fmt.Sprintf("http://%s/slack_recvX/slack_testX", mockChannel.server.Addr)
|
||||
alertingPagerduty.APIURL = fmt.Sprintf("http://%s/pagerduty_recvX/pagerduty_testX", mockChannel.server.Addr)
|
||||
alertingTelegram.APIURL = fmt.Sprintf("http://%s/telegram_recv/bot%%s/%%s", mockChannel.server.Addr)
|
||||
alertingPushover.APIURL = fmt.Sprintf("http://%s/pushover_recv/pushover_test", mockChannel.server.Addr)
|
||||
alertingLine.APIURL = fmt.Sprintf("http://%s/line_recv/line_test", mockChannel.server.Addr)
|
||||
alertingThreema.APIURL = fmt.Sprintf("http://%s/threema_recv/threema_test", mockChannel.server.Addr)
|
||||
receivers.GetBoundary = func() string { return "abcd" }
|
||||
|
||||
env.NotificationService.EmailHandlerSync = mockEmail.sendEmailCommandHandlerSync
|
||||
// As we are using a NotificationService mock here, but the test expects real NotificationService -
|
||||
@@ -1153,8 +1161,8 @@ func multipartEqual(t *testing.T, exp, act string) {
|
||||
}
|
||||
}
|
||||
|
||||
expReader := multipart.NewReader(strings.NewReader(exp), channels.GetBoundary())
|
||||
actReader := multipart.NewReader(strings.NewReader(act), channels.GetBoundary())
|
||||
expReader := multipart.NewReader(strings.NewReader(exp), receivers.GetBoundary())
|
||||
actReader := multipart.NewReader(strings.NewReader(act), receivers.GetBoundary())
|
||||
expMap, actMap := make(map[string]string), make(map[string]string)
|
||||
fillMap(expReader, expMap)
|
||||
fillMap(actReader, actMap)
|
||||
@@ -1172,7 +1180,7 @@ type mockEmailHandler struct {
|
||||
|
||||
func (e *mockEmailHandler) sendEmailCommandHandlerSync(_ context.Context, cmd *notifications.SendEmailCommandSync) error {
|
||||
// We 0 out the start time since that is a variable that we cannot predict.
|
||||
alerts := cmd.Data["Alerts"].(channels.ExtendedAlerts)
|
||||
alerts := cmd.Data["Alerts"].(alertingTemplates.ExtendedAlerts)
|
||||
for i := range alerts {
|
||||
alerts[i].StartsAt = time.Time{}
|
||||
}
|
||||
@@ -2293,8 +2301,8 @@ var expEmailNotifications = []*notifications.SendEmailCommandSync{
|
||||
"Title": "[FIRING:1] EmailAlert (default)",
|
||||
"Message": "",
|
||||
"Status": "firing",
|
||||
"Alerts": channels.ExtendedAlerts{
|
||||
channels.ExtendedAlert{
|
||||
"Alerts": alertingTemplates.ExtendedAlerts{
|
||||
alertingTemplates.ExtendedAlert{
|
||||
Status: "firing",
|
||||
Labels: template.KV{"alertname": "EmailAlert", "grafana_folder": "default"},
|
||||
Annotations: template.KV{},
|
||||
|
||||
Reference in New Issue
Block a user