Skip to content

Commit 67cd74d

Browse files
committed
refactor: move NE sweepers to sweeper.go style
Signed-off-by: Marques Johansson <[email protected]>
1 parent d0eef0a commit 67cd74d

File tree

11 files changed

+267
-218
lines changed

11 files changed

+267
-218
lines changed

internal/resources/networkedge/acl_template/resource_acc_test.go

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
package acl_template
22

33
import (
4-
"context"
54
"fmt"
6-
"log"
75
"testing"
86

97
"github.com/equinix/terraform-provider-equinix/internal/acceptance"
108
"github.com/equinix/terraform-provider-equinix/internal/config"
119
"github.com/equinix/terraform-provider-equinix/internal/nprintf"
12-
"github.com/equinix/terraform-provider-equinix/internal/sweep"
1310

1411
"github.com/equinix/ne-go"
1512
"github.com/hashicorp/terraform-plugin-testing/helper/acctest"
@@ -21,13 +18,6 @@ const (
2118
tstResourcePrefix = "tfacc"
2219
)
2320

24-
func init() {
25-
resource.AddTestSweepers("equinix_network_acl_template", &resource.Sweeper{
26-
Name: "equinix_network_acl_template",
27-
F: testSweepNetworkACLTemplate,
28-
})
29-
}
30-
3121
func copyMap(source map[string]interface{}) map[string]interface{} {
3222
target := make(map[string]interface{})
3323
for k, v := range source {
@@ -36,38 +26,6 @@ func copyMap(source map[string]interface{}) map[string]interface{} {
3626
return target
3727
}
3828

39-
func testSweepNetworkACLTemplate(region string) error {
40-
config, err := sweep.SharedConfigForRegion(region)
41-
if err != nil {
42-
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network ACL Templates: %s", err)
43-
}
44-
if err := config.Load(context.Background()); err != nil {
45-
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
46-
return err
47-
}
48-
templates, err := config.Ne.GetACLTemplates()
49-
if err != nil {
50-
log.Printf("[INFO][SWEEPER_LOG] error fetching Network ACL Templates list: %s", err)
51-
return err
52-
}
53-
nonSweepableCount := 0
54-
for _, template := range templates {
55-
if !sweep.IsSweepableTestResource(ne.StringValue(template.Name)) {
56-
nonSweepableCount++
57-
continue
58-
}
59-
if err := config.Ne.DeleteACLTemplate(ne.StringValue(template.UUID)); err != nil {
60-
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkACLTemplate resource %s (%s): %s", ne.StringValue(template.UUID), ne.StringValue(template.Name), err)
61-
} else {
62-
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkACLTemplate resource %s (%s)", ne.StringValue(template.UUID), ne.StringValue(template.Name))
63-
}
64-
}
65-
if nonSweepableCount > 0 {
66-
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
67-
}
68-
return nil
69-
}
70-
7129
func TestAccNetworkACLTemplate(t *testing.T) {
7230
context := map[string]interface{}{
7331
"resourceName": "test",
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package acl_template
2+
3+
import (
4+
"context"
5+
"fmt"
6+
"log"
7+
8+
"github.com/equinix/ne-go"
9+
"github.com/equinix/terraform-provider-equinix/internal/sweep"
10+
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
11+
)
12+
13+
func AddTestSweeper() {
14+
resource.AddTestSweepers("equinix_network_acl_template", &resource.Sweeper{
15+
Name: "equinix_network_acl_template",
16+
F: testSweepNetworkACLTemplate,
17+
})
18+
}
19+
20+
func testSweepNetworkACLTemplate(region string) error {
21+
config, err := sweep.SharedConfigForRegion(region)
22+
if err != nil {
23+
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network ACL Templates: %s", err)
24+
}
25+
if err := config.Load(context.Background()); err != nil {
26+
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
27+
return err
28+
}
29+
templates, err := config.Ne.GetACLTemplates()
30+
if err != nil {
31+
log.Printf("[INFO][SWEEPER_LOG] error fetching Network ACL Templates list: %s", err)
32+
return err
33+
}
34+
nonSweepableCount := 0
35+
for _, template := range templates {
36+
if !sweep.IsSweepableTestResource(ne.StringValue(template.Name)) {
37+
nonSweepableCount++
38+
continue
39+
}
40+
if err := config.Ne.DeleteACLTemplate(ne.StringValue(template.UUID)); err != nil {
41+
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkACLTemplate resource %s (%s): %s", ne.StringValue(template.UUID), ne.StringValue(template.Name), err)
42+
} else {
43+
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkACLTemplate resource %s (%s)", ne.StringValue(template.UUID), ne.StringValue(template.Name))
44+
}
45+
}
46+
if nonSweepableCount > 0 {
47+
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
48+
}
49+
return nil
50+
}

internal/resources/networkedge/device/resource_acc_test.go

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
package device
22

33
import (
4-
"context"
54
"fmt"
6-
"log"
75
"testing"
86

97
"github.com/equinix/terraform-provider-equinix/internal/acceptance"
108
"github.com/equinix/terraform-provider-equinix/internal/comparisons"
119
"github.com/equinix/terraform-provider-equinix/internal/config"
12-
"github.com/equinix/terraform-provider-equinix/internal/sweep"
1310

1411
"github.com/equinix/ne-go"
1512
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
@@ -18,14 +15,6 @@ import (
1815
"github.com/hashicorp/terraform-plugin-testing/terraform"
1916
)
2017

21-
func init() {
22-
resource.AddTestSweepers("equinix_network_device", &resource.Sweeper{
23-
Name: "equinix_network_device",
24-
Dependencies: []string{"equinix_network_device_link"},
25-
F: testSweepNetworkDevice,
26-
})
27-
}
28-
2918
func testAccNeSSHUserExists(resourceName string, user *ne.SSHUser) resource.TestCheckFunc {
3019
return func(s *terraform.State) error {
3120
rs, ok := s.RootModule().Resources[resourceName]
@@ -115,49 +104,6 @@ func testAccNetworkACLTemplateAttributes(template *ne.ACLTemplate, ctx map[strin
115104
}
116105
}
117106

118-
func testSweepNetworkDevice(region string) error {
119-
config, err := sweep.SharedConfigForRegion(region)
120-
if err != nil {
121-
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network devices: %s", err)
122-
}
123-
if err := config.Load(context.Background()); err != nil {
124-
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
125-
return err
126-
}
127-
devices, err := config.Ne.GetDevices([]string{
128-
ne.DeviceStateInitializing,
129-
ne.DeviceStateProvisioned,
130-
ne.DeviceStateProvisioning,
131-
ne.DeviceStateWaitingSecondary,
132-
ne.DeviceStateWaitingClusterNodes,
133-
ne.DeviceStateClusterSetUpInProgress,
134-
ne.DeviceStateFailed,
135-
})
136-
if err != nil {
137-
log.Printf("[INFO][SWEEPER_LOG] error fetching NetworkDevice list: %s", err)
138-
return err
139-
}
140-
nonSweepableCount := 0
141-
for _, device := range devices {
142-
if !sweep.IsSweepableTestResource(ne.StringValue(device.Name)) {
143-
nonSweepableCount++
144-
continue
145-
}
146-
if ne.StringValue(device.RedundancyType) != "PRIMARY" {
147-
continue
148-
}
149-
if err := config.Ne.DeleteDevice(ne.StringValue(device.UUID)); err != nil {
150-
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkDevice resource %s (%s): %s", ne.StringValue(device.UUID), ne.StringValue(device.Name), err)
151-
} else {
152-
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkDevice resource %s (%s)", ne.StringValue(device.UUID), ne.StringValue(device.Name))
153-
}
154-
}
155-
if nonSweepableCount > 0 {
156-
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
157-
}
158-
return nil
159-
}
160-
161107
func TestAccNetworkDevice_CSR1000V_HA_Managed_Sub(t *testing.T) {
162108
metro, _ := schema.EnvDefaultFunc(networkDeviceMetroEnvVar, "SV")()
163109
accountName, _ := schema.EnvDefaultFunc(networkDeviceAccountNameEnvVar, "")()
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
package device
2+
3+
import (
4+
"context"
5+
"fmt"
6+
"log"
7+
8+
"github.com/equinix/ne-go"
9+
"github.com/equinix/terraform-provider-equinix/internal/sweep"
10+
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
11+
)
12+
13+
func AddTestSweeper() {
14+
resource.AddTestSweepers("equinix_network_device", &resource.Sweeper{
15+
Name: "equinix_network_device",
16+
Dependencies: []string{"equinix_network_device_link"},
17+
F: testSweepNetworkDevice,
18+
})
19+
}
20+
21+
func testSweepNetworkDevice(region string) error {
22+
config, err := sweep.SharedConfigForRegion(region)
23+
if err != nil {
24+
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network devices: %s", err)
25+
}
26+
if err := config.Load(context.Background()); err != nil {
27+
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
28+
return err
29+
}
30+
devices, err := config.Ne.GetDevices([]string{
31+
ne.DeviceStateInitializing,
32+
ne.DeviceStateProvisioned,
33+
ne.DeviceStateProvisioning,
34+
ne.DeviceStateWaitingSecondary,
35+
ne.DeviceStateWaitingClusterNodes,
36+
ne.DeviceStateClusterSetUpInProgress,
37+
ne.DeviceStateFailed,
38+
})
39+
if err != nil {
40+
log.Printf("[INFO][SWEEPER_LOG] error fetching NetworkDevice list: %s", err)
41+
return err
42+
}
43+
nonSweepableCount := 0
44+
for _, device := range devices {
45+
if !sweep.IsSweepableTestResource(ne.StringValue(device.Name)) {
46+
nonSweepableCount++
47+
continue
48+
}
49+
if ne.StringValue(device.RedundancyType) != "PRIMARY" {
50+
continue
51+
}
52+
if err := config.Ne.DeleteDevice(ne.StringValue(device.UUID)); err != nil {
53+
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkDevice resource %s (%s): %s", ne.StringValue(device.UUID), ne.StringValue(device.Name), err)
54+
} else {
55+
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkDevice resource %s (%s)", ne.StringValue(device.UUID), ne.StringValue(device.Name))
56+
}
57+
}
58+
if nonSweepableCount > 0 {
59+
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
60+
}
61+
return nil
62+
}

internal/resources/networkedge/device_link/resource_acc_test.go

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
package device_link
22

33
import (
4-
"context"
54
"fmt"
6-
"log"
75
"testing"
86

97
"github.com/equinix/terraform-provider-equinix/internal/acceptance"
108
"github.com/equinix/terraform-provider-equinix/internal/config"
119
"github.com/equinix/terraform-provider-equinix/internal/nprintf"
12-
"github.com/equinix/terraform-provider-equinix/internal/sweep"
1310

1411
"github.com/equinix/ne-go"
1512
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
@@ -18,13 +15,6 @@ import (
1815
"github.com/hashicorp/terraform-plugin-testing/terraform"
1916
)
2017

21-
func init() {
22-
resource.AddTestSweepers("equinix_network_device_link", &resource.Sweeper{
23-
Name: "equinix_network_device_link",
24-
F: testSweepNetworkDeviceLink,
25-
})
26-
}
27-
2818
func testAccNeDevicePairExists(resourceName string, primary, secondary *ne.Device) resource.TestCheckFunc {
2919
return func(s *terraform.State) error {
3020
rs, ok := s.RootModule().Resources[resourceName]
@@ -49,38 +39,6 @@ func testAccNeDevicePairExists(resourceName string, primary, secondary *ne.Devic
4939
}
5040
}
5141

52-
func testSweepNetworkDeviceLink(region string) error {
53-
config, err := sweep.SharedConfigForRegion(region)
54-
if err != nil {
55-
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network devices link: %s", err)
56-
}
57-
if err := config.Load(context.Background()); err != nil {
58-
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
59-
return err
60-
}
61-
links, err := config.Ne.GetDeviceLinkGroups()
62-
if err != nil {
63-
log.Printf("[INFO][SWEEPER_LOG] error fetching device links list: %s", err)
64-
return err
65-
}
66-
nonSweepableCount := 0
67-
for _, link := range links {
68-
if !sweep.IsSweepableTestResource(ne.StringValue(link.Name)) {
69-
nonSweepableCount++
70-
continue
71-
}
72-
if err := config.Ne.DeleteDeviceLinkGroup(ne.StringValue(link.UUID)); err != nil {
73-
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkDeviceLink resource %s (%s): %s", ne.StringValue(link.UUID), ne.StringValue(link.Name), err)
74-
} else {
75-
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkDeviceLink resource %s (%s)", ne.StringValue(link.UUID), ne.StringValue(link.Name))
76-
}
77-
}
78-
if nonSweepableCount > 0 {
79-
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
80-
}
81-
return nil
82-
}
83-
8442
func TestAccNetworkDeviceLink(t *testing.T) {
8543
metro, _ := schema.EnvDefaultFunc(networkDeviceMetroEnvVar, "SV")()
8644
metroSecondary, _ := schema.EnvDefaultFunc(networkDeviceSecondaryMetroEnvVar, metro)()
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package device_link
2+
3+
import (
4+
"context"
5+
"fmt"
6+
"log"
7+
8+
"github.com/equinix/ne-go"
9+
"github.com/equinix/terraform-provider-equinix/internal/sweep"
10+
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
11+
)
12+
13+
func AddTestSweeper() {
14+
resource.AddTestSweepers("equinix_network_device_link", &resource.Sweeper{
15+
Name: "equinix_network_device_link",
16+
F: testSweepNetworkDeviceLink,
17+
})
18+
}
19+
20+
func testSweepNetworkDeviceLink(region string) error {
21+
config, err := sweep.SharedConfigForRegion(region)
22+
if err != nil {
23+
return fmt.Errorf("[INFO][SWEEPER_LOG] Error getting configuration for sweeping Network devices link: %s", err)
24+
}
25+
if err := config.Load(context.Background()); err != nil {
26+
log.Printf("[INFO][SWEEPER_LOG] error loading configuration: %s", err)
27+
return err
28+
}
29+
links, err := config.Ne.GetDeviceLinkGroups()
30+
if err != nil {
31+
log.Printf("[INFO][SWEEPER_LOG] error fetching device links list: %s", err)
32+
return err
33+
}
34+
nonSweepableCount := 0
35+
for _, link := range links {
36+
if !sweep.IsSweepableTestResource(ne.StringValue(link.Name)) {
37+
nonSweepableCount++
38+
continue
39+
}
40+
if err := config.Ne.DeleteDeviceLinkGroup(ne.StringValue(link.UUID)); err != nil {
41+
log.Printf("[INFO][SWEEPER_LOG] error deleting NetworkDeviceLink resource %s (%s): %s", ne.StringValue(link.UUID), ne.StringValue(link.Name), err)
42+
} else {
43+
log.Printf("[INFO][SWEEPER_LOG] sent delete request for NetworkDeviceLink resource %s (%s)", ne.StringValue(link.UUID), ne.StringValue(link.Name))
44+
}
45+
}
46+
if nonSweepableCount > 0 {
47+
log.Printf("[INFO][SWEEPER_LOG] %d items were non-sweepable and skipped.", nonSweepableCount)
48+
}
49+
return nil
50+
}

0 commit comments

Comments
 (0)