GoogleComputeImage class final

Factory wrapper for google_compute_image.

Represents an Image resource.

Google Compute Engine uses operating system images to create the root persistent disks for your instances. You specify an image when you create an instance. Images contain a boot loader, an operating system, and a root file system. Linux operating system images are also capable of running containers on Compute Engine.

Images can be either public or custom.

Public images are provided and maintained by Google, open-source communities, and third-party vendors. By default, all projects have access to these images and can use them to create instances. Custom images are available only to your project. You can create a custom image from root persistent disks and other images. Then, use the custom image to create an instance.

An Image must have exactly one ComputeImageSource: ComputeImageSourceDisk, ComputeImageSourceImage, ComputeImageSourceSnapshot, or ComputeImageSourceRawDisk (a tarball imported from Cloud Storage).

Prefer ComputeImageSourceSnapshot when promoting a PD Snapshot into a reusable image; use ComputeImageSourceDisk for a live disk.

Inheritance

Constructors

GoogleComputeImage(String localName, {required TfArg<String> name, required ComputeImageSource source, TfArg<String>? description, TfArg<String>? family, TfArg<Map<String, String>>? labels, TfArg<List<String>>? licenses, TfArg<List<String>>? storageLocations, TfArg<num>? diskSizeGb, TfArg<String>? deletionPolicy, List<ComputeImageGuestOsFeatures>? guestOsFeatures, ComputeImageParams? params, ComputeImageShieldedInstanceInitialState? shieldedInstanceInitialState, TfArg<String>? project, ComputeImageEncryptionKey? imageEncryptionKey, ComputeImageSourceDiskEncryptionKey? sourceDiskEncryptionKey, ComputeImageSourceImageEncryptionKey? sourceImageEncryptionKey, ComputeImageSourceSnapshotEncryptionKey? sourceSnapshotEncryptionKey, LifecycleOptions? lifecycle, List<TfAddressed>? dependsOn, StackProvider? provider, TfTimeouts? timeouts})

Properties

archiveSizeBytes → TfRef<num>
Reference to archive_size_bytes 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
diskSizeGb → TfRef<num>
Reference to disk_size_gb attribute.
no setter
effectiveLabels → TfRef<Map<String, String>>
Reference to effective_labels attribute.
no setter
family → TfRef<String>
Reference to family attribute.
no setter
hashCode → int
The hash code for this object.
no setterinherited
id → TfRef<String>
Reference to id 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
licenses → TfRef<List<String>>
Reference to licenses 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
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
ref → RefTo<GoogleComputeImage>
A reference to this resource, for arguments typed RefTo<GoogleComputeImage>.
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
sourceDisk → TfRef<String>
Reference to source_disk attribute.
no setter
sourceImage → TfRef<String>
Reference to source_image attribute.
no setter
sourceSnapshot → TfRef<String>
Reference to source_snapshot attribute.
no setter
storageLocations → TfRef<List<String>>
Reference to storage_locations 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

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