GoogleComputeRegionTargetHttpsProxy class final

Factory wrapper for google_compute_region_target_https_proxy (provider hashicorp/google ~> 7.0).

A regional HTTPS target proxy — the TLS-terminating node in the GCP regional external or internal HTTP(S) load-balancer chain. The full chain is:

google_compute_forwarding_rule.target
  → google_compute_region_target_https_proxy
    → google_compute_region_target_https_proxy.url_map
      → google_compute_region_url_map.default_service
        → google_compute_region_backend_service

Required identity:

  • localName: Terraform local name (the address segment after google_compute_region_target_https_proxy.).
  • name: GCP target proxy resource name. Pass TfArg.literal('lb-https-proxy') or TfArg.ref(otherProxy.nameRef).
  • urlMap: self-link of the upstream GoogleComputeRegionUrlMap (the regional URL map — not the global GoogleComputeUrlMap). Pass TfArg.ref(urlMap.selfLink) so the value resolves to ${google_compute_region_url_map.<localName>.self_link}.
  • region: GCP region for the proxy. Although the provider schema marks region as optional (falling back to the provider-level region), this wrapper requires it so that regional resources stay explicit in module call sites. Pass TfArg.literal('us-central1') or TfArg.ref(var.region).

TLS material — exactly one of:

  • sslCertificates: list of self-links to regional SSL certificate resources (google_compute_region_ssl_certificate). Note: the regional SSL certificate wrapper is not curated in this wave (a follow-up wave will add it). Until then, pass self-links as literal strings, e.g. TfArg.literal(const ['projects/my-proj/regions/us-central1/sslCertificates/my-cert']). The classic certificate path; works for EXTERNAL_MANAGED and INTERNAL_MANAGED regional load-balancing schemes.
  • certificateManagerCertificates: list of Certificate Manager certificate URLs (the //certificatemanager.googleapis.com/projects/{p}/locations/{l}/certificates/{r} form, or the bare projects/.../locations/.../certificates/{r} self-link). Mutually exclusive with sslCertificates.

Example (classic regional SSL certificate, regional HTTPS LB):

final httpsProxy = GoogleComputeRegionTargetHttpsProxy(
  localName: 'lb_https',
  name: TfArg.literal('lb-https-proxy'),
  urlMap: TfArg.ref(regionUrlMap.selfLink),
  region: TfArg.literal('us-central1'),
  sslCertificates: TfArg.literal(const [
    'projects/my-proj/regions/us-central1/sslCertificates/my-cert',
  ]),
  sslPolicy: TfArg.ref(var.region_ssl_policy_id),
);

sslPolicy is the self-link of a regional SSL policy (google_compute_region_ssl_policy). The regional SSL policy wrapper is not curated in this wave (a follow-up wave will add it); pass the self-link via an input variable, e.g. TfArg.ref(var.region_ssl_policy_id). The currently curated GoogleComputeSslPolicy resource is global and cannot be used here.

Note: unlike the global google_compute_target_https_proxy, the regional variant does not support quic_override, tls_early_data, proxy_bind, or certificate_map. The provider schema omits these fields for regional proxies.

Composition pattern: extends Resource<$GoogleComputeRegionTargetHttpsProxy> for runtime behavior.

Constructors

GoogleComputeRegionTargetHttpsProxy({required String localName, required TfArg<String> name, required TfArg<String> urlMap, required TfArg<String> region, TfArg<List<String>>? sslCertificates, TfArg<List<String>>? certificateManagerCertificates, TfArg<String>? sslPolicy, TfArg<String>? serverTlsPolicy, TfArg<num>? httpKeepAliveTimeoutSec, TfArg<String>? description, TfArg<String>? project, LifecycleOptions? lifecycle, List<DependencyTarget>? dependsOn})

Properties

$sensitiveFields Set<String>
Field names that are @Sensitive per the IR-derived per-resource constant. Curated factories override with a baked-in static const Set<String> (file-private in v0.5+).
no setter
$supportsDeletionProtection bool
Capability flag: true when this resource's underlying Terraform schema has a deletion_protection boolean attribute that the synth-time devMode flow can flip to false. Defaults to false; the codegen emitter overrides this to true for wrappers whose schema includes the attribute.
no setterinherited
argMap Map<String, TfArg?>
Argument-name → TfArg map. Keys are snake_case (Terraform JSON name). Synth emits these keys directly; the factory is responsible for the camelCase → snake_case translation at construction time.
finalinherited
dependsOn List<DependencyTarget>?
Optional depends_on = [...]. Each entry is a DependencyTarget — either a wholesale resource (rendered as bare address) or an explicit TfRef (rendered via bareAddress).
finalinherited
hashCode int
The hash code for this object.
no setterinherited
id → TfRef<String>
Reference to id attribute (full path projects/{project}/regions/{region}/targetHttpsProxies/{name}).
no setter
kind → ResourceKind
Always ResourceKind.resource. Overridden by Data.
no setterinherited
lifecycle → LifecycleOptions?
Optional lifecycle { ... } block.
finalinherited
localName String
User-supplied local name within a Stack.
finalinherited
nameRef → TfRef<String>
Reference to name attribute. Use for interpolations like proxy.nameRef${google_compute_region_target_https_proxy.<localName>.name}.
no setter
provider → ProviderBinding?
Optional explicit provider binding. Only the type is referenced here; the concrete Provider class lives in terradart_google (provider classes are defined per-provider, outside the core runtime).
finalinherited
proxyIdRef → TfRef<num>
Reference to the computed proxy_id attribute — the numeric GCP resource identifier. Available after apply.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
Reference to self_link attribute. Frequently used as the target param of downstream resources like google_compute_forwarding_rule.
no setter
terraformType String
Terraform resource type, e.g. google_pubsub_topic.
finalinherited
tfAddress String
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

$tfType → const String