BucketArgs class

The set of arguments for Bucket. The set of arguments for Bucket.

Constructors

BucketArgs({Input<BucketAutoclass?>? autoclass, Input<List<BucketCor>?>? cors, Input<BucketCustomPlacementConfig?>? customPlacementConfig, Input<bool?>? defaultEventBasedHold, Input<String?>? deletionPolicy, Input<bool?>? enableObjectRetention, Input<BucketEncryption?>? encryption, Input<bool?>? forceDestroy, Input<BucketHierarchicalNamespace?>? hierarchicalNamespace, Input<BucketIpFilter?>? ipFilter, Input<Map<String, String>?>? labels, Input<List<BucketLifecycleRule>?>? lifecycleRules, required Input<String> location, Input<BucketLogging?>? logging, Input<String?>? name, Input<String?>? project, Input<String?>? publicAccessPrevention, Input<bool?>? requesterPays, Input<BucketRetentionPolicy?>? retentionPolicy, Input<String?>? rpo, Input<BucketSoftDeletePolicy?>? softDeletePolicy, Input<String?>? storageClass, Input<bool?>? uniformBucketLevelAccess, Input<BucketVersioning?>? versioning, Input<BucketWebsite?>? website})
Creates a new BucketArgs. autoclass The bucket's Autoclass configuration. Structure is documented below. cors The bucket's Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below. customPlacementConfig The bucket's custom location configuration, which specifies the individual regions that comprise a dual-region bucket. If the bucket is designated a single or multi-region, the parameters are empty. Structure is documented below. defaultEventBasedHold Whether or not to automatically apply an eventBasedHold to new objects added to the bucket. deletionPolicy Whether Terraform will be prevented from destroying the resource. Defaults to "DELETE". enableObjectRetention Enables object retention on a storage bucket. encryption The bucket's encryption configuration. Structure is documented below. forceDestroy When true, before deleting a bucket, delete all objects within the bucket, or Anywhere Caches caching data for that bucket. Otherwise, buckets with objects/caches will fail. Anywhere Cache requires additional permissions to interact with and will be assumed not present when the provider is not permissioned, attempting to delete the bucket anyways. This may result in the objects in the bucket getting destroyed but not the bucket itself if there is a cache in use with the bucket. Force deletion may take a long time to delete buckets with lots of objects or with any Anywhere Caches (80m+). hierarchicalNamespace The bucket's hierarchical namespace policy, which defines the bucket capability to handle folders in logical structure. Structure is documented below. To use this configuration, uniformBucketLevelAccess must be enabled on bucket. ipFilter The bucket IP filtering configuration. Specifies the network sources that can access the bucket, as well as its underlying objects. Structure is documented below. labels A map of key/value label pairs to assign to the bucket. lifecycleRules The bucket's Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below. location The GCS location. logging The bucket's Access & Storage Logs configuration. Structure is documented below. name The name of the bucket. Bucket names must be in lowercase and no more than 63 characters long. You can find the complete list of bucket naming rules here. project The ID of the project in which the resource belongs. If it publicAccessPrevention Prevents public access to a bucket. Acceptable values are "inherited" or "enforced". If "inherited", the bucket uses public access prevention only if the bucket is subject to the public access prevention organization policy constraint. Defaults to "inherited". requesterPays Enables Requester Pays on a storage bucket. retentionPolicy Configuration of the bucket's data retention policy for how long objects in the bucket should be retained. Structure is documented below. rpo The recovery point objective for cross-region replication of the bucket. Applicable only for dual and multi-region buckets. "DEFAULT" sets default replication. "ASYNC_TURBO" value enables turbo replication, valid for dual-region buckets only. See Turbo Replication for more information. If rpo is not specified at bucket creation, it defaults to "DEFAULT" for dual and multi-region buckets. NOTE If used with single-region bucket, It will throw an error. softDeletePolicy The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted. If the block is not provided, Server side value will be kept which means removal of block won't generate any terraform change. Structure is documented below. storageClass The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE. uniformBucketLevelAccess Enables Uniform bucket-level access access to a bucket. versioning The bucket's Versioning configuration. Structure is documented below. website Configuration if the bucket acts as a website. Structure is documented below.
const
BucketArgs.fromMap(Map<String, dynamic> map)
factory

Properties

autoclass → Input<BucketAutoclass?>?
The bucket's Autoclass configuration. Structure is documented below.
final
cors → Input<List<BucketCor>?>?
The bucket's Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below.
final
customPlacementConfig → Input<BucketCustomPlacementConfig?>?
The bucket's custom location configuration, which specifies the individual regions that comprise a dual-region bucket. If the bucket is designated a single or multi-region, the parameters are empty. Structure is documented below.
final
defaultEventBasedHold → Input<bool?>?
Whether or not to automatically apply an eventBasedHold to new objects added to the bucket.
final
deletionPolicy → Input<String?>?
Whether Terraform will be prevented from destroying the resource. Defaults to "DELETE". When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
final
enableObjectRetention → Input<bool?>?
Enables object retention on a storage bucket.
final
encryption → Input<BucketEncryption?>?
The bucket's encryption configuration. Structure is documented below.
final
forceDestroy → Input<bool?>?
When true, before deleting a bucket, delete all objects within the bucket, or Anywhere Caches caching data for that bucket. Otherwise, buckets with objects/caches will fail. Anywhere Cache requires additional permissions to interact with and will be assumed not present when the provider is not permissioned, attempting to delete the bucket anyways. This may result in the objects in the bucket getting destroyed but not the bucket itself if there is a cache in use with the bucket. Force deletion may take a long time to delete buckets with lots of objects or with any Anywhere Caches (80m+).
final
hashCode → int
The hash code for this object.
no setterinherited
hierarchicalNamespace → Input<BucketHierarchicalNamespace?>?
The bucket's hierarchical namespace policy, which defines the bucket capability to handle folders in logical structure. Structure is documented below. To use this configuration, uniformBucketLevelAccess must be enabled on bucket.
final
ipFilter → Input<BucketIpFilter?>?
The bucket IP filtering configuration. Specifies the network sources that can access the bucket, as well as its underlying objects. Structure is documented below.
final
labels → Input<Map<String, String>?>?
A map of key/value label pairs to assign to the bucket.
final
lifecycleRules → Input<List<BucketLifecycleRule>?>?
The bucket's Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below.
final
location → Input<String>
The GCS location.
final
logging → Input<BucketLogging?>?
The bucket's Access & Storage Logs configuration. Structure is documented below.
final
name → Input<String?>?
The name of the bucket. Bucket names must be in lowercase and no more than 63 characters long. You can find the complete list of bucket naming rules here.
final
project → Input<String?>?
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
final
publicAccessPrevention → Input<String?>?
Prevents public access to a bucket. Acceptable values are "inherited" or "enforced". If "inherited", the bucket uses public access prevention only if the bucket is subject to the public access prevention organization policy constraint. Defaults to "inherited".
final
requesterPays → Input<bool?>?
Enables Requester Pays on a storage bucket.
final
retentionPolicy → Input<BucketRetentionPolicy?>?
Configuration of the bucket's data retention policy for how long objects in the bucket should be retained. Structure is documented below.
final
rpo → Input<String?>?
The recovery point objective for cross-region replication of the bucket. Applicable only for dual and multi-region buckets. "DEFAULT" sets default replication. "ASYNC_TURBO" value enables turbo replication, valid for dual-region buckets only. See Turbo Replication for more information. If rpo is not specified at bucket creation, it defaults to "DEFAULT" for dual and multi-region buckets. NOTE If used with single-region bucket, It will throw an error.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
softDeletePolicy → Input<BucketSoftDeletePolicy?>?
The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted. If the block is not provided, Server side value will be kept which means removal of block won't generate any terraform change. Structure is documented below.
final
storageClass → Input<String?>?
The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.
final
uniformBucketLevelAccess → Input<bool?>?
Enables Uniform bucket-level access access to a bucket.
final
versioning → Input<BucketVersioning?>?
The bucket's Versioning configuration. Structure is documented below.
final
website → Input<BucketWebsite?>?
Configuration if the bucket acts as a website. Structure is documented below.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toMap() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited