Accept subnetwork name only in forwarding rule (#1552)

* Accept subnetwork name only in forwarding rule

* Fix acceptance test
This commit is contained in:
Vincent Roseberry 2018-05-29 11:00:04 -07:00 committed by GitHub
parent 1d0f88f903
commit f0857a09d5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 6 deletions

View File

@ -108,10 +108,11 @@ func resourceComputeForwardingRule() *schema.Resource {
}, },
"subnetwork": &schema.Schema{ "subnetwork": &schema.Schema{
Type: schema.TypeString, Type: schema.TypeString,
Optional: true, Optional: true,
ForceNew: true, ForceNew: true,
Computed: true, Computed: true,
DiffSuppressFunc: compareSelfLinkOrResourceName,
}, },
}, },
} }
@ -125,6 +126,11 @@ func resourceComputeForwardingRuleCreate(d *schema.ResourceData, meta interface{
return err return err
} }
subnetwork, err := ParseSubnetworkFieldValue(d.Get("subnetwork").(string), d, config)
if err != nil {
return err
}
region, err := getRegion(d, config) region, err := getRegion(d, config)
if err != nil { if err != nil {
return err return err
@ -151,7 +157,7 @@ func resourceComputeForwardingRuleCreate(d *schema.ResourceData, meta interface{
Network: network.RelativeLink(), Network: network.RelativeLink(),
PortRange: d.Get("port_range").(string), PortRange: d.Get("port_range").(string),
Ports: ports, Ports: ports,
Subnetwork: d.Get("subnetwork").(string), Subnetwork: subnetwork.RelativeLink(),
Target: d.Get("target").(string), Target: d.Get("target").(string),
} }

View File

@ -242,6 +242,7 @@ resource "google_compute_forwarding_rule" "foobar" {
backend_service = "${google_compute_region_backend_service.foobar-bs.self_link}" backend_service = "${google_compute_region_backend_service.foobar-bs.self_link}"
ports = ["80"] ports = ["80"]
network = "${google_compute_network.foobar.name}" network = "${google_compute_network.foobar.name}"
subnetwork = "%s"
} }
resource "google_compute_forwarding_rule" "foobar2" { resource "google_compute_forwarding_rule" "foobar2" {
description = "Resource created for Terraform acceptance testing" description = "Resource created for Terraform acceptance testing"
@ -251,5 +252,5 @@ resource "google_compute_forwarding_rule" "foobar2" {
ports = ["80"] ports = ["80"]
network = "${google_compute_network.foobar.self_link}" network = "${google_compute_network.foobar.self_link}"
} }
`, serviceName, checkName, networkName, ruleName1, ruleName2) `, serviceName, checkName, networkName, ruleName1, networkName, ruleName2)
} }