From ff2f7f2621a294cf45d4032f5010c02b8854fb9e Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Thu, 11 Aug 2022 19:08:09 -0400 Subject: [PATCH] Alerting: fetch interval from stored namespace UID (#53195) (#53636) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit e14c91d5d43e7c5a81267894033cb4769c069fd0) Co-authored-by: Jean-Philippe Quéméner --- pkg/services/ngalert/provisioning/alert_rules.go | 5 +---- .../ngalert/provisioning/alert_rules_test.go | 13 +++++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/pkg/services/ngalert/provisioning/alert_rules.go b/pkg/services/ngalert/provisioning/alert_rules.go index 047bbacb2a9..af4a61e30bb 100644 --- a/pkg/services/ngalert/provisioning/alert_rules.go +++ b/pkg/services/ngalert/provisioning/alert_rules.go @@ -276,10 +276,7 @@ func (service *AlertRuleService) UpdateAlertRule(ctx context.Context, rule model } rule.Updated = time.Now() rule.ID = storedRule.ID - rule.IntervalSeconds, err = service.ruleStore.GetRuleGroupInterval(ctx, rule.OrgID, rule.NamespaceUID, rule.RuleGroup) - if err != nil { - return models.AlertRule{}, err - } + rule.IntervalSeconds = storedRule.IntervalSeconds err = rule.SetDashboardAndPanel() if err != nil { return models.AlertRule{}, err diff --git a/pkg/services/ngalert/provisioning/alert_rules_test.go b/pkg/services/ngalert/provisioning/alert_rules_test.go index 190ac769762..16c1fef1609 100644 --- a/pkg/services/ngalert/provisioning/alert_rules_test.go +++ b/pkg/services/ngalert/provisioning/alert_rules_test.go @@ -69,6 +69,19 @@ func TestAlertRuleService(t *testing.T) { require.Equal(t, interval, rule.IntervalSeconds) }) + t.Run("if a folder was renamed the interval should be fetched from the renamed folder", func(t *testing.T) { + var orgID int64 = 2 + rule := dummyRule("test#1", orgID) + rule.NamespaceUID = "123abc" + rule, err := ruleService.CreateAlertRule(context.Background(), rule, models.ProvenanceNone, 0) + require.NoError(t, err) + + rule.NamespaceUID = "abc123" + _, err = ruleService.UpdateAlertRule(context.Background(), + rule, models.ProvenanceNone) + require.NoError(t, err) + }) + t.Run("group creation should propagate group title correctly", func(t *testing.T) { var orgID int64 = 1 group := createDummyGroup("group-test-3", orgID)