Skip to content

Commit 6a75a8f

Browse files
Alerting: Update grafana/alerting and use Upsert for creating silences (#85676)
* Alerting: Update grafana/alerting and use Upsert for creating silences * go.work.sum * change error message in tests for silences (save -> upsert)
1 parent 724517d commit 6a75a8f

File tree

7 files changed

+14
-10
lines changed

7 files changed

+14
-10
lines changed

go.mod

+2-2
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ require (
4747
github.com/google/uuid v1.6.0 // @grafana/backend-platform
4848
github.com/google/wire v0.5.0 // @grafana/backend-platform
4949
github.com/gorilla/websocket v1.5.0 // @grafana/grafana-app-platform-squad
50-
github.com/grafana/alerting v0.0.0-20240322221449-89ae4e299bf8 // @grafana/alerting-squad-backend
50+
github.com/grafana/alerting v0.0.0-20240405171255-923446b51c2d // @grafana/alerting-squad-backend
5151
github.com/grafana/cuetsy v0.1.11 // @grafana/grafana-as-code
5252
github.com/grafana/grafana-aws-sdk v0.25.0 // @grafana/aws-datasources
5353
github.com/grafana/grafana-azure-sdk-go/v2 v2.0.1 // @grafana/partner-datasources
@@ -514,7 +514,7 @@ replace github.com/hashicorp/go-hclog => github.com/hashicorp/go-hclog v0.16.1
514514

515515
// Use our fork of the upstream alertmanagers.
516516
// This is required in order to get notification delivery errors from the receivers API.
517-
replace github.com/prometheus/alertmanager => github.com/grafana/prometheus-alertmanager v0.25.1-0.20240208102907-e82436ce63e6
517+
replace github.com/prometheus/alertmanager => github.com/grafana/prometheus-alertmanager v0.25.1-0.20240321101410-40158de684b2
518518

519519
exclude github.com/mattn/go-sqlite3 v2.0.3+incompatible
520520

go.sum

+4-4
Original file line numberDiff line numberDiff line change
@@ -2159,8 +2159,8 @@ github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/ad
21592159
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
21602160
github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc=
21612161
github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
2162-
github.com/grafana/alerting v0.0.0-20240322221449-89ae4e299bf8 h1:ndBSFAHmJRWqln2uNys7lV0+9U8tlW6ZuNz8ETW60Us=
2163-
github.com/grafana/alerting v0.0.0-20240322221449-89ae4e299bf8/go.mod h1:0nHKO0w8OTemvZ3eh7+s1EqGGhgbs0kvkTeLU1FrbTw=
2162+
github.com/grafana/alerting v0.0.0-20240405171255-923446b51c2d h1:wu7A06T+xFTDGUfrR6oVdM3k+vp1MLRjsXd7dckHfGA=
2163+
github.com/grafana/alerting v0.0.0-20240405171255-923446b51c2d/go.mod h1:TfSmMRify3r/yFbVM7tJGT44qUkBQ3ZWka8jwSUHQL4=
21642164
github.com/grafana/authlib v0.0.0-20240328140636-a7388d0bac72 h1:lGEuhD/KhhN1OiPrvwQejl9Lg8MvaHdj3lHZNref4is=
21652165
github.com/grafana/authlib v0.0.0-20240328140636-a7388d0bac72/go.mod h1:86rRD5P6u2JPWtNWTMOlqlU+YMv2fUvVz/DomA6L7w4=
21662166
github.com/grafana/codejen v0.0.3 h1:tAWxoTUuhgmEqxJPOLtJoxlPBbMULFwKFOcRsPRPXDw=
@@ -2196,8 +2196,8 @@ github.com/grafana/grafana/pkg/promlib v0.0.4 h1:9jAW19WABIAp6NlpZsAERQ+s5ayQYDF
21962196
github.com/grafana/grafana/pkg/promlib v0.0.4/go.mod h1:621zjsCaFtP7mqqaiMJRN9h3SXrywAMaIPkeHvq3jsk=
21972197
github.com/grafana/grafana/pkg/util/xorm v0.0.1 h1:72QZjxWIWpSeOF8ob4aMV058kfgZyeetkAB8dmeti2o=
21982198
github.com/grafana/grafana/pkg/util/xorm v0.0.1/go.mod h1:eNfbB9f2jM8o9RfwqwjY8SYm5tvowJ8Ly+iE4P9rXII=
2199-
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240208102907-e82436ce63e6 h1:CBm0rwLCPDyarg9/bHJ50rBLYmyMDoyCWpgRMITZhdA=
2200-
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240208102907-e82436ce63e6/go.mod h1:8Ia/R3urPmbzJ8OsdvmZvIprDwvwmYCmUbwBL+jlPOE=
2199+
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240321101410-40158de684b2 h1:wqqaqZw+J8sLXzOjXMMde219jc6dfJPI8599UpaILZw=
2200+
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240321101410-40158de684b2/go.mod h1:8Ia/R3urPmbzJ8OsdvmZvIprDwvwmYCmUbwBL+jlPOE=
22012201
github.com/grafana/pyroscope-go/godeltaprof v0.1.6 h1:nEdZ8louGAplSvIJi1HVp7kWvFvdiiYg3COLlTwJiFo=
22022202
github.com/grafana/pyroscope-go/godeltaprof v0.1.6/go.mod h1:Tk376Nbldo4Cha9RgiU7ik8WKFkNpfds98aUzS8omLE=
22032203
github.com/grafana/pyroscope/api v0.3.0 h1:WcVKNZ8JlriJnD28wTkZray0wGo8dGkizSJXnbG7Gd8=

go.work.sum

+2
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,8 @@ github.com/grafana/grafana-plugin-sdk-go v0.212.0/go.mod h1:qsI4ktDf0lig74u8SLPJ
414414
github.com/grafana/grafana-plugin-sdk-go v0.215.0/go.mod h1:nBsh3jRItKQUXDF2BQkiQCPxqrsSQeb+7hiFyJTO1RE=
415415
github.com/grafana/grafana-plugin-sdk-go v0.216.0/go.mod h1:FdvSvOliqpVLnytM7e89zCFyYPDE6VOn9SIjVQRvVxM=
416416
github.com/grafana/grafana/pkg/promlib v0.0.3/go.mod h1:3El4NlsfALz8QQCbEGHGFvJUG+538QLMuALRhZ3pcoo=
417+
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240321101410-40158de684b2 h1:wqqaqZw+J8sLXzOjXMMde219jc6dfJPI8599UpaILZw=
418+
github.com/grafana/prometheus-alertmanager v0.25.1-0.20240321101410-40158de684b2/go.mod h1:8Ia/R3urPmbzJ8OsdvmZvIprDwvwmYCmUbwBL+jlPOE=
417419
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 h1:pdN6V1QBWetyv/0+wjACpqVH+eVULgEjkurDLq3goeM=
418420
github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1/go.mod h1:YvJ2f6MplWDhfxiUC3KpyTy76kYUZA4W3pTv/wdKQ9Y=
419421
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU=

pkg/apiserver/go.mod

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ require (
1111
k8s.io/apimachinery v0.29.2
1212
k8s.io/apiserver v0.29.2
1313
k8s.io/client-go v0.29.2
14+
k8s.io/component-base v0.29.2
15+
k8s.io/klog v1.0.0
1416
k8s.io/klog/v2 v2.120.1
1517
k8s.io/kube-openapi v0.0.0-20240220201932-37d671a357a5
1618
)
@@ -142,7 +144,6 @@ require (
142144
gopkg.in/yaml.v2 v2.4.0 // indirect
143145
gopkg.in/yaml.v3 v3.0.1 // indirect
144146
k8s.io/api v0.29.2 // indirect
145-
k8s.io/component-base v0.29.2 // indirect
146147
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
147148
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.28.0 // indirect
148149
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect

pkg/apiserver/go.sum

+1
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,7 @@ k8s.io/client-go v0.29.2 h1:FEg85el1TeZp+/vYJM7hkDlSTFZ+c5nnK44DJ4FyoRg=
291291
k8s.io/client-go v0.29.2/go.mod h1:knlvFZE58VpqbQpJNbCbctTVXcd35mMyAAwBdpt4jrA=
292292
k8s.io/component-base v0.29.2 h1:lpiLyuvPA9yV1aQwGLENYyK7n/8t6l3nn3zAtFTJYe8=
293293
k8s.io/component-base v0.29.2/go.mod h1:BfB3SLrefbZXiBfbM+2H1dlat21Uewg/5qtKOl8degM=
294+
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
294295
k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw=
295296
k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
296297
k8s.io/kube-openapi v0.0.0-20240220201932-37d671a357a5 h1:QSpdNrZ9uRlV0VkqLvVO0Rqg8ioKi3oSw7O5P7pJV8M=

pkg/services/ngalert/notifier/silences.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ func (am *alertmanager) GetSilence(_ context.Context, silenceID string) (alertin
1515
}
1616

1717
func (am *alertmanager) CreateSilence(_ context.Context, ps *alertingNotify.PostableSilence) (string, error) {
18-
return am.Base.CreateSilence(ps)
18+
return am.Base.UpsertSilence(ps)
1919
}
2020

2121
func (am *alertmanager) DeleteSilence(_ context.Context, silenceID string) error {

pkg/tests/api/alerting/api_alertmanager_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -1973,7 +1973,7 @@ func TestIntegrationAlertmanagerCreateSilence(t *testing.T) {
19731973
StartsAt: util.Pointer(strfmt.DateTime(time.Now())),
19741974
},
19751975
},
1976-
expErr: "unable to save silence: silence invalid: invalid label matcher 0: invalid label name \"\": unable to create silence",
1976+
expErr: "unable to upsert silence: silence invalid: invalid label matcher 0: invalid label name \"\": unable to create silence",
19771977
}, {
19781978
name: "can't create silence for missing label value",
19791979
silence: apimodels.PostableSilence{
@@ -1990,7 +1990,7 @@ func TestIntegrationAlertmanagerCreateSilence(t *testing.T) {
19901990
StartsAt: util.Pointer(strfmt.DateTime(time.Now())),
19911991
},
19921992
},
1993-
expErr: "unable to save silence: silence invalid: at least one matcher must not match the empty string: unable to create silence",
1993+
expErr: "unable to upsert silence: silence invalid: at least one matcher must not match the empty string: unable to create silence",
19941994
}}
19951995

19961996
for _, tc := range cases {

0 commit comments

Comments
 (0)