diff --git a/.changelog/3224.txt b/.changelog/3224.txt new file mode 100644 index 00000000000..62553ae302e --- /dev/null +++ b/.changelog/3224.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +compute: Added support for full-name/id `network_endpoint_group` value in `google_network_endpoint` +``` diff --git a/google/resource_compute_network_endpoint.go b/google/resource_compute_network_endpoint.go index 843f1a86a8c..c6742ec3c6c 100644 --- a/google/resource_compute_network_endpoint.go +++ b/google/resource_compute_network_endpoint.go @@ -60,7 +60,7 @@ range).`, Type: schema.TypeString, Required: true, ForceNew: true, - DiffSuppressFunc: compareSelfLinkOrResourceName, + DiffSuppressFunc: compareResourceNames, Description: `The network endpoint group this endpoint is part of.`, }, "port": { @@ -332,6 +332,9 @@ func expandComputeNetworkEndpointIpAddress(v interface{}, d TerraformResourceDat } func resourceComputeNetworkEndpointEncoder(d *schema.ResourceData, meta interface{}, obj map[string]interface{}) (map[string]interface{}, error) { + // Network Endpoint Group is a URL parameter only, so replace self-link/path with resource name only. + d.Set("network_endpoint_group", GetResourceNameFromSelfLink(d.Get("network_endpoint_group").(string))) + wrappedReq := map[string]interface{}{ "networkEndpoints": []interface{}{obj}, } diff --git a/google/resource_compute_network_endpoint_test.go b/google/resource_compute_network_endpoint_test.go index 48935856901..ab5e761e011 100644 --- a/google/resource_compute_network_endpoint_test.go +++ b/google/resource_compute_network_endpoint_test.go @@ -81,7 +81,7 @@ func testAccComputeNetworkEndpoint_networkEndpointsBasic(context map[string]inte return Nprintf(` resource "google_compute_network_endpoint" "default" { zone = "us-central1-a" - network_endpoint_group = google_compute_network_endpoint_group.neg.name + network_endpoint_group = google_compute_network_endpoint_group.neg.id instance = google_compute_instance.default.name ip_address = google_compute_instance.default.network_interface[0].network_ip @@ -107,7 +107,7 @@ func testAccComputeNetworkEndpoint_networkEndpointsAdditional(context map[string return Nprintf(` resource "google_compute_network_endpoint" "default" { zone = "us-central1-a" - network_endpoint_group = google_compute_network_endpoint_group.neg.name + network_endpoint_group = google_compute_network_endpoint_group.neg.id instance = google_compute_instance.default.name ip_address = google_compute_instance.default.network_interface[0].network_ip @@ -116,7 +116,7 @@ resource "google_compute_network_endpoint" "default" { resource "google_compute_network_endpoint" "add1" { zone = "us-central1-a" - network_endpoint_group = google_compute_network_endpoint_group.neg.name + network_endpoint_group = google_compute_network_endpoint_group.neg.id instance = google_compute_instance.default.name ip_address = google_compute_instance.default.network_interface[0].network_ip