Skip to content

Commit e8318d7

Browse files
Enable EXTERNAL_MANAGED resource examples for GA (#5660) (#11018)
Signed-off-by: Modular Magician <[email protected]>
1 parent 2a7d96e commit e8318d7

5 files changed

+115
-6
lines changed

.changelog/5660.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
compute: promoted `EXTERNAL_MANAGED` value for `load_balancing_scheme` in `google_compute_backend_service ` and `google_compute_global_forwarding_rule` to GA
3+
```

google/resource_compute_backend_service_generated_test.go

+41
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,47 @@ resource "google_compute_http_health_check" "default" {
156156
`, context)
157157
}
158158

159+
func TestAccComputeBackendService_backendServiceExternalManagedExample(t *testing.T) {
160+
t.Parallel()
161+
162+
context := map[string]interface{}{
163+
"random_suffix": randString(t, 10),
164+
}
165+
166+
vcrTest(t, resource.TestCase{
167+
PreCheck: func() { testAccPreCheck(t) },
168+
Providers: testAccProviders,
169+
CheckDestroy: testAccCheckComputeBackendServiceDestroyProducer(t),
170+
Steps: []resource.TestStep{
171+
{
172+
Config: testAccComputeBackendService_backendServiceExternalManagedExample(context),
173+
},
174+
{
175+
ResourceName: "google_compute_backend_service.default",
176+
ImportState: true,
177+
ImportStateVerify: true,
178+
},
179+
},
180+
})
181+
}
182+
183+
func testAccComputeBackendService_backendServiceExternalManagedExample(context map[string]interface{}) string {
184+
return Nprintf(`
185+
resource "google_compute_backend_service" "default" {
186+
name = "tf-test-backend-service%{random_suffix}"
187+
health_checks = [google_compute_health_check.default.id]
188+
load_balancing_scheme = "EXTERNAL_MANAGED"
189+
}
190+
191+
resource "google_compute_health_check" "default" {
192+
name = "tf-test-health-check%{random_suffix}"
193+
http_health_check {
194+
port = 80
195+
}
196+
}
197+
`, context)
198+
}
199+
159200
func testAccCheckComputeBackendServiceDestroyProducer(t *testing.T) func(s *terraform.State) error {
160201
return func(s *terraform.State) error {
161202
for name, rs := range s.RootModule().Resources {

google/resource_compute_global_forwarding_rule_generated_test.go

+71
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,77 @@ resource "google_compute_http_health_check" "default" {
101101
`, context)
102102
}
103103

104+
func TestAccComputeGlobalForwardingRule_globalForwardingRuleExternalManagedExample(t *testing.T) {
105+
t.Parallel()
106+
107+
context := map[string]interface{}{
108+
"random_suffix": randString(t, 10),
109+
}
110+
111+
vcrTest(t, resource.TestCase{
112+
PreCheck: func() { testAccPreCheck(t) },
113+
Providers: testAccProviders,
114+
CheckDestroy: testAccCheckComputeGlobalForwardingRuleDestroyProducer(t),
115+
Steps: []resource.TestStep{
116+
{
117+
Config: testAccComputeGlobalForwardingRule_globalForwardingRuleExternalManagedExample(context),
118+
},
119+
{
120+
ResourceName: "google_compute_global_forwarding_rule.default",
121+
ImportState: true,
122+
ImportStateVerify: true,
123+
ImportStateVerifyIgnore: []string{"port_range", "target"},
124+
},
125+
},
126+
})
127+
}
128+
129+
func testAccComputeGlobalForwardingRule_globalForwardingRuleExternalManagedExample(context map[string]interface{}) string {
130+
return Nprintf(`
131+
resource "google_compute_global_forwarding_rule" "default" {
132+
name = "tf-test-global-rule%{random_suffix}"
133+
target = google_compute_target_http_proxy.default.id
134+
port_range = "80"
135+
load_balancing_scheme = "EXTERNAL_MANAGED"
136+
}
137+
138+
resource "google_compute_target_http_proxy" "default" {
139+
name = "tf-test-target-proxy%{random_suffix}"
140+
description = "a description"
141+
url_map = google_compute_url_map.default.id
142+
}
143+
144+
resource "google_compute_url_map" "default" {
145+
name = "url-map-tf-test-target-proxy%{random_suffix}"
146+
description = "a description"
147+
default_service = google_compute_backend_service.default.id
148+
149+
host_rule {
150+
hosts = ["mysite.com"]
151+
path_matcher = "allpaths"
152+
}
153+
154+
path_matcher {
155+
name = "allpaths"
156+
default_service = google_compute_backend_service.default.id
157+
158+
path_rule {
159+
paths = ["/*"]
160+
service = google_compute_backend_service.default.id
161+
}
162+
}
163+
}
164+
165+
resource "google_compute_backend_service" "default" {
166+
name = "backend%{random_suffix}"
167+
port_name = "http"
168+
protocol = "HTTP"
169+
timeout_sec = 10
170+
load_balancing_scheme = "EXTERNAL_MANAGED"
171+
}
172+
`, context)
173+
}
174+
104175
func testAccCheckComputeGlobalForwardingRuleDestroyProducer(t *testing.T) func(s *terraform.State) error {
105176
return func(s *terraform.State) error {
106177
for name, rs := range s.RootModule().Resources {

website/docs/r/compute_backend_service.html.markdown

-2
Original file line numberDiff line numberDiff line change
@@ -234,14 +234,12 @@ resource "google_compute_backend_service" "default" {
234234

235235
```hcl
236236
resource "google_compute_backend_service" "default" {
237-
provider = google-beta
238237
name = "backend-service"
239238
health_checks = [google_compute_health_check.default.id]
240239
load_balancing_scheme = "EXTERNAL_MANAGED"
241240
}
242241
243242
resource "google_compute_health_check" "default" {
244-
provider = google-beta
245243
name = "health-check"
246244
http_health_check {
247245
port = 80

website/docs/r/compute_global_forwarding_rule.html.markdown

-4
Original file line numberDiff line numberDiff line change
@@ -870,22 +870,19 @@ resource "google_compute_health_check" "default" {
870870

871871
```hcl
872872
resource "google_compute_global_forwarding_rule" "default" {
873-
provider = google-beta
874873
name = "global-rule"
875874
target = google_compute_target_http_proxy.default.id
876875
port_range = "80"
877876
load_balancing_scheme = "EXTERNAL_MANAGED"
878877
}
879878
880879
resource "google_compute_target_http_proxy" "default" {
881-
provider = google-beta
882880
name = "target-proxy"
883881
description = "a description"
884882
url_map = google_compute_url_map.default.id
885883
}
886884
887885
resource "google_compute_url_map" "default" {
888-
provider = google-beta
889886
name = "url-map-target-proxy"
890887
description = "a description"
891888
default_service = google_compute_backend_service.default.id
@@ -907,7 +904,6 @@ resource "google_compute_url_map" "default" {
907904
}
908905
909906
resource "google_compute_backend_service" "default" {
910-
provider = google-beta
911907
name = "backend"
912908
port_name = "http"
913909
protocol = "HTTP"

0 commit comments

Comments
 (0)