pulumi_wasm_providers_gcp_mini::storage::bucket

Struct BucketArgs

source
pub struct BucketArgs {
Show 23 fields pub autoclass: Output<Option<BucketAutoclass>>, pub cors: Output<Option<Vec<BucketCor>>>, pub custom_placement_config: Output<Option<BucketCustomPlacementConfig>>, pub default_event_based_hold: Output<Option<bool>>, pub enable_object_retention: Output<Option<bool>>, pub encryption: Output<Option<BucketEncryption>>, pub force_destroy: Output<Option<bool>>, pub hierarchical_namespace: Output<Option<BucketHierarchicalNamespace>>, pub labels: Output<Option<HashMap<String, String>>>, pub lifecycle_rules: Output<Option<Vec<BucketLifecycleRule>>>, pub location: Output<String>, pub logging: Output<Option<BucketLogging>>, pub name: Output<Option<String>>, pub project: Output<Option<String>>, pub public_access_prevention: Output<Option<String>>, pub requester_pays: Output<Option<bool>>, pub retention_policy: Output<Option<BucketRetentionPolicy>>, pub rpo: Output<Option<String>>, pub soft_delete_policy: Output<Option<BucketSoftDeletePolicy>>, pub storage_class: Output<Option<String>>, pub uniform_bucket_level_access: Output<Option<bool>>, pub versioning: Output<Option<BucketVersioning>>, pub website: Output<Option<BucketWebsite>>,
}

Fields§

§autoclass: Output<Option<BucketAutoclass>>

The bucket’s Autoclass configuration. Structure is documented below.

§cors: Output<Option<Vec<BucketCor>>>

The bucket’s Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below.

§custom_placement_config: Output<Option<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.

§default_event_based_hold: Output<Option<bool>>

Whether or not to automatically apply an eventBasedHold to new objects added to the bucket.

§enable_object_retention: Output<Option<bool>>

Enables object retention on a storage bucket.

§encryption: Output<Option<BucketEncryption>>

The bucket’s encryption configuration. Structure is documented below.

§force_destroy: Output<Option<bool>>

When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, the provider will fail that run.

§hierarchical_namespace: Output<Option<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, uniform_bucket_level_access must be enabled on bucket.

§labels: Output<Option<HashMap<String, String>>>

A map of key/value label pairs to assign to the bucket.

§lifecycle_rules: Output<Option<Vec<BucketLifecycleRule>>>

The bucket’s Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below.

§location: Output<String>§logging: Output<Option<BucketLogging>>

The bucket’s Access & Storage Logs configuration. Structure is documented below.

§name: Output<Option<String>>

The name of the bucket.

§project: Output<Option<String>>

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

§public_access_prevention: Output<Option<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”.

§requester_pays: Output<Option<bool>>

Enables Requester Pays on a storage bucket.

§retention_policy: Output<Option<BucketRetentionPolicy>>

Configuration of the bucket’s data retention policy for how long objects in the bucket should be retained. Structure is documented below.

§rpo: Output<Option<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.

§soft_delete_policy: Output<Option<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 it is not provided, by default Google Cloud Storage sets this to default soft delete policy

§storage_class: Output<Option<String>>

The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.

§uniform_bucket_level_access: Output<Option<bool>>

Enables Uniform bucket-level access access to a bucket.

§versioning: Output<Option<BucketVersioning>>

The bucket’s Versioning configuration. Structure is documented below.

§website: Output<Option<BucketWebsite>>

Configuration if the bucket acts as a website. Structure is documented below.

Implementations§

source§

impl BucketArgs

source

pub fn builder() -> BucketArgsBuilder

Create an instance of BucketArgs using the builder syntax

Trait Implementations§

source§

impl Clone for BucketArgs

source§

fn clone(&self) -> BucketArgs

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.