From 2b2617790330fd636ea61f0be02ba3b53e1a30ca Mon Sep 17 00:00:00 2001 From: David Watson Date: Tue, 10 Feb 2015 11:13:55 +0000 Subject: [PATCH 1/4] Add SelfLink field to GCE disk resource. --- builtin/providers/google/resource_compute_disk.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/builtin/providers/google/resource_compute_disk.go b/builtin/providers/google/resource_compute_disk.go index 378b0171e..9f8557cf0 100644 --- a/builtin/providers/google/resource_compute_disk.go +++ b/builtin/providers/google/resource_compute_disk.go @@ -46,6 +46,11 @@ func resourceComputeDisk() *schema.Resource { Optional: true, ForceNew: true, }, + + "self_link": &schema.Schema{ + Type: schema.TypeString, + Computed: true, + }, }, } } @@ -132,7 +137,7 @@ func resourceComputeDiskCreate(d *schema.ResourceData, meta interface{}) error { func resourceComputeDiskRead(d *schema.ResourceData, meta interface{}) error { config := meta.(*Config) - _, err := config.clientCompute.Disks.Get( + disk, err := config.clientCompute.Disks.Get( config.Project, d.Get("zone").(string), d.Id()).Do() if err != nil { if gerr, ok := err.(*googleapi.Error); ok && gerr.Code == 404 { @@ -145,6 +150,8 @@ func resourceComputeDiskRead(d *schema.ResourceData, meta interface{}) error { return fmt.Errorf("Error reading disk: %s", err) } + d.Set("self_link", disk.SelfLink) + return nil } From 4e1a421652f7004b3c29d75aeea7a9c7f9b8994d Mon Sep 17 00:00:00 2001 From: David Watson Date: Tue, 10 Feb 2015 11:14:15 +0000 Subject: [PATCH 2/4] Add SelfLink field to GCE firewall resource. --- builtin/providers/google/resource_compute_firewall.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/builtin/providers/google/resource_compute_firewall.go b/builtin/providers/google/resource_compute_firewall.go index 9cbe5b53b..09d9ca250 100644 --- a/builtin/providers/google/resource_compute_firewall.go +++ b/builtin/providers/google/resource_compute_firewall.go @@ -86,6 +86,11 @@ func resourceComputeFirewall() *schema.Resource { return hashcode.String(v.(string)) }, }, + + "self_link": &schema.Schema{ + Type: schema.TypeString, + Computed: true, + }, }, } } @@ -159,7 +164,7 @@ func resourceComputeFirewallCreate(d *schema.ResourceData, meta interface{}) err func resourceComputeFirewallRead(d *schema.ResourceData, meta interface{}) error { config := meta.(*Config) - _, err := config.clientCompute.Firewalls.Get( + firewall, err := config.clientCompute.Firewalls.Get( config.Project, d.Id()).Do() if err != nil { if gerr, ok := err.(*googleapi.Error); ok && gerr.Code == 404 { @@ -172,6 +177,8 @@ func resourceComputeFirewallRead(d *schema.ResourceData, meta interface{}) error return fmt.Errorf("Error reading firewall: %s", err) } + d.Set("self_link", firewall.SelfLink) + return nil } From 91b000fd31102f2135078e9ba18c67ae22158765 Mon Sep 17 00:00:00 2001 From: David Watson Date: Tue, 10 Feb 2015 11:14:37 +0000 Subject: [PATCH 3/4] Add SelfLink field to GCE network resource. --- builtin/providers/google/resource_compute_network.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/builtin/providers/google/resource_compute_network.go b/builtin/providers/google/resource_compute_network.go index b79ac2ade..4254da721 100644 --- a/builtin/providers/google/resource_compute_network.go +++ b/builtin/providers/google/resource_compute_network.go @@ -33,6 +33,11 @@ func resourceComputeNetwork() *schema.Resource { Type: schema.TypeString, Computed: true, }, + + "self_link": &schema.Schema{ + Type: schema.TypeString, + Computed: true, + }, }, } } @@ -98,6 +103,7 @@ func resourceComputeNetworkRead(d *schema.ResourceData, meta interface{}) error } d.Set("gateway_ipv4", network.GatewayIPv4) + d.Set("self_link", network.SelfLink) return nil } From a3ca34ac88438b138711621d7d0e481d542634fb Mon Sep 17 00:00:00 2001 From: David Watson Date: Tue, 10 Feb 2015 11:15:07 +0000 Subject: [PATCH 4/4] Add SelfLink field to GCE route resource. --- builtin/providers/google/resource_compute_route.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/builtin/providers/google/resource_compute_route.go b/builtin/providers/google/resource_compute_route.go index 0c15dbaa4..02aa72652 100644 --- a/builtin/providers/google/resource_compute_route.go +++ b/builtin/providers/google/resource_compute_route.go @@ -80,6 +80,11 @@ func resourceComputeRoute() *schema.Resource { return hashcode.String(v.(string)) }, }, + + "self_link": &schema.Schema{ + Type: schema.TypeString, + Computed: true, + }, }, } } @@ -183,7 +188,7 @@ func resourceComputeRouteCreate(d *schema.ResourceData, meta interface{}) error func resourceComputeRouteRead(d *schema.ResourceData, meta interface{}) error { config := meta.(*Config) - _, err := config.clientCompute.Routes.Get( + route, err := config.clientCompute.Routes.Get( config.Project, d.Id()).Do() if err != nil { if gerr, ok := err.(*googleapi.Error); ok && gerr.Code == 404 { @@ -196,6 +201,8 @@ func resourceComputeRouteRead(d *schema.ResourceData, meta interface{}) error { return fmt.Errorf("Error reading route: %#v", err) } + d.Set("self_link", route.SelfLink) + return nil }