pub struct BucketClient<'a>(_);
Expand description

Operations on Buckets.

Implementations

Creates a new Bucket. There are many options that you can provide for creating a new bucket, so the NewBucket resource contains all of them. Note that NewBucket implements Default, so you don’t have to specify the fields you’re not using. And error is returned if that bucket name is already taken.

Example
use cloud_storage::sync::Client;
use cloud_storage::bucket::{Bucket, NewBucket};
use cloud_storage::bucket::{Location, MultiRegion};

let client = Client::new()?;
let new_bucket = NewBucket {
   name: "cloud-storage-rs-doc-1".to_string(), // this is the only mandatory field
   location: Location::Multi(MultiRegion::Eu),
   ..Default::default()
};
let bucket = client.bucket().create(&new_bucket)?;

Returns all Buckets within this project.

Note

When using incorrect permissions, this function fails silently and returns an empty list.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;

let client = Client::new()?;
let buckets = client.bucket().list()?;

Returns a single Bucket by its name. If the Bucket does not exist, an error is returned.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;

let client = Client::new()?;

let bucket = client.bucket().read("cloud-storage-rs-doc-2")?;

Update an existing Bucket. If you declare you bucket as mutable, you can edit its fields. You can then flush your changes to Google Cloud Storage using this method.

Example
use cloud_storage::sync::Client;
use cloud_storage::bucket::{Bucket, RetentionPolicy};

let client = Client::new()?;

let mut bucket = client.bucket().read("cloud-storage-rs-doc-3")?;
bucket.retention_policy = Some(RetentionPolicy {
    retention_period: 50,
    effective_time: chrono::Utc::now() + chrono::Duration::seconds(50),
    is_locked: Some(false),
});
client.bucket().update(&bucket)?;

Delete an existing Bucket. This permanently removes a bucket from Google Cloud Storage. An error is returned when you don’t have sufficient permissions, or when the retention_policy prevents you from deleting your Bucket.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;

let client = Client::new()?;

let bucket = client.bucket().read("unnecessary-bucket")?;
client.bucket().delete(bucket)?;

Returns the IAM Policy for this bucket.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;

let client = Client::new()?;

let bucket = client.bucket().read("cloud-storage-rs-doc-4")?;
let policy = client.bucket().get_iam_policy(&bucket)?;

Updates the IAM Policy for this bucket.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;
use cloud_storage::bucket::{IamPolicy, Binding, IamRole, StandardIamRole, Entity};

let client = Client::new()?;

let bucket = client.bucket().read("cloud-storage-rs-doc-5")?;
let iam_policy = IamPolicy {
    version: 1,
    bindings: vec![
        Binding {
            role: IamRole::Standard(StandardIamRole::ObjectViewer),
            members: vec!["allUsers".to_string()],
            condition: None,
        }
    ],
    ..Default::default()
};
let policy = client.bucket().set_iam_policy(&bucket, &iam_policy)?;

Checks whether the user provided in the service account has this permission.

Example
use cloud_storage::sync::Client;
use cloud_storage::Bucket;

let client = Client::new()?;
let bucket = client.bucket().read("my-bucket")?;
client.bucket().test_iam_permission(&bucket, "storage.buckets.get")?;

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more