Skip to content

Commit 1a450a0

Browse files
committed
Terraform: Private Cloud DNS zones are now GA
1 parent 3ae614f commit 1a450a0

File tree

5 files changed

+111
-27
lines changed

5 files changed

+111
-27
lines changed

products/dns/api.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ objects:
100100
- :private
101101
- :public
102102
default_value: :public
103-
min_version: beta
104103
- !ruby/object:Api::Type::NestedObject
105104
name: 'privateVisibilityConfig'
106105
description: |
@@ -122,7 +121,6 @@ objects:
122121
The fully qualified URL of the VPC network to bind to.
123122
This should be formatted like
124123
`https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
125-
min_version: beta
126124
- !ruby/object:Api::Type::NestedObject
127125
name: 'forwardingConfig'
128126
description: |

products/dns/terraform.yaml

+7
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@ overrides: !ruby/object:Overrides::ResourceOverrides
2121
- !ruby/object:Provider::Terraform::Examples
2222
name: "dns_managed_zone_private"
2323
primary_resource_id: "private-zone"
24+
vars:
25+
zone_name: "private-zone"
26+
network_1_name: "network-1"
27+
network_2_name: "network-2"
28+
- !ruby/object:Provider::Terraform::Examples
29+
name: "dns_managed_zone_private_forwarding"
30+
primary_resource_id: "private-zone"
2431
skip_test: true
2532
vars:
2633
zone_name: "private-zone"

templates/terraform/examples/dns_managed_zone_private.tf.erb

-10
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,6 @@ resource "google_dns_managed_zone" "<%= ctx[:primary_resource_id] %>" {
1616
network_url = "${google_compute_network.network-2.self_link}"
1717
}
1818
}
19-
20-
forwarding_config {
21-
target_name_servers {
22-
ipv4_address = "172.16.1.10"
23-
}
24-
target_name_servers {
25-
ipv4_address = "172.16.1.20"
26-
}
27-
}
28-
2919
}
3020

3121
resource "google_compute_network" "network-1" {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
resource "google_dns_managed_zone" "<%= ctx[:primary_resource_id] %>" {
2+
provider = "google-beta"
3+
name = "<%= ctx[:vars]['zone_name'] %>"
4+
dns_name = "private.example.com."
5+
description = "Example private DNS zone"
6+
labels = {
7+
foo = "bar"
8+
}
9+
10+
visibility = "private"
11+
12+
private_visibility_config {
13+
networks {
14+
network_url = "${google_compute_network.network-1.self_link}"
15+
}
16+
networks {
17+
network_url = "${google_compute_network.network-2.self_link}"
18+
}
19+
}
20+
21+
forwarding_config {
22+
target_name_servers {
23+
ipv4_address = "172.16.1.10"
24+
}
25+
target_name_servers {
26+
ipv4_address = "172.16.1.20"
27+
}
28+
}
29+
30+
}
31+
32+
resource "google_compute_network" "network-1" {
33+
name = "<%= ctx[:vars]['network_1_name'] %>"
34+
auto_create_subnetworks = false
35+
}
36+
37+
resource "google_compute_network" "network-2" {
38+
name = "<%= ctx[:vars]['network_2_name'] %>"
39+
auto_create_subnetworks = false
40+
}

third_party/terraform/tests/resource_dns_managed_zone_test.go.erb

+64-15
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ func TestAccDnsManagedZone_update(t *testing.T) {
3939
})
4040
}
4141

42-
<% unless version.nil? || version == 'ga' -%>
4342
func TestAccDnsManagedZone_privateUpdate(t *testing.T) {
4443
t.Parallel()
4544

@@ -51,15 +50,45 @@ func TestAccDnsManagedZone_privateUpdate(t *testing.T) {
5150
CheckDestroy: testAccCheckDnsManagedZoneDestroy,
5251
Steps: []resource.TestStep{
5352
resource.TestStep{
54-
Config: testAccDnsManagedZone_privateUpdate(zoneSuffix, "network-1", "network-2", "172.16.1.10", "172.16.1.20"),
53+
Config: testAccDnsManagedZone_privateUpdate(zoneSuffix, "network-1", "network-2"),
5554
},
5655
resource.TestStep{
5756
ResourceName: "google_dns_managed_zone.private",
5857
ImportState: true,
5958
ImportStateVerify: true,
6059
},
6160
resource.TestStep{
62-
Config: testAccDnsManagedZone_privateUpdate(zoneSuffix, "network-2", "network-3", "172.16.1.10", "192.168.1.1"),
61+
Config: testAccDnsManagedZone_privateUpdate(zoneSuffix, "network-2", "network-3"),
62+
},
63+
resource.TestStep{
64+
ResourceName: "google_dns_managed_zone.private",
65+
ImportState: true,
66+
ImportStateVerify: true,
67+
},
68+
},
69+
})
70+
}
71+
<% unless version.nil? || version == 'ga' -%>
72+
func TestAccDnsManagedZone_privateForwardingUpdate(t *testing.T) {
73+
t.Parallel()
74+
75+
zoneSuffix := acctest.RandString(10)
76+
77+
resource.Test(t, resource.TestCase{
78+
PreCheck: func() { testAccPreCheck(t) },
79+
Providers: testAccProviders,
80+
CheckDestroy: testAccCheckDnsManagedZoneDestroy,
81+
Steps: []resource.TestStep{
82+
resource.TestStep{
83+
Config: testAccDnsManagedZone_privateForwardingUpdate(zoneSuffix, "172.16.1.10", "172.16.1.20"),
84+
},
85+
resource.TestStep{
86+
ResourceName: "google_dns_managed_zone.private",
87+
ImportState: true,
88+
ImportStateVerify: true,
89+
},
90+
resource.TestStep{
91+
Config: testAccDnsManagedZone_privateForwardingUpdate(zoneSuffix, "172.16.1.10", "192.168.1.1"),
6392
},
6493
resource.TestStep{
6594
ResourceName: "google_dns_managed_zone.private",
@@ -83,8 +112,7 @@ resource "google_dns_managed_zone" "foobar" {
83112
}`, suffix, suffix, description)
84113
}
85114

86-
<% unless version.nil? || version == 'ga' -%>
87-
func testAccDnsManagedZone_privateUpdate(suffix, first_network, second_network, first_nameserver, second_nameserver string) string {
115+
func testAccDnsManagedZone_privateUpdate(suffix, first_network, second_network string) string {
88116
return fmt.Sprintf(`
89117
resource "google_dns_managed_zone" "private" {
90118
name = "private-zone-%s"
@@ -99,15 +127,6 @@ resource "google_dns_managed_zone" "private" {
99127
network_url = "${google_compute_network.%s.self_link}"
100128
}
101129
}
102-
103-
forwarding_config {
104-
target_name_servers {
105-
ipv4_address = "%s"
106-
}
107-
target_name_servers {
108-
ipv4_address = "%s"
109-
}
110-
}
111130
}
112131

113132
resource "google_compute_network" "network-1" {
@@ -123,7 +142,37 @@ resource "google_compute_network" "network-2" {
123142
resource "google_compute_network" "network-3" {
124143
name = "network-3-%s"
125144
auto_create_subnetworks = false
126-
}`, suffix, first_network, second_network, first_nameserver, second_nameserver, suffix, suffix, suffix)
145+
}`, suffix, first_network, second_network, suffix, suffix, suffix)
146+
}
147+
148+
<% unless version.nil? || version == 'ga' -%>
149+
func testAccDnsManagedZone_privateForwardingUpdate(suffix, first_nameserver, second_nameserver string) string {
150+
return fmt.Sprintf(`
151+
resource "google_dns_managed_zone" "private" {
152+
name = "private-zone-%s"
153+
dns_name = "private.example.com."
154+
description = "Example private DNS zone"
155+
visibility = "private"
156+
private_visibility_config {
157+
networks {
158+
network_url = "${google_compute_network.network-1.self_link}"
159+
}
160+
}
161+
162+
forwarding_config {
163+
target_name_servers {
164+
ipv4_address = "%s"
165+
}
166+
target_name_servers {
167+
ipv4_address = "%s"
168+
}
169+
}
170+
}
171+
172+
resource "google_compute_network" "network-1" {
173+
name = "network-1-%s"
174+
auto_create_subnetworks = false
175+
}`, suffix, first_nameserver, second_nameserver, suffix)
127176
}
128177
<% end -%>
129178

0 commit comments

Comments
 (0)