GoogleComputeAddress class final

Factory wrapper for google_compute_address.

Represents an Address resource.

Each virtual machine instance has an ephemeral internal IP address and, optionally, an external IP address. To communicate between instances on the same network, you can use an instance's internal IP address. To communicate with the Internet and instances outside of the same network, you must specify the instance's external IP address.

Internal IP addresses are ephemeral and only belong to an instance for the lifetime of the instance; if the instance is deleted and recreated, the instance is assigned a new internal IP address, either by Compute Engine or by you. External IP addresses can be either ephemeral or static.

Use addressType: AddressType.internal for VPC-private addresses, AddressType.external for public IPs. Regional resources live under a region; the global counterpart is GoogleComputeGlobalAddress.

Required identity:

  • localName: Terraform local name (the address segment after google_compute_address.).
  • name: GCP address resource name.

Example:

final lbVip = GoogleComputeAddress(
  'lb_vip',
  name: TfArg.literal('lb-vip-prod'),
  region: TfArg.literal('asia-northeast1'),
  addressType: AddressType.external,
  networkTier: NetworkTier.premium,
);
Inheritance

Constructors

GoogleComputeAddress(String localName, {required TfArg<String> name, TfArg<String>? region, AddressType? addressType, TfArg<String>? address, TfArg<num>? prefixLength, TfArg<String>? purpose, NetworkTier? networkTier, IpVersion? ipVersion, Ipv6EndpointType? ipv6EndpointType, RefTo<GoogleComputeNetwork>? network, RefTo<GoogleComputeSubnetwork>? subnetwork, TfArg<String>? ipCollection, TfArg<Map<String, String>>? labels, TfArg<String>? description, TfArg<String>? project, LifecycleOptions? lifecycle, List<TfAddressed>? dependsOn, StackProvider? provider, TfTimeouts? timeouts})

Properties

address → TfRef<String>
Reference to address attribute.
no setter
addressId → TfRef<String>
Reference to address_id attribute.
no setter
addressType → TfRef<String>
Reference to address_type attribute.
no setter
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
creationTimestamp → TfRef<String>
Reference to creation_timestamp attribute.
no setter
defaultProvider → String
The provider name a block without provider uses: by default the prefix of terraformType (google for google_pubsub_topic).
no setterinherited
deletionPolicy → TfRef<String>
Reference to deletion_policy attribute.
no setter
dependsOn → List<TfAddressed>?
Optional depends_on = [...]: the resources, data sources and module calls this block waits for, e.g. dependsOn: [api, ...apiDeps]. Terraform takes whole blocks only, so an entry is never an attribute.
finalinherited
description → TfRef<String>
Reference to description attribute.
no setter
effectiveLabels → TfRef<Map<String, String>>
Reference to effective_labels attribute.
no setter
hashCode → int
The hash code for this object.
no setterinherited
id → TfRef<String>
Reference to id attribute.
no setter
ipCollection → TfRef<String>
Reference to ip_collection attribute.
no setter
ipv6EndpointType → TfRef<String>
Reference to ipv6_endpoint_type attribute.
no setter
ipVersion → TfRef<String>
Reference to ip_version attribute.
no setter
kind → ResourceKind
Always ResourceKind.resource. Overridden by Data.
no setterinherited
labelFingerprint → TfRef<String>
Reference to label_fingerprint attribute.
no setter
labels → TfRef<Map<String, String>>
Reference to labels attribute.
no setter
lifecycle → LifecycleOptions?
Optional lifecycle { ... } block.
finalinherited
localName → String
User-supplied local name within a Stack.
finalinherited
name → TfRef<String>
Reference to name attribute.
no setter
network → TfRef<String>
Reference to network attribute.
no setter
networkTier → TfRef<String>
Reference to network_tier attribute.
no setter
prefixLength → TfRef<num>
Reference to prefix_length attribute.
no setter
project → TfRef<String>
Reference to project attribute.
no setter
provider → StackProvider?
Optional Terraform provider meta-argument: the provider configuration this block uses, e.g. the aliased GoogleProvider(alias: 'eu') the Stack registered with addProvider.
finalinherited
purpose → TfRef<String>
Reference to purpose attribute.
no setter
ref → RefTo<GoogleComputeAddress>
A reference to this resource, for arguments typed RefTo<GoogleComputeAddress>.
no setter
region → TfRef<String>
Reference to region attribute.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
Reference to self_link attribute.
no setter
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 setteroverride
subnetwork → TfRef<String>
Reference to subnetwork attribute.
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
terraformLabels → TfRef<Map<String, String>>
Reference to terraform_labels attribute.
no setter
terraformType → String
Terraform resource type, e.g. google_pubsub_topic.
finalinherited
tfAddress → String
Terraform address <terraformType>.<localName>, e.g. google_pubsub_topic.orders.
no setterinherited
timeouts → TfTimeouts?
Optional timeouts { ... } block: how long Terraform waits for each operation. Provider-neutral like lifecycle — synth copies the duration strings verbatim, and terraform validate decides whether this resource's schema declares the operations set here.
finalinherited
users → TfRef<List<String>>
Reference to users attribute.
no setter

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