GoogleComputeReservation class final
Factory wrapper for google_compute_reservation.
Represents a reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running.
Reservations apply only to Compute Engine, Cloud Dataproc, and Google
Kubernetes Engine VM usage.Reservations do not apply to f1-micro or
g1-small machine types, preemptible VMs, sole tenant nodes, or other
services not listed above like Cloud SQL and Dataflow.
Compute Engine reservation — reserved zonal VM / GPU capacity that bills at on-demand rates while the reservation exists, whether or not matching VMs consume it.
Cost / apply: gcp-cost: Compute Engine 6F81-5844-456A N4A Custom
Instance Core Iowa SKU F179-06F3-16EC $0.027783/h (on-demand;
Flexible CUD 1y/3y lower); 1/8 vGPU no-LSSD Iowa SKU D5C5-C5F4-086C
$0.64688/h. billing-behavior: reserved specific_reservation
capacity accrues those SKUs for the reservation lifetime (GPU shapes
are especially costly); destroy stops the charge. Never wire into
apply-smoke.
specificReservation is required. Prefer deleteAtTime /
deleteAfterDuration when experimenting outside CI.
Constructors
-
GoogleComputeReservation(String localName, {required TfArg<
String> name, required TfArg<String> zone, required ComputeReservationSpecificReservation specificReservation, TfArg<String> ? description, TfArg<bool> ? specificReservationRequired, ComputeReservationSharingPolicy? reservationSharingPolicy, ComputeReservationParams? params, TfArg<String> ? deleteAtTime, ComputeReservationDeleteAfterDuration? deleteAfterDuration, TfArg<String> ? deletionPolicy, TfArg<String> ? project, LifecycleOptions? lifecycle, List<TfAddressed> ? dependsOn, StackProvider? provider, TfTimeouts? timeouts})
Properties
-
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
-
blockNames
→ TfRef<
List< String> > -
Reference to
block_namesattribute.no setter -
commitment
→ TfRef<
String> -
Reference to
commitmentattribute.no setter -
creationTimestamp
→ TfRef<
String> -
Reference to
creation_timestampattribute.no setter - defaultProvider → String
-
The provider name a block without provider uses: by default the
prefix of terraformType (
googleforgoogle_pubsub_topic).no setterinherited -
deleteAtTime
→ TfRef<
String> -
Reference to
delete_at_timeattribute.no setter -
deletionPolicy
→ TfRef<
String> -
Reference to
deletion_policyattribute.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
descriptionattribute.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
-
id
→ TfRef<
String> -
Reference to
idattribute.no setter - kind → ResourceKind
-
Always
ResourceKind.resource. Overridden byData.no setterinherited -
kindAttr
→ TfRef<
String> -
Reference to
kindattribute.no setter - lifecycle → LifecycleOptions?
-
Optional
lifecycle { ... }block.finalinherited -
linkedCommitments
→ TfRef<
List< String> > -
Reference to
linked_commitmentsattribute.no setter - localName → String
-
User-supplied local name within a Stack.
finalinherited
-
name
→ TfRef<
String> -
Reference to
nameattribute.no setter -
project
→ TfRef<
String> -
Reference to
projectattribute.no setter - provider → StackProvider?
-
Optional Terraform
providermeta-argument: the provider configuration this block uses, e.g. the aliasedGoogleProvider(alias: 'eu')the Stack registered withaddProvider.finalinherited -
ref
→ RefTo<
GoogleComputeReservation> -
A reference to this resource, for arguments typed
RefTo<GoogleComputeReservation>.no setter -
resourceStatus
→ TfRef<
List< Map< >String, Object?> > -
Reference to
resource_statusattribute.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
satisfiesPzs
→ TfRef<
bool> -
Reference to
satisfies_pzsattribute.no setter -
selfLink
→ TfRef<
String> -
Reference to
self_linkattribute.no setter -
sensitiveFields
→ Set<
String> -
Field names that are
@Sensitiveper the IR-derived per-resource constant. Curated factories override with a baked-instatic const Set<String>(file-private in v0.5+).no setteroverride -
specificReservationRequired
→ TfRef<
bool> -
Reference to
specific_reservation_requiredattribute.no setter -
status
→ TfRef<
String> -
Reference to
statusattribute.no setter - supportsDeletionProtection → bool
-
Capability flag: true when this resource's underlying Terraform
schema has a
deletion_protectionboolean attribute that the synth-time devMode flow can flip tofalse. Defaults to false; the codegen emitter overrides this totruefor wrappers whose schema includes the attribute.no setterinherited - 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, andterraform validatedecides whether this resource's schema declares the operations set here.finalinherited -
zone
→ TfRef<
String> -
Reference to
zoneattribute.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