77
88 "github.com/hashicorp/terraform-plugin-testing/helper/resource"
99 "github.com/hashicorp/terraform-provider-google/google/acctest"
10+ "github.com/hashicorp/terraform-provider-google/google/envvar"
1011)
1112
1213func TestAccComputeRegionBackendService_basic(t *testing.T) {
@@ -756,6 +757,35 @@ func TestAccComputeRegionBackendService_withDynamicBackendCount(t *testing.T) {
756757 })
757758}
758759
760+ func TestAccComputeRegionBackendService_withTags(t *testing.T) {
761+ t.Parallel()
762+
763+ org := envvar.GetTestOrgFromEnv(t)
764+
765+ serviceName := fmt.Sprintf("tf-test-%s", acctest.RandString(t, 10))
766+ checkName := fmt.Sprintf("tf-test-%s", acctest.RandString(t, 10))
767+ tagKeyResult := acctest.BootstrapSharedTestTagKeyDetails(t, "crm-rbs-tagkey", "organizations/"+org, make(map[string]interface{}))
768+ sharedTagkey,_ := tagKeyResult["shared_tag_key"]
769+ tagValueResult := acctest.BootstrapSharedTestTagValueDetails(t, "crm-rbs-tagvalue", sharedTagkey, org)
770+
771+ acctest.VcrTest(t, resource.TestCase{
772+ PreCheck: func() { acctest.AccTestPreCheck(t) },
773+ ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
774+ CheckDestroy: testAccCheckComputeRegionBackendServiceDestroyProducer(t),
775+ Steps: []resource.TestStep{
776+ {
777+ Config: testAccComputeRegionBackendService_withTags(serviceName, checkName, tagKeyResult["name"], tagValueResult["name"]),
778+ },
779+ {
780+ ResourceName: "google_compute_region_backend_service.foobar",
781+ ImportState: true,
782+ ImportStateVerify: true,
783+ ImportStateVerifyIgnore: []string{"params"},
784+ },
785+ },
786+ })
787+ }
788+
759789func testAccComputeRegionBackendService_withDynamicBackendCount(serviceName, netName, hcName, igName string) string {
760790 return fmt.Sprintf(`
761791locals {
@@ -1770,3 +1800,28 @@ resource "google_compute_region_health_check" "health_check" {
17701800}
17711801`, serviceName, checkName)
17721802}
1803+
1804+ func testAccComputeRegionBackendService_withTags(serviceName, checkName string, tagKey string, tagValue string) string {
1805+ return fmt.Sprintf(`
1806+ resource "google_compute_region_backend_service" "foobar" {
1807+ name = "%s"
1808+ health_checks = [google_compute_health_check.zero.self_link]
1809+ region = "us-central1"
1810+ params {
1811+ resource_manager_tags = {
1812+ "%s" = "%s"
1813+ }
1814+ }
1815+ }
1816+
1817+ resource "google_compute_health_check" "zero" {
1818+ name = "%s"
1819+ check_interval_sec = 1
1820+ timeout_sec = 1
1821+
1822+ tcp_health_check {
1823+ port = "80"
1824+ }
1825+ }
1826+ `, serviceName, tagKey, tagValue, checkName)
1827+ }
0 commit comments