From 8a8e4917a795af4c69a280a4e734b1e88a386ff5 Mon Sep 17 00:00:00 2001 From: Lukas Peter Aldershaab Date: Fri, 8 Mar 2024 14:34:38 +0100 Subject: [PATCH] remove lego domain and fix business services --- pagerduty/resource_pagerduty_business_service.go | 6 +++++- pagerduty/resource_pagerduty_service_dependency.go | 4 ++++ pagerduty/resource_pagerduty_service_dependency_test.go | 4 ++-- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/pagerduty/resource_pagerduty_business_service.go b/pagerduty/resource_pagerduty_business_service.go index 358403634..1480f91ba 100644 --- a/pagerduty/resource_pagerduty_business_service.go +++ b/pagerduty/resource_pagerduty_business_service.go @@ -135,6 +135,10 @@ func resourcePagerDutyBusinessServiceRead(d *schema.ResourceData, meta interface return retry.NonRetryableError(err) } + if err := handleNotFoundError(err, d); err != nil { + return retry.RetryableError(err) + } + return retry.RetryableError(err) } else if businessService != nil { d.Set("name", businessService.Name) @@ -190,7 +194,7 @@ func resourcePagerDutyBusinessServiceDelete(d *schema.ResourceData, meta interfa log.Printf("[INFO] Deleting PagerDuty business service %s", d.Id()) if _, err := client.BusinessServices.Delete(d.Id()); err != nil { - return err + return handleNotFoundError(err, d) } d.SetId("") diff --git a/pagerduty/resource_pagerduty_service_dependency.go b/pagerduty/resource_pagerduty_service_dependency.go index 353bd184c..d48a309fa 100644 --- a/pagerduty/resource_pagerduty_service_dependency.go +++ b/pagerduty/resource_pagerduty_service_dependency.go @@ -249,6 +249,10 @@ func resourcePagerDutyServiceDependencyDisassociate(ctx context.Context, d *sche return retry.NonRetryableError(err) } + if err = handleNotFoundError(err, d); err == nil { + return nil + } + // Delaying retry by 30s as recommended by PagerDuty // https://developer.pagerduty.com/docs/rest-api-v2/rate-limiting/#what-are-possible-workarounds-to-the-events-api-rate-limit time.Sleep(30 * time.Second) diff --git a/pagerduty/resource_pagerduty_service_dependency_test.go b/pagerduty/resource_pagerduty_service_dependency_test.go index ef8d525ee..a4f0edbd8 100644 --- a/pagerduty/resource_pagerduty_service_dependency_test.go +++ b/pagerduty/resource_pagerduty_service_dependency_test.go @@ -49,7 +49,7 @@ func TestAccPagerDutyBusinessServiceDependency_Basic(t *testing.T) { { Config: testAccCheckPagerDutyBusinessServiceDependencyConfig(service, businessService, username, email, escalationPolicy), Check: resource.ComposeTestCheckFunc( - testAccExternallyDestroyedDependentService("pagerduty_service_dependency.bar", "pagerduty_service.dependBar", "pagerduty_service.supportBar"), + testAccExternallyDestroyedDependentService("pagerduty_service_dependency.foo", "pagerduty_business_service.foo", "pagerduty_service.foo"), ), ExpectNonEmptyPlan: true, }, @@ -384,7 +384,7 @@ func TestAccPagerDutyTechnicalServiceDependency_Basic(t *testing.T) { dependentService := fmt.Sprintf("tf-%s", acctest.RandString(5)) supportingService := fmt.Sprintf("tf-%s", acctest.RandString(5)) username := fmt.Sprintf("tf-%s", acctest.RandString(5)) - email := fmt.Sprintf("%s@lego.com", username) + email := fmt.Sprintf("%s@foo.test", username) escalationPolicy := fmt.Sprintf("tf-%s", acctest.RandString(5)) resource.Test(t, resource.TestCase{