Skip to content

Commit 861022a

Browse files
authored
Merge pull request #5130 from cloudflare/fix-dns-zone-transfer-test
2 parents cb11fbb + 214ea98 commit 861022a

File tree

4 files changed

+22
-72
lines changed

4 files changed

+22
-72
lines changed

internal/services/dns_zone_transfers_incoming/resource_test.go

Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -58,32 +58,19 @@ func TestAccCloudflareDNSZoneTransfersIncoming_Basic(t *testing.T) {
5858
zoneID := os.Getenv("CLOUDFLARE_ZONE_ID")
5959
accountID := os.Getenv("CLOUDFLARE_ACCOUNT_ID")
6060

61-
client := acctest.SharedClient()
62-
63-
peer, err := client.DNS.ZoneTransfers.Peers.New(context.Background(), dns.ZoneTransferPeerNewParams{AccountID: cloudflare.F(accountID), Name: cloudflare.F("terraform-peer")})
64-
if err != nil {
65-
tflog.Error(context.Background(), fmt.Sprintf("Failed to bootstrap Cloudflare DNS peer: %s", err))
66-
}
67-
6861
resource.Test(t, resource.TestCase{
6962
PreCheck: func() { acctest.TestAccPreCheck(t) },
7063
ProtoV6ProviderFactories: acctest.TestAccProtoV6ProviderFactories,
7164
Steps: []resource.TestStep{
7265
{
73-
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 300, peer.ID),
66+
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 300, accountID),
7467
Check: resource.ComposeTestCheckFunc(
7568
resource.TestCheckResourceAttr(name, "name", zoneName),
7669
resource.TestCheckResourceAttr(name, "auto_refresh_seconds", "300"),
77-
resource.TestCheckResourceAttr(name, "peers.0", peer.ID),
7870
),
7971
},
8072
},
8173
})
82-
// Delete the original peer after we are done
83-
_, err = client.DNS.ZoneTransfers.Peers.Delete(context.Background(), peer.ID, dns.ZoneTransferPeerDeleteParams{AccountID: cloudflare.F(accountID)})
84-
if err != nil {
85-
tflog.Error(context.Background(), fmt.Sprintf("Failed to cleanup Cloudflare DNS peer in incoming test: %s", err))
86-
}
8774
}
8875

8976
func TestAccCloudflareDNSZoneTransfersIncoming_Update(t *testing.T) {
@@ -93,37 +80,24 @@ func TestAccCloudflareDNSZoneTransfersIncoming_Update(t *testing.T) {
9380
zoneID := os.Getenv("CLOUDFLARE_ZONE_ID")
9481
accountID := os.Getenv("CLOUDFLARE_ACCOUNT_ID")
9582

96-
client := acctest.SharedClient()
97-
98-
peer, err := client.DNS.ZoneTransfers.Peers.New(context.Background(), dns.ZoneTransferPeerNewParams{AccountID: cloudflare.F(accountID), Name: cloudflare.F("terraform-peer")})
99-
if err != nil {
100-
tflog.Error(context.Background(), fmt.Sprintf("Failed to bootstrap Cloudflare DNS peer: %s", err))
101-
}
102-
10383
resource.Test(t, resource.TestCase{
10484
PreCheck: func() { acctest.TestAccPreCheck(t) },
10585
ProtoV6ProviderFactories: acctest.TestAccProtoV6ProviderFactories,
10686
Steps: []resource.TestStep{
10787
{
108-
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 300, peer.ID),
88+
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 300, accountID),
10989
},
11090
{
111-
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 500, peer.ID),
91+
Config: testDNSZoneTransfersIncomingConfig(rnd, zoneName, zoneID, 500, accountID),
11292
Check: resource.ComposeTestCheckFunc(
11393
resource.TestCheckResourceAttr(name, "name", zoneName),
11494
resource.TestCheckResourceAttr(name, "auto_refresh_seconds", "500"),
115-
resource.TestCheckResourceAttr(name, "peers.0", peer.ID),
11695
),
11796
},
11897
},
11998
})
120-
// Delete the original peer after we are done
121-
_, err = client.DNS.ZoneTransfers.Peers.Delete(context.Background(), peer.ID, dns.ZoneTransferPeerDeleteParams{AccountID: cloudflare.F(accountID)})
122-
if err != nil {
123-
tflog.Error(context.Background(), fmt.Sprintf("Failed to cleanup Cloudflare DNS peer in incoming test: %s", err))
124-
}
12599
}
126100

127-
func testDNSZoneTransfersIncomingConfig(resourceID, zoneName, zoneID string, autoRefreshSeconds int, peers string) string {
128-
return acctest.LoadTestCase("incoming.tf", resourceID, zoneID, autoRefreshSeconds, zoneName, peers)
101+
func testDNSZoneTransfersIncomingConfig(resourceID, zoneName, zoneID string, autoRefreshSeconds int, accountID string) string {
102+
return acctest.LoadTestCase("incoming.tf", resourceID, zoneID, autoRefreshSeconds, zoneName, accountID)
129103
}
Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
1+
resource "cloudflare_dns_zone_transfers_peer" "%[1]s" {
2+
account_id = "%[5]s"
3+
name = "%[1]s"
4+
}
5+
16
resource "cloudflare_dns_zone_transfers_incoming" "%[1]s" {
27
zone_id = "%[2]s"
38
auto_refresh_seconds = "%[3]d"
49
name = "%[4]s"
5-
peers = ["%[5]s"]
10+
peers = [cloudflare_dns_zone_transfers_peer.%[1]s.id]
611
}

internal/services/dns_zone_transfers_outgoing/resource_test.go

Lines changed: 5 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -58,31 +58,18 @@ func TestAccCloudflareSecondaryDNSOutgoing_Basic(t *testing.T) {
5858
zoneID := os.Getenv("CLOUDFLARE_ZONE_ID")
5959
accountID := os.Getenv("CLOUDFLARE_ACCOUNT_ID")
6060

61-
client := acctest.SharedClient()
62-
63-
peer, err := client.DNS.ZoneTransfers.Peers.New(context.Background(), dns.ZoneTransferPeerNewParams{AccountID: cloudflare.F(accountID), Name: cloudflare.F("terraform-peer")})
64-
if err != nil {
65-
tflog.Error(context.Background(), fmt.Sprintf("Failed to bootstrap Cloudflare DNS peer: %s", err))
66-
}
67-
6861
resource.Test(t, resource.TestCase{
6962
PreCheck: func() { acctest.TestAccPreCheck(t) },
7063
ProtoV6ProviderFactories: acctest.TestAccProtoV6ProviderFactories,
7164
Steps: []resource.TestStep{
7265
{
73-
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, peer.ID),
66+
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, accountID),
7467
Check: resource.ComposeTestCheckFunc(
7568
resource.TestCheckResourceAttr(name, "name", zoneName),
76-
resource.TestCheckResourceAttr(name, "peers.0", peer.ID),
7769
),
7870
},
7971
},
8072
})
81-
// Delete the original peer after we are done
82-
_, err = client.DNS.ZoneTransfers.Peers.Delete(context.Background(), peer.ID, dns.ZoneTransferPeerDeleteParams{AccountID: cloudflare.F(accountID)})
83-
if err != nil {
84-
tflog.Error(context.Background(), fmt.Sprintf("Failed to cleanup Cloudflare DNS peer in outgoing test: %s", err))
85-
}
8673
}
8774

8875
func TestAccCloudflareSecondaryDNSOutgoing_Update(t *testing.T) {
@@ -92,44 +79,23 @@ func TestAccCloudflareSecondaryDNSOutgoing_Update(t *testing.T) {
9279
zoneID := os.Getenv("CLOUDFLARE_ZONE_ID")
9380
accountID := os.Getenv("CLOUDFLARE_ACCOUNT_ID")
9481

95-
client := acctest.SharedClient()
96-
97-
peer1, err := client.DNS.ZoneTransfers.Peers.New(context.Background(), dns.ZoneTransferPeerNewParams{AccountID: cloudflare.F(accountID), Name: cloudflare.F("terraform-peer")})
98-
if err != nil {
99-
tflog.Error(context.Background(), fmt.Sprintf("Failed to bootstrap Cloudflare DNS peer: %s", err))
100-
}
101-
102-
peer2, err := client.DNS.ZoneTransfers.Peers.New(context.Background(), dns.ZoneTransferPeerNewParams{AccountID: cloudflare.F(accountID), Name: cloudflare.F("terraform-peer")})
103-
if err != nil {
104-
tflog.Error(context.Background(), fmt.Sprintf("Failed to bootstrap Cloudflare DNS peer: %s", err))
105-
}
106-
10782
resource.Test(t, resource.TestCase{
10883
PreCheck: func() { acctest.TestAccPreCheck(t) },
10984
ProtoV6ProviderFactories: acctest.TestAccProtoV6ProviderFactories,
11085
Steps: []resource.TestStep{
11186
{
112-
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, peer1.ID),
87+
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, accountID),
11388
},
11489
{
115-
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, peer2.ID),
90+
Config: testSecondaryDNSOutgoingConfig(rnd, zoneName, zoneID, accountID),
11691
Check: resource.ComposeTestCheckFunc(
11792
resource.TestCheckResourceAttr(name, "name", zoneName),
118-
resource.TestCheckResourceAttr(name, "peers.0", peer2.ID),
11993
),
12094
},
12195
},
12296
})
123-
// Delete the original peers after we are done
124-
for _, id := range []string{peer1.ID, peer2.ID} {
125-
_, err = client.DNS.ZoneTransfers.Peers.Delete(context.Background(), id, dns.ZoneTransferPeerDeleteParams{AccountID: cloudflare.F(accountID)})
126-
if err != nil {
127-
tflog.Error(context.Background(), fmt.Sprintf("Failed to cleanup Cloudflare DNS peer in outgoing test: %s", err))
128-
}
129-
}
130-
13197
}
13298

133-
func testSecondaryDNSOutgoingConfig(resourceID, zoneName, zoneID string, peers string) string {
134-
return acctest.LoadTestCase("outgoing.tf", resourceID, zoneID, zoneName, peers)
99+
func testSecondaryDNSOutgoingConfig(resourceID, zoneName, zoneID string, accountID string) string {
100+
return acctest.LoadTestCase("outgoing.tf", resourceID, zoneID, zoneName, accountID)
135101
}
Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
1+
resource "cloudflare_dns_zone_transfers_peer" "%[1]s" {
2+
account_id = "%[4]s"
3+
name = "%[1]s"
4+
}
5+
16
resource "cloudflare_dns_zone_transfers_outgoing" "%[1]s" {
27
zone_id = "%[2]s"
38
name = "%[3]s"
4-
peers = ["%[4]s"]
9+
peers = [cloudflare_dns_zone_transfers_peer.%[1]s.id]
510
}

0 commit comments

Comments
 (0)