Skip to content

Commit

Permalink
Datasource id updates (#2544)
Browse files Browse the repository at this point in the history
* Update datasources

* formatting
  • Loading branch information
slevenick committed Nov 7, 2019
1 parent 114382b commit 116e4e7
Show file tree
Hide file tree
Showing 18 changed files with 73 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,15 @@ func dataSourceGoogleComputeNetworkEndpointGroup() *schema.Resource {
func dataSourceComputeNetworkEndpointGroupRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
if name, ok := d.GetOk("name"); ok {
project, err := getProject(d, config)
if err != nil {
return err
}
zone, err := getZone(d, config)
if err != nil {
return err
}
d.SetId(fmt.Sprintf("%s/%s", zone, name.(string)))
d.SetId(fmt.Sprintf("projects/%s/zones/%s/networkEndpointGroups/%s", project, zone, name.(string)))
} else if selfLink, ok := d.GetOk("self_link"); ok {
parsed, err := ParseNetworkEndpointGroupFieldValue(selfLink.(string), d, config)
if err != nil {
Expand All @@ -38,7 +42,7 @@ func dataSourceComputeNetworkEndpointGroupRead(d *schema.ResourceData, meta inte
d.Set("name", parsed.Name)
d.Set("zone", parsed.Zone)
d.Set("project", parsed.Project)
d.SetId(fmt.Sprintf("%s/%s", parsed.Zone, parsed.Name))
d.SetId(fmt.Sprintf("projects/%s/zones/%s/networkEndpointGroups/%s", parsed.Project, parsed.Zone, parsed.Name))
} else {
return errors.New("Must provide either `self_link` or `zone/name`")
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package google

import "github.com/hashicorp/terraform-plugin-sdk/helper/schema"
import (
"fmt"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)

func dataSourceDnsManagedZone() *schema.Resource {
return &schema.Resource{
Expand Down Expand Up @@ -43,13 +47,13 @@ func dataSourceDnsManagedZone() *schema.Resource {
func dataSourceDnsManagedZoneRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)

d.SetId(d.Get("name").(string))

project, err := getProject(d, config)
if err != nil {
return err
}

d.SetId(fmt.Sprintf("projects/%s/managedZones/%s", project, d.Get("name").(string)))

zone, err := config.clientDns.ManagedZones.Get(
project, d.Id()).Do()
if err != nil {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package google
import (
"fmt"
"regexp"
"strconv"
"strings"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
Expand Down Expand Up @@ -78,7 +77,7 @@ func dataSourceGoogleComputeAddressRead(d *schema.ResourceData, meta interface{}
d.Set("project", project)
d.Set("region", region)

d.SetId(strconv.FormatUint(address.Id, 10))
d.SetId(fmt.Sprintf("projects/%s/regions/%s/addresses/%s", project, region, name))
return nil
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package google

import (
"fmt"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)

Expand All @@ -20,9 +22,16 @@ func dataSourceGoogleComputeBackendService() *schema.Resource {
}

func dataSourceComputeBackendServiceRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)

serviceName := d.Get("name").(string)

d.SetId(serviceName)
project, err := getProject(d, config)
if err != nil {
return err
}

d.SetId(fmt.Sprintf("projects/%s/global/backendServices/%s", project, serviceName))

return resourceComputeBackendServiceRead(d, meta)
}
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ func dataSourceGoogleComputeForwardingRuleRead(d *schema.ResourceData, meta inte
if err != nil {
return handleNotFoundError(err, d, fmt.Sprintf("Forwarding Rule Not Found : %s", name))
}
d.SetId(frule.Name)
d.SetId(fmt.Sprintf("projects/%s/regions/%s/forwardingRules/%s", project, region, name))

d.Set("self_link", frule.SelfLink)
d.Set("description", frule.Description)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package google

import (
"fmt"
"strconv"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)
Expand Down Expand Up @@ -58,7 +57,6 @@ func dataSourceGoogleComputeGlobalAddressRead(d *schema.ResourceData, meta inter
d.Set("status", address.Status)
d.Set("self_link", address.SelfLink)
d.Set("project", project)

d.SetId(strconv.FormatUint(address.Id, 10))
d.SetId(fmt.Sprintf("projects/%s/global/addresses/%s", project, name))
return nil
}
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,6 @@ func dataSourceGoogleComputeInstanceRead(d *schema.ResourceData, meta interface{
d.Set("project", project)
d.Set("zone", GetResourceNameFromSelfLink(instance.Zone))
d.Set("name", instance.Name)
d.SetId(ConvertSelfLinkToV1(instance.SelfLink))
d.SetId(fmt.Sprintf("projects/%s/zones/%s/instances/%s", project, instance.Zone, instance.Name))
return nil
}
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,11 @@ func dataSourceComputeInstanceGroupRead(d *schema.ResourceData, meta interface{}
if err != nil {
return err
}
d.SetId(fmt.Sprintf("%s/%s", zone, name.(string)))
project, err := getProject(d, config)
if err != nil {
return err
}
d.SetId(fmt.Sprintf("projects/%s/zones/%s/instanceGroups/%s", project, zone, name.(string)))
} else if selfLink, ok := d.GetOk("self_link"); ok {
parsed, err := ParseInstanceGroupFieldValue(selfLink.(string), d, config)
if err != nil {
Expand All @@ -96,7 +100,7 @@ func dataSourceComputeInstanceGroupRead(d *schema.ResourceData, meta interface{}
d.Set("name", parsed.Name)
d.Set("zone", parsed.Zone)
d.Set("project", parsed.Project)
d.SetId(fmt.Sprintf("%s/%s", parsed.Zone, parsed.Name))
d.SetId(fmt.Sprintf("projects/%s/zones/%s/instanceGroups/%s", parsed.Project, parsed.Zone, parsed.Name))
} else {
return errors.New("Must provide either `self_link` or `zone/name`")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,6 @@ func dataSourceGoogleComputeNetworkRead(d *schema.ResourceData, meta interface{}
d.Set("self_link", network.SelfLink)
d.Set("description", network.Description)
d.Set("subnetworks_self_links", network.Subnetworks)
d.SetId(network.Name)
d.SetId(fmt.Sprintf("projects/%s/global/networks/%s", project, network.Name))
return nil
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package google
import (
"fmt"
"log"
"strconv"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"

Expand Down Expand Up @@ -113,7 +112,7 @@ func dataSourceComputeRegionInstanceGroupRead(d *schema.ResourceData, meta inter
} else {
d.Set("instances", flattenInstancesWithNamedPorts(members.Items))
}
d.SetId(strconv.FormatUint(instanceGroup.Id, 16))
d.SetId(fmt.Sprintf("projects/%s/regions/%s/instanceGroups/%s", project, region, name))
d.Set("self_link", instanceGroup.SelfLink)
d.Set("name", name)
d.Set("project", project)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ func dataSourceGoogleComputeResourcePolicyRead(d *schema.ResourceData, meta inte
}
d.Set("self_link", resourcePolicy.SelfLink)
d.Set("description", resourcePolicy.Description)
d.SetId(resourcePolicy.Name)
d.SetId(fmt.Sprintf("projects/%s/regions/%s/resourcePolicies/%s", project, regions, name)
return nil
}
<% end -%>
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package google

import (
"fmt"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)

Expand All @@ -21,9 +23,15 @@ func dataSourceGoogleComputeSslCertificate() *schema.Resource {
}

func dataSourceComputeSslCertificateRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)

project, err := getProject(d, config)
if err != nil {
return err
}
certificateName := d.Get("name").(string)

d.SetId(certificateName)
d.SetId(fmt.Sprintf("projects/%s/global/sslCertificates/%s", project, certificateName))

return resourceComputeSslCertificateRead(d, meta)
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package google

import (
"fmt"

"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)

Expand All @@ -21,9 +23,15 @@ func dataSourceGoogleComputeSslPolicy() *schema.Resource {
}

func datasourceComputeSslPolicyRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)

project, err := getProject(d, config)
if err != nil {
return err
}
policyName := d.Get("name").(string)

d.SetId(policyName)
d.SetId(fmt.Sprintf("projects/%s/global/sslPolicies/%s", project, policyName))

return resourceComputeSslPolicyRead(d, meta)
}
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ func dataSourceGoogleComputeSubnetworkRead(d *schema.ResourceData, meta interfac
d.Set("region", region)
d.Set("secondary_ip_range", flattenSecondaryRanges(subnetwork.SecondaryIpRanges))

d.SetId(fmt.Sprintf("%s/%s", region, name))
d.SetId(fmt.Sprintf("projects/%s/regions/%s/subnetworks/%s", project, region, name))
return nil
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,6 @@ func dataSourceGoogleComputeVpnGatewayRead(d *schema.ResourceData, meta interfac
d.Set("self_link", gateway.SelfLink)
d.Set("description", gateway.Description)
d.Set("project", project)
d.SetId(gateway.Name)
d.SetId(fmt.Sprintf("projects/%s/regions/%s/targetVpnGateways/%s", project, region, name))
return nil
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,21 @@ func dataSourceGoogleContainerCluster() *schema.Resource {
}

func datasourceContainerClusterRead(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)

clusterName := d.Get("name").(string)

d.SetId(clusterName)
location, err := getLocation(d, config)
if err != nil {
return err
}

project, err := getProject(d, config)
if err != nil {
return err
}

d.SetId(containerClusterFullName(project, location, clusterName))

return resourceContainerClusterRead(d, meta)
}
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ func dataSourceOrganizationRead(d *schema.ResourceData, meta interface{}) error
return fmt.Errorf("one of domain or organization must be set")
}

d.SetId(GetResourceNameFromSelfLink(organization.Name))
d.SetId(organization.Name)
d.Set("name", organization.Name)
d.Set("domain", organization.DisplayName)
d.Set("create_time", organization.CreationTime)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package google

import (
"fmt"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
)

Expand All @@ -21,13 +22,13 @@ func datasourceGoogleProjectRead(d *schema.ResourceData, meta interface{}) error

if v, ok := d.GetOk("project_id"); ok {
project := v.(string)
d.SetId(project)
d.SetId(fmt.Sprintf("projects/%s", project))
} else {
project, err := getProject(d, config)
if err != nil {
return err
}
d.SetId(project)
d.SetId(fmt.Sprintf("projects/%s", project))
}

return resourceGoogleProjectRead(d, meta)
Expand Down

0 comments on commit 116e4e7

Please sign in to comment.