GoogleStorageBucket class final

Factory wrapper for google_storage_bucket.

The Buckets resource represents a bucket in Google Cloud Storage. There is a single global namespace shared by all buckets. For more information, see Bucket Name Requirements.

Buckets contain objects which can be accessed by their own methods. In addition to the acl property, buckets contain bucketAccessControls, for use in fine-grained manipulation of an existing bucket's access controls.

A bucket is always owned by the project team owners group.

Example:

final assets = GoogleStorageBucket(
  'assets',
  name: TfArg.literal('my-app-assets-prod'),
  location: TfArg.literal('ASIA-NORTHEAST1'),
  storageClass: BucketStorageClass.standard,
  forceDestroy: TfArg.literal(false),
  versioning: StorageBucketVersioning(enabled: TfArg.literal(true)),
  uniformBucketLevelAccess: TfArg.literal(true),
);
Inheritance

Constructors

GoogleStorageBucket(String localName, {required TfArg<String> name, required TfArg<String> location, BucketStorageClass? storageClass, TfArg<bool>? forceDestroy, TfArg<String>? publicAccessPrevention, TfArg<bool>? uniformBucketLevelAccess, TfArg<bool>? defaultEventBasedHold, TfArg<bool>? enableObjectRetention, TfArg<bool>? requesterPays, TfArg<String>? rpo, TfArg<Map<String, String>>? labels, StorageBucketVersioning? versioning, List<StorageBucketCors>? cors, List<StorageBucketLifecycleRule>? lifecycleRule, StorageBucketEncryption? encryption, StorageBucketRetentionPolicy? retentionPolicy, StorageBucketLogging? logging, StorageBucketWebsite? website, StorageBucketAutoclass? autoclass, StorageBucketCustomPlacementConfig? customPlacementConfig, StorageBucketHierarchicalNamespace? hierarchicalNamespace, StorageBucketIpFilter? ipFilter, StorageBucketSoftDeletePolicy? softDeletePolicy, 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
defaultEventBasedHold → TfRef<bool>
Reference to default_event_based_hold 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
effectiveLabels → TfRef<Map<String, String>>
Reference to effective_labels attribute.
no setter
enableObjectRetention → TfRef<bool>
Reference to enable_object_retention attribute.
no setter
forceDestroy → TfRef<bool>
Reference to force_destroy 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
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
location → TfRef<String>
Reference to location attribute.
no setter
name → TfRef<String>
Reference to name attribute.
no setter
project → TfRef<String>
Reference to project attribute.
no setter
projectNumber → TfRef<num>
Reference to project_number 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
publicAccessPrevention → TfRef<String>
Reference to public_access_prevention attribute.
no setter
ref → RefTo<GoogleStorageBucket>
A reference to this resource, for arguments typed RefTo<GoogleStorageBucket>.
no setter
requesterPays → TfRef<bool>
Reference to requester_pays attribute.
no setter
rpo → TfRef<String>
Reference to rpo 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
storageClass → TfRef<String>
Reference to storage_class 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
timeCreated → TfRef<String>
Reference to time_created attribute.
no setter
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
uniformBucketLevelAccess → TfRef<bool>
Reference to uniform_bucket_level_access attribute.
no setter
updated → TfRef<String>
Reference to updated attribute.
no setter
url → TfRef<String>
Reference to url 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