Skip to content

Commit 81e3ed6

Browse files
Merge pull request #814 from pgier/thanos-ruler-cleanup
Bug 1845825: Cleanup thanos ruler route when user workload monitoring is disabled
2 parents a8f8716 + f86d5ef commit 81e3ed6

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

pkg/client/client.go

+8
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,14 @@ func (c *Client) DeleteService(svc *v1.Service) error {
552552
return err
553553
}
554554

555+
func (c *Client) DeleteRoute(r *routev1.Route) error {
556+
err := c.osrclient.RouteV1().Routes(r.GetNamespace()).Delete(r.GetName(), &metav1.DeleteOptions{})
557+
if apierrors.IsNotFound(err) {
558+
return nil
559+
}
560+
return err
561+
}
562+
555563
func (c *Client) DeletePrometheusRule(rule *monv1.PrometheusRule) error {
556564
err := c.mclient.MonitoringV1().PrometheusRules(rule.GetNamespace()).Delete(rule.GetName(), &metav1.DeleteOptions{})
557565
if apierrors.IsNotFound(err) {

pkg/tasks/thanos_ruler_user_workload.go

+13-3
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,17 @@ func (t *ThanosRulerUserWorkloadTask) destroy() error {
251251

252252
err = t.client.DeletePrometheusRule(prmrl)
253253
if err != nil {
254-
return errors.Wrap(err, "reconciling Thanos Ruler PrometheusRule failed")
254+
return errors.Wrap(err, "deleting Thanos Ruler PrometheusRule failed")
255+
}
256+
257+
route, err := t.factory.ThanosRulerRoute()
258+
if err != nil {
259+
return errors.Wrap(err, "initializing Thanos Ruler Route failed")
260+
}
261+
262+
err = t.client.DeleteRoute(route)
263+
if err != nil {
264+
return errors.Wrap(err, "deleting Thanos Ruler Route failed")
255265
}
256266

257267
svc, err := t.factory.ThanosRulerService()
@@ -271,12 +281,12 @@ func (t *ThanosRulerUserWorkloadTask) destroy() error {
271281

272282
err = t.client.DeleteClusterRole(cr)
273283
if err != nil {
274-
return errors.Wrap(err, "reconciling Thanos Ruler ClusterRole failed")
284+
return errors.Wrap(err, "deleting Thanos Ruler ClusterRole failed")
275285
}
276286

277287
crb, err := t.factory.ThanosRulerClusterRoleBinding()
278288
if err != nil {
279-
return errors.Wrap(err, "deleting Thanos Ruler ClusterRoleBinding failed")
289+
return errors.Wrap(err, "initializing Thanos Ruler ClusterRoleBinding failed")
280290
}
281291

282292
err = t.client.DeleteClusterRoleBinding(crb)

0 commit comments

Comments
 (0)