Struct object_store::gcp::GoogleCloudStorageBuilder
source · pub struct GoogleCloudStorageBuilder { /* private fields */ }
Expand description
Configure a connection to Google Cloud Storage using the specified credentials.
Example
let gcs = GoogleCloudStorageBuilder::new()
.with_service_account_path(SERVICE_ACCOUNT_PATH)
.with_bucket_name(BUCKET_NAME)
.build();
Implementations§
source§impl GoogleCloudStorageBuilder
impl GoogleCloudStorageBuilder
sourcepub fn new() -> Self
pub fn new() -> Self
Create a new GoogleCloudStorageBuilder
with default values.
sourcepub fn from_env() -> Self
pub fn from_env() -> Self
Create an instance of GoogleCloudStorageBuilder
with values pre-populated from environment variables.
Variables extracted from environment:
- GOOGLE_SERVICE_ACCOUNT: location of service account file
- GOOGLE_SERVICE_ACCOUNT_PATH: (alias) location of service account file
- SERVICE_ACCOUNT: (alias) location of service account file
- GOOGLE_SERVICE_ACCOUNT_KEY: JSON serialized service account key
- GOOGLE_BUCKET: bucket name
- GOOGLE_BUCKET_NAME: (alias) bucket name
Example
use object_store::gcp::GoogleCloudStorageBuilder;
let gcs = GoogleCloudStorageBuilder::from_env()
.with_bucket_name("foo")
.build();
sourcepub fn with_url(self, url: impl Into<String>) -> Self
pub fn with_url(self, url: impl Into<String>) -> Self
Parse available connection info form a well-known storage URL.
The supported url schemes are:
gs://<bucket>/<path>
Note: Settings derived from the URL will override any others set on this builder
Example
use object_store::gcp::GoogleCloudStorageBuilder;
let gcs = GoogleCloudStorageBuilder::from_env()
.with_url("gs://bucket/path")
.build();
sourcepub fn try_with_option(
self,
key: impl AsRef<str>,
value: impl Into<String>
) -> Result<Self>
pub fn try_with_option(
self,
key: impl AsRef<str>,
value: impl Into<String>
) -> Result<Self>
Set an option on the builder via a key - value pair.
sourcepub fn try_with_options<I: IntoIterator<Item = (impl AsRef<str>, impl Into<String>)>>(
self,
options: I
) -> Result<Self>
pub fn try_with_options<I: IntoIterator<Item = (impl AsRef<str>, impl Into<String>)>>(
self,
options: I
) -> Result<Self>
Hydrate builder from key value pairs
sourcepub fn with_bucket_name(self, bucket_name: impl Into<String>) -> Self
pub fn with_bucket_name(self, bucket_name: impl Into<String>) -> Self
Set the bucket name (required)
sourcepub fn with_service_account_path(
self,
service_account_path: impl Into<String>
) -> Self
pub fn with_service_account_path(
self,
service_account_path: impl Into<String>
) -> Self
Set the path to the service account file.
This or GoogleCloudStorageBuilder::with_service_account_key
must be
set.
Example "/tmp/gcs.json"
.
Example contents of gcs.json
:
{
"gcs_base_url": "https://localhost:4443",
"disable_oauth": true,
"client_email": "",
"private_key": ""
}
sourcepub fn with_service_account_key(self, service_account: impl Into<String>) -> Self
pub fn with_service_account_key(self, service_account: impl Into<String>) -> Self
Set the service account key. The service account must be in the JSON format.
This or GoogleCloudStorageBuilder::with_service_account_path
must be
set.
sourcepub fn with_application_credentials(
self,
application_credentials_path: impl Into<String>
) -> Self
pub fn with_application_credentials(
self,
application_credentials_path: impl Into<String>
) -> Self
Set the path to the application credentials file.
https://cloud.google.com/docs/authentication/provide-credentials-adc
sourcepub fn with_retry(self, retry_config: RetryConfig) -> Self
pub fn with_retry(self, retry_config: RetryConfig) -> Self
Set the retry configuration
sourcepub fn with_proxy_url(self, proxy_url: impl Into<String>) -> Self
pub fn with_proxy_url(self, proxy_url: impl Into<String>) -> Self
Set the proxy_url to be used by the underlying client
sourcepub fn with_client_options(self, options: ClientOptions) -> Self
pub fn with_client_options(self, options: ClientOptions) -> Self
Sets the client options, overriding any already set
sourcepub fn build(self) -> Result<GoogleCloudStorage>
pub fn build(self) -> Result<GoogleCloudStorage>
Configure a connection to Google Cloud Storage, returning a
new GoogleCloudStorage
and consuming self
Trait Implementations§
source§impl Clone for GoogleCloudStorageBuilder
impl Clone for GoogleCloudStorageBuilder
source§fn clone(&self) -> GoogleCloudStorageBuilder
fn clone(&self) -> GoogleCloudStorageBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more