mirror of
https://github.com/letic/terraform-provider-google.git
synced 2024-10-05 02:01:05 +00:00
Merge pull request #560 from terraform-providers/b-ds-dns-mz-404
d/dns_managed_zone: Error out if zone is not found
This commit is contained in:
commit
44f477326d
@ -41,7 +41,25 @@ func dataSourceDnsManagedZone() *schema.Resource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func dataSourceDnsManagedZoneRead(d *schema.ResourceData, meta interface{}) error {
|
func dataSourceDnsManagedZoneRead(d *schema.ResourceData, meta interface{}) error {
|
||||||
|
config := meta.(*Config)
|
||||||
|
|
||||||
d.SetId(d.Get("name").(string))
|
d.SetId(d.Get("name").(string))
|
||||||
|
|
||||||
return resourceDnsManagedZoneRead(d, meta)
|
project, err := getProject(d, config)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
zone, err := config.clientDns.ManagedZones.Get(
|
||||||
|
project, d.Id()).Do()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
d.Set("name_servers", zone.NameServers)
|
||||||
|
d.Set("name", zone.Name)
|
||||||
|
d.Set("dns_name", zone.DnsName)
|
||||||
|
d.Set("description", zone.Description)
|
||||||
|
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@ func TestAccDataSourceDnsManagedZone_basic(t *testing.T) {
|
|||||||
Steps: []resource.TestStep{
|
Steps: []resource.TestStep{
|
||||||
resource.TestStep{
|
resource.TestStep{
|
||||||
Config: testAccDataSourceDnsManagedZone_basic,
|
Config: testAccDataSourceDnsManagedZone_basic,
|
||||||
Check: testAccDataSourceDnsManagedZoneCheck("qa", "foo"),
|
Check: testAccDataSourceDnsManagedZoneCheck("data.google_dns_managed_zone.qa", "google_dns_managed_zone.foo"),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
@ -24,16 +24,14 @@ func TestAccDataSourceDnsManagedZone_basic(t *testing.T) {
|
|||||||
|
|
||||||
func testAccDataSourceDnsManagedZoneCheck(dsName, rsName string) resource.TestCheckFunc {
|
func testAccDataSourceDnsManagedZoneCheck(dsName, rsName string) resource.TestCheckFunc {
|
||||||
return func(s *terraform.State) error {
|
return func(s *terraform.State) error {
|
||||||
dsFullName := "data.google_dns_managed_zone." + dsName
|
ds, ok := s.RootModule().Resources[rsName]
|
||||||
rsFullName := "google_dns_managed_zone." + rsName
|
|
||||||
ds, ok := s.RootModule().Resources[dsFullName]
|
|
||||||
if !ok {
|
if !ok {
|
||||||
return fmt.Errorf("cant' find resource called %s in state", dsFullName)
|
return fmt.Errorf("can't find resource called %s in state", rsName)
|
||||||
}
|
}
|
||||||
|
|
||||||
rs, ok := s.RootModule().Resources[rsFullName]
|
rs, ok := s.RootModule().Resources[dsName]
|
||||||
if !ok {
|
if !ok {
|
||||||
return fmt.Errorf("can't find data source called %s in state", rsFullName)
|
return fmt.Errorf("can't find data source called %s in state", dsName)
|
||||||
}
|
}
|
||||||
|
|
||||||
dsAttr := ds.Primary.Attributes
|
dsAttr := ds.Primary.Attributes
|
||||||
|
Loading…
Reference in New Issue
Block a user