mirror of
https://github.com/letic/terraform-provider-google.git
synced 2024-10-01 16:21:06 +00:00
providers/google: Fix read for the backend service resource (#7476)
This commit is contained in:
parent
ace4cf2831
commit
f92b5eafa8
@ -255,20 +255,21 @@ func resourceComputeBackendServiceUpdate(d *schema.ResourceData, meta interface{
|
||||
HealthChecks: healthChecks,
|
||||
}
|
||||
|
||||
if d.HasChange("backend") {
|
||||
service.Backends = expandBackends(d.Get("backend").(*schema.Set).List())
|
||||
// Optional things
|
||||
if v, ok := d.GetOk("backend"); ok {
|
||||
service.Backends = expandBackends(v.(*schema.Set).List())
|
||||
}
|
||||
if d.HasChange("description") {
|
||||
service.Description = d.Get("description").(string)
|
||||
if v, ok := d.GetOk("description"); ok {
|
||||
service.Description = v.(string)
|
||||
}
|
||||
if d.HasChange("port_name") {
|
||||
service.PortName = d.Get("port_name").(string)
|
||||
if v, ok := d.GetOk("port_name"); ok {
|
||||
service.PortName = v.(string)
|
||||
}
|
||||
if d.HasChange("protocol") {
|
||||
service.Protocol = d.Get("protocol").(string)
|
||||
if v, ok := d.GetOk("protocol"); ok {
|
||||
service.Protocol = v.(string)
|
||||
}
|
||||
if d.HasChange("timeout_sec") {
|
||||
service.TimeoutSec = int64(d.Get("timeout_sec").(int))
|
||||
if v, ok := d.GetOk("timeout_sec"); ok {
|
||||
service.TimeoutSec = int64(v.(int))
|
||||
}
|
||||
|
||||
if d.HasChange("enable_cdn") {
|
||||
|
@ -46,7 +46,6 @@ func TestAccComputeBackendService_withBackend(t *testing.T) {
|
||||
itName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
checkName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
var svc compute.BackendService
|
||||
|
||||
resource.Test(t, resource.TestCase{
|
||||
PreCheck: func() { testAccPreCheck(t) },
|
||||
Providers: testAccProviders,
|
||||
@ -54,7 +53,7 @@ func TestAccComputeBackendService_withBackend(t *testing.T) {
|
||||
Steps: []resource.TestStep{
|
||||
resource.TestStep{
|
||||
Config: testAccComputeBackendService_withBackend(
|
||||
serviceName, igName, itName, checkName),
|
||||
serviceName, igName, itName, checkName, 10),
|
||||
Check: resource.ComposeTestCheckFunc(
|
||||
testAccCheckComputeBackendServiceExists(
|
||||
"google_compute_backend_service.lipsum", &svc),
|
||||
@ -74,6 +73,47 @@ func TestAccComputeBackendService_withBackend(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestAccComputeBackendService_withBackendAndUpdate(t *testing.T) {
|
||||
serviceName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
igName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
itName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
checkName := fmt.Sprintf("tf-test-%s", acctest.RandString(10))
|
||||
var svc compute.BackendService
|
||||
resource.Test(t, resource.TestCase{
|
||||
PreCheck: func() { testAccPreCheck(t) },
|
||||
Providers: testAccProviders,
|
||||
CheckDestroy: testAccCheckComputeBackendServiceDestroy,
|
||||
Steps: []resource.TestStep{
|
||||
resource.TestStep{
|
||||
Config: testAccComputeBackendService_withBackend(
|
||||
serviceName, igName, itName, checkName, 10),
|
||||
Check: resource.ComposeTestCheckFunc(
|
||||
testAccCheckComputeBackendServiceExists(
|
||||
"google_compute_backend_service.lipsum", &svc),
|
||||
),
|
||||
},
|
||||
resource.TestStep{
|
||||
Config: testAccComputeBackendService_withBackend(
|
||||
serviceName, igName, itName, checkName, 20),
|
||||
Check: resource.ComposeTestCheckFunc(
|
||||
testAccCheckComputeBackendServiceExists(
|
||||
"google_compute_backend_service.lipsum", &svc),
|
||||
),
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
if svc.TimeoutSec != 20 {
|
||||
t.Errorf("Expected TimeoutSec == 20, got %d", svc.TimeoutSec)
|
||||
}
|
||||
if svc.Protocol != "HTTP" {
|
||||
t.Errorf("Expected Protocol to be HTTP, got %q", svc.Protocol)
|
||||
}
|
||||
if len(svc.Backends) != 1 {
|
||||
t.Errorf("Expected 1 backend, got %d", len(svc.Backends))
|
||||
}
|
||||
}
|
||||
|
||||
func testAccCheckComputeBackendServiceDestroy(s *terraform.State) error {
|
||||
config := testAccProvider.Meta().(*Config)
|
||||
|
||||
@ -204,14 +244,14 @@ resource "google_compute_http_health_check" "one" {
|
||||
}
|
||||
|
||||
func testAccComputeBackendService_withBackend(
|
||||
serviceName, igName, itName, checkName string) string {
|
||||
serviceName, igName, itName, checkName string, timeout int64) string {
|
||||
return fmt.Sprintf(`
|
||||
resource "google_compute_backend_service" "lipsum" {
|
||||
name = "%s"
|
||||
description = "Hello World 1234"
|
||||
port_name = "http"
|
||||
protocol = "HTTP"
|
||||
timeout_sec = 10
|
||||
timeout_sec = %v
|
||||
|
||||
backend {
|
||||
group = "${google_compute_instance_group_manager.foobar.instance_group}"
|
||||
@ -249,5 +289,5 @@ resource "google_compute_http_health_check" "default" {
|
||||
check_interval_sec = 1
|
||||
timeout_sec = 1
|
||||
}
|
||||
`, serviceName, igName, itName, checkName)
|
||||
`, serviceName, timeout, igName, itName, checkName)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user