Skip to content

Commit 233d1cb

Browse files
authored
Merge pull request hashicorp#560 from terraform-providers/b-ds-dns-mz-404
d/dns_managed_zone: Error out if zone is not found
2 parents bd7dd54 + a678b97 commit 233d1cb

File tree

2 files changed

+24
-8
lines changed

2 files changed

+24
-8
lines changed

google/data_source_dns_managed_zone.go

+19-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,25 @@ func dataSourceDnsManagedZone() *schema.Resource {
4141
}
4242

4343
func dataSourceDnsManagedZoneRead(d *schema.ResourceData, meta interface{}) error {
44+
config := meta.(*Config)
45+
4446
d.SetId(d.Get("name").(string))
4547

46-
return resourceDnsManagedZoneRead(d, meta)
48+
project, err := getProject(d, config)
49+
if err != nil {
50+
return err
51+
}
52+
53+
zone, err := config.clientDns.ManagedZones.Get(
54+
project, d.Id()).Do()
55+
if err != nil {
56+
return err
57+
}
58+
59+
d.Set("name_servers", zone.NameServers)
60+
d.Set("name", zone.Name)
61+
d.Set("dns_name", zone.DnsName)
62+
d.Set("description", zone.Description)
63+
64+
return nil
4765
}

google/data_source_dns_managed_zone_test.go

+5-7
Original file line numberDiff line numberDiff line change
@@ -16,24 +16,22 @@ func TestAccDataSourceDnsManagedZone_basic(t *testing.T) {
1616
Steps: []resource.TestStep{
1717
resource.TestStep{
1818
Config: testAccDataSourceDnsManagedZone_basic,
19-
Check: testAccDataSourceDnsManagedZoneCheck("qa", "foo"),
19+
Check: testAccDataSourceDnsManagedZoneCheck("data.google_dns_managed_zone.qa", "google_dns_managed_zone.foo"),
2020
},
2121
},
2222
})
2323
}
2424

2525
func testAccDataSourceDnsManagedZoneCheck(dsName, rsName string) resource.TestCheckFunc {
2626
return func(s *terraform.State) error {
27-
dsFullName := "data.google_dns_managed_zone." + dsName
28-
rsFullName := "google_dns_managed_zone." + rsName
29-
ds, ok := s.RootModule().Resources[dsFullName]
27+
ds, ok := s.RootModule().Resources[rsName]
3028
if !ok {
31-
return fmt.Errorf("cant' find resource called %s in state", dsFullName)
29+
return fmt.Errorf("can't find resource called %s in state", rsName)
3230
}
3331

34-
rs, ok := s.RootModule().Resources[rsFullName]
32+
rs, ok := s.RootModule().Resources[dsName]
3533
if !ok {
36-
return fmt.Errorf("can't find data source called %s in state", rsFullName)
34+
return fmt.Errorf("can't find data source called %s in state", dsName)
3735
}
3836

3937
dsAttr := ds.Primary.Attributes

0 commit comments

Comments
 (0)