From ea4785632ef707c592994b84c7e5ace1c7e8bae1 Mon Sep 17 00:00:00 2001 From: Rostislav Bobrovsky Date: Tue, 17 Mar 2026 21:35:53 +0000 Subject: [PATCH 1/3] Add field targetProxies to resources google_network_services_tls_route (beta) --- mmv1/products/compute/TargetTcpProxy.yaml | 6 +++ mmv1/products/networkservices/TlsRoute.yaml | 8 ++++ ...s_tls_route_target_tcp_proxy_basic.tf.tmpl | 42 +++++++++++++++++++ .../target_tcp_proxy_tls_route.tf.tmpl | 42 +++++++++++++++++++ 4 files changed, 98 insertions(+) create mode 100644 mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl create mode 100644 mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl diff --git a/mmv1/products/compute/TargetTcpProxy.yaml b/mmv1/products/compute/TargetTcpProxy.yaml index e7670146f565..81b16faae28a 100644 --- a/mmv1/products/compute/TargetTcpProxy.yaml +++ b/mmv1/products/compute/TargetTcpProxy.yaml @@ -46,6 +46,12 @@ examples: health_check_name: health-check target_tcp_proxy_name: test-proxy - name: target_tcp_proxy_backendless + min_version: beta + primary_resource_id: default + vars: + target_tcp_proxy_name: test-proxy + - name: target_tcp_proxy_tls_route + min_version: beta primary_resource_id: default min_version: beta vars: diff --git a/mmv1/products/networkservices/TlsRoute.yaml b/mmv1/products/networkservices/TlsRoute.yaml index 94d9c55b9200..0c3edca76ce9 100644 --- a/mmv1/products/networkservices/TlsRoute.yaml +++ b/mmv1/products/networkservices/TlsRoute.yaml @@ -71,6 +71,14 @@ examples: resource_name: 'my-tls-route' backend_service_name: 'my-backend-service' health_check_name: 'backend-service-health-check' + - name: 'network_services_tls_route_target_tcp_proxy_basic' + min_version: beta + primary_resource_id: 'default' + vars: + resource_name: 'my-tls-route' + target_tcp_proxy_name: 'my-target-tcp-proxy' + backend_service_name: 'my-backend-service' + health_check_name: 'my-health-check' - name: 'network_services_tls_route_region_target_tcp_proxy_basic' min_version: beta primary_resource_id: 'default' diff --git a/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl b/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl new file mode 100644 index 000000000000..f6b56df2c4df --- /dev/null +++ b/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl @@ -0,0 +1,42 @@ +resource "google_compute_backend_service" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "backend_service_name"}}" + load_balancing_scheme = "INTERNAL_MANAGED" + protocol = "TCP" + health_checks = [google_compute_health_check.{{$.PrimaryResourceId}}.id] +} + +resource "google_compute_health_check" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "health_check_name"}}" + + https_health_check { + port = 443 + } +} + +resource "google_compute_target_tcp_proxy" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "target_tcp_proxy_name"}}" + load_balancing_scheme = "INTERNAL_MANAGED" +} + +resource "google_network_services_tls_route" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "resource_name"}}" + + target_proxies = [ + google_compute_target_tcp_proxy.{{$.PrimaryResourceId}}.id + ] + + rules { + matches { + sni_host = ["example.com"] + } + action { + destinations { + service_name = google_compute_backend_service.{{$.PrimaryResourceId}}.id + } + } + } +} diff --git a/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl b/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl new file mode 100644 index 000000000000..33a48eda3b80 --- /dev/null +++ b/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl @@ -0,0 +1,42 @@ +resource "google_compute_target_tcp_proxy" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "target_tcp_proxy_name"}}" + load_balancing_scheme = "INTERNAL_MANAGED" +} + +resource "google_compute_backend_service" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "backend_service_name"}}" + load_balancing_scheme = "INTERNAL_MANAGED" + protocol = "TCP" + health_checks = [google_compute_health_check.{{$.PrimaryResourceId}}.id] +} + +resource "google_compute_health_check" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "health_check_name"}}" + + https_health_check { + port = 443 + } +} + +resource "google_network_services_tls_route" "{{$.PrimaryResourceId}}" { + provider = google-beta + name = "{{index $.Vars "tls_route_name"}}" + + target_proxies = [ + google_compute_target_tcp_proxy.{{$.PrimaryResourceId}}.id + ] + + rules { + matches { + sni_host = ["example.com"] + } + action { + destinations { + service_name = google_compute_backend_service.{{$.PrimaryResourceId}}.id + } + } + } +} From f900dab699152eaa94b61c8dd2dae2a81f4e63e8 Mon Sep 17 00:00:00 2001 From: Rostislav Bobrovsky Date: Fri, 20 Mar 2026 00:48:06 +0000 Subject: [PATCH 2/3] Update formatting --- ...work_services_tls_route_target_tcp_proxy_basic.tf.tmpl | 8 ++++---- .../terraform/examples/target_tcp_proxy_tls_route.tf.tmpl | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl b/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl index f6b56df2c4df..3f6791bb1643 100644 --- a/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl +++ b/mmv1/templates/terraform/examples/network_services_tls_route_target_tcp_proxy_basic.tf.tmpl @@ -7,8 +7,8 @@ resource "google_compute_backend_service" "{{$.PrimaryResourceId}}" { } resource "google_compute_health_check" "{{$.PrimaryResourceId}}" { - provider = google-beta - name = "{{index $.Vars "health_check_name"}}" + provider = google-beta + name = "{{index $.Vars "health_check_name"}}" https_health_check { port = 443 @@ -22,8 +22,8 @@ resource "google_compute_target_tcp_proxy" "{{$.PrimaryResourceId}}" { } resource "google_network_services_tls_route" "{{$.PrimaryResourceId}}" { - provider = google-beta - name = "{{index $.Vars "resource_name"}}" + provider = google-beta + name = "{{index $.Vars "resource_name"}}" target_proxies = [ google_compute_target_tcp_proxy.{{$.PrimaryResourceId}}.id diff --git a/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl b/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl index 33a48eda3b80..d09ece303d72 100644 --- a/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl +++ b/mmv1/templates/terraform/examples/target_tcp_proxy_tls_route.tf.tmpl @@ -13,8 +13,8 @@ resource "google_compute_backend_service" "{{$.PrimaryResourceId}}" { } resource "google_compute_health_check" "{{$.PrimaryResourceId}}" { - provider = google-beta - name = "{{index $.Vars "health_check_name"}}" + provider = google-beta + name = "{{index $.Vars "health_check_name"}}" https_health_check { port = 443 @@ -22,8 +22,8 @@ resource "google_compute_health_check" "{{$.PrimaryResourceId}}" { } resource "google_network_services_tls_route" "{{$.PrimaryResourceId}}" { - provider = google-beta - name = "{{index $.Vars "tls_route_name"}}" + provider = google-beta + name = "{{index $.Vars "tls_route_name"}}" target_proxies = [ google_compute_target_tcp_proxy.{{$.PrimaryResourceId}}.id From aaf4e4b5adc0f90d5ed4860917936555751e0265 Mon Sep 17 00:00:00 2001 From: Rostislav Bobrovsky Date: Mon, 23 Mar 2026 21:40:58 +0000 Subject: [PATCH 3/3] Fix merge conflicts --- mmv1/products/compute/TargetTcpProxy.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/mmv1/products/compute/TargetTcpProxy.yaml b/mmv1/products/compute/TargetTcpProxy.yaml index 81b16faae28a..f45c468bea93 100644 --- a/mmv1/products/compute/TargetTcpProxy.yaml +++ b/mmv1/products/compute/TargetTcpProxy.yaml @@ -53,7 +53,6 @@ examples: - name: target_tcp_proxy_tls_route min_version: beta primary_resource_id: default - min_version: beta vars: backend_service_name: backend-service health_check_name: health-check