Skip to content

Commit

Permalink
Merge pull request #952 from imjaroiswebdev/issue-944-alert-grouping-404
Browse files Browse the repository at this point in the history
Address: Using pagerduty_alert_grouping_setting causes error HTTP response failed with status code 404 and no JSON error object was present
  • Loading branch information
imjaroiswebdev authored Nov 11, 2024
2 parents 7b98b31 + 306481a commit ff2374e
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 8 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module github.com/PagerDuty/terraform-provider-pagerduty
go 1.20

require (
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241104145658-2a0050d437ac
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241111225923-0ef8f340dd3c
github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320
github.com/hashicorp/go-version v1.6.0
github.com/hashicorp/hc-install v0.6.2
Expand Down
8 changes: 2 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk=
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241002154647-8ceedfd04d88 h1:y/icahuphX4xGMW4nLN+Bl4MbFUU4rEA9spwgcPIDJk=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241002154647-8ceedfd04d88/go.mod h1:ilimTqwHSBjmvKeYA/yayDBZvzf/CX4Pwa9Qbhekzok=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241025123418-0c3fc7303be4 h1:egkL94FTYFe3GfnJMpY2aAj6tA2wXXYRfGPJPfC90BQ=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241025123418-0c3fc7303be4/go.mod h1:ilimTqwHSBjmvKeYA/yayDBZvzf/CX4Pwa9Qbhekzok=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241104145658-2a0050d437ac h1:GtkaaoQH3DSWt9hxC71pAp31pyhKFxU1nBfa5iZWecE=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241104145658-2a0050d437ac/go.mod h1:ilimTqwHSBjmvKeYA/yayDBZvzf/CX4Pwa9Qbhekzok=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241111225923-0ef8f340dd3c h1:Bnw38sqsVdQVOiuTealk57GnuRb86zyd5v/XW3BcPl8=
github.com/PagerDuty/go-pagerduty v1.8.1-0.20241111225923-0ef8f340dd3c/go.mod h1:ilimTqwHSBjmvKeYA/yayDBZvzf/CX4Pwa9Qbhekzok=
github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c h1:kMFnB0vCcX7IL/m9Y5LO+KQYv+t1CQOiFe6+SV2J7bE=
github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo=
Expand Down
56 changes: 56 additions & 0 deletions pagerdutyplugin/resource_pagerduty_alert_grouping_setting_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,28 @@ func TestAccPagerDutyAlertGroupingSetting_Time_WithTimeoutZero(t *testing.T) {
})
}

func TestAccPagerDutyAlertGroupingSetting_serviceNotExist(t *testing.T) {
ref := fmt.Sprint("tf-", acctest.RandString(5))
service := fmt.Sprint("tf-", acctest.RandString(5))
name := fmt.Sprintf("%s grouping", service)

resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
ProtoV5ProviderFactories: testAccProtoV5ProviderFactories(),
CheckDestroy: testAccCheckPagerDutyAlertGroupingSettingDestroy,
Steps: []resource.TestStep{
{
Config: testAccPagerDutyAlertGroupingSettingServiceNotExist(ref, service, name),
Check: resource.ComposeTestCheckFunc(
testAccCheckPagerDutyAlertGroupingSettingExists("pagerduty_alert_grouping_setting."+ref),
resource.TestCheckResourceAttr("pagerduty_alert_grouping_setting."+ref, "name", name),
resource.TestCheckResourceAttrSet("pagerduty_alert_grouping_setting."+ref, "description"),
),
},
},
})
}

func testAccCheckPagerDutyAlertGroupingSettingDestroy(s *terraform.State) error {
for _, r := range s.RootModule().Resources {
if r.Type != "pagerduty_alert_grouping_setting" {
Expand Down Expand Up @@ -407,3 +429,37 @@ resource "pagerduty_alert_grouping_setting" "foo" {
services = [pagerduty_service.foo.id]
}`, service1, name)
}

func testAccPagerDutyAlertGroupingSettingServiceNotExist(ref, service, name string) string {
return fmt.Sprintf(`
data "pagerduty_escalation_policy" "default" {
name = "Default"
}
resource "pagerduty_service" "foo" {
name = "%[2]s"
auto_resolve_timeout = "null"
acknowledgement_timeout = 1800
escalation_policy = data.pagerduty_escalation_policy.default.id
alert_creation = "create_alerts_and_incidents"
auto_pause_notifications_parameters {
enabled = true
timeout = 120
}
incident_urgency_rule {
type = "constant"
urgency = "high"
}
}
resource "pagerduty_alert_grouping_setting" "%[1]s" {
name = "%[3]s"
services = [pagerduty_service.foo.id]
type = "intelligent"
config {
time_window = 300
}
}`, ref, service, name)
}

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion vendor/modules.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# github.com/PagerDuty/go-pagerduty v1.8.1-0.20241104145658-2a0050d437ac
# github.com/PagerDuty/go-pagerduty v1.8.1-0.20241111225923-0ef8f340dd3c
## explicit; go 1.19
github.com/PagerDuty/go-pagerduty
# github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c
Expand Down

0 comments on commit ff2374e

Please sign in to comment.