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.
Constructors
-
GoogleComputeImage(String localName, {required TfArg<
String> name, required ComputeImageSource source, TfArg<String> ? description, TfArg<String> ? family, TfArg<Map< ? labels, TfArg<String, String> >List< ? licenses, TfArg<String> >List< ? storageLocations, TfArg<String> >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_bytesattribute.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_timestampattribute.no setter - defaultProvider → String
-
The provider name a block without provider uses: by default the
prefix of terraformType (
googleforgoogle_pubsub_topic).no setterinherited -
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 -
diskSizeGb
→ TfRef<
num> -
Reference to
disk_size_gbattribute.no setter -
effectiveLabels
→ TfRef<
Map< String, String> > -
Reference to
effective_labelsattribute.no setter -
family
→ TfRef<
String> -
Reference to
familyattribute.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 -
labelFingerprint
→ TfRef<
String> -
Reference to
label_fingerprintattribute.no setter -
labels
→ TfRef<
Map< String, String> > -
Reference to
labelsattribute.no setter -
licenses
→ TfRef<
List< String> > -
Reference to
licensesattribute.no setter - lifecycle → LifecycleOptions?
-
Optional
lifecycle { ... }block.finalinherited - 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<
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
-
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 -
sourceDisk
→ TfRef<
String> -
Reference to
source_diskattribute.no setter -
sourceImage
→ TfRef<
String> -
Reference to
source_imageattribute.no setter -
sourceSnapshot
→ TfRef<
String> -
Reference to
source_snapshotattribute.no setter -
storageLocations
→ TfRef<
List< String> > -
Reference to
storage_locationsattribute.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 -
terraformLabels
→ TfRef<
Map< String, String> > -
Reference to
terraform_labelsattribute.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, andterraform validatedecides 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