ExecutionConfig

Struct ExecutionConfig 

Source
#[non_exhaustive]
pub struct ExecutionConfig { pub service_account: String, pub network_tags: Vec<String>, pub kms_key: String, pub idle_ttl: Option<Duration>, pub ttl: Option<Duration>, pub staging_bucket: String, pub authentication_config: Option<AuthenticationConfig>, pub network: Option<Network>, /* private fields */ }
Expand description

Execution configuration for a workload.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§service_account: String

Optional. Service account that used to execute workload.

§network_tags: Vec<String>

Optional. Tags used for network traffic control.

§kms_key: String

Optional. The Cloud KMS key to use for encryption.

§idle_ttl: Option<Duration>

Optional. Applies to sessions only. The duration to keep the session alive while it’s idling. Exceeding this threshold causes the session to terminate. This field cannot be set on a batch workload. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration). Defaults to 1 hour if not set. If both ttl and idle_ttl are specified for an interactive session, the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.

§ttl: Option<Duration>

Optional. The duration after which the workload will be terminated, specified as the JSON representation for Duration. When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or run forever without exiting). If ttl is not specified for an interactive session, it defaults to 24 hours. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4 hours. Minimum value is 10 minutes; maximum value is 14 days. If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.

§staging_bucket: String

Optional. A Cloud Storage bucket used to stage workload dependencies, config files, and store workload output and other ephemeral data, such as Spark history files. If you do not specify a staging bucket, Cloud Dataproc will determine a Cloud Storage location according to the region where your workload is running, and then create and manage project-level, per-location staging and temporary buckets. This field requires a Cloud Storage bucket name, not a gs://... URI to a Cloud Storage bucket.

§authentication_config: Option<AuthenticationConfig>

Optional. Authentication configuration used to set the default identity for the workload execution. The config specifies the type of identity (service account or user) that will be used by workloads to access resources on the project(s).

§network: Option<Network>

Network configuration for workload execution.

Implementations§

Source§

impl ExecutionConfig

Source

pub fn new() -> Self

Source

pub fn set_service_account<T: Into<String>>(self, v: T) -> Self

Sets the value of service_account.

§Example
let x = ExecutionConfig::new().set_service_account("example");
Source

pub fn set_network_tags<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of network_tags.

§Example
let x = ExecutionConfig::new().set_network_tags(["a", "b", "c"]);
Source

pub fn set_kms_key<T: Into<String>>(self, v: T) -> Self

Sets the value of kms_key.

§Example
let x = ExecutionConfig::new().set_kms_key("example");
Source

pub fn set_idle_ttl<T>(self, v: T) -> Self
where T: Into<Duration>,

Sets the value of idle_ttl.

§Example
use wkt::Duration;
let x = ExecutionConfig::new().set_idle_ttl(Duration::default()/* use setters */);
Source

pub fn set_or_clear_idle_ttl<T>(self, v: Option<T>) -> Self
where T: Into<Duration>,

Sets or clears the value of idle_ttl.

§Example
use wkt::Duration;
let x = ExecutionConfig::new().set_or_clear_idle_ttl(Some(Duration::default()/* use setters */));
let x = ExecutionConfig::new().set_or_clear_idle_ttl(None::<Duration>);
Source

pub fn set_ttl<T>(self, v: T) -> Self
where T: Into<Duration>,

Sets the value of ttl.

§Example
use wkt::Duration;
let x = ExecutionConfig::new().set_ttl(Duration::default()/* use setters */);
Source

pub fn set_or_clear_ttl<T>(self, v: Option<T>) -> Self
where T: Into<Duration>,

Sets or clears the value of ttl.

§Example
use wkt::Duration;
let x = ExecutionConfig::new().set_or_clear_ttl(Some(Duration::default()/* use setters */));
let x = ExecutionConfig::new().set_or_clear_ttl(None::<Duration>);
Source

pub fn set_staging_bucket<T: Into<String>>(self, v: T) -> Self

Sets the value of staging_bucket.

§Example
let x = ExecutionConfig::new().set_staging_bucket("example");
Source

pub fn set_authentication_config<T>(self, v: T) -> Self

Sets the value of authentication_config.

§Example
use google_cloud_dataproc_v1::model::AuthenticationConfig;
let x = ExecutionConfig::new().set_authentication_config(AuthenticationConfig::default()/* use setters */);
Source

pub fn set_or_clear_authentication_config<T>(self, v: Option<T>) -> Self

Sets or clears the value of authentication_config.

§Example
use google_cloud_dataproc_v1::model::AuthenticationConfig;
let x = ExecutionConfig::new().set_or_clear_authentication_config(Some(AuthenticationConfig::default()/* use setters */));
let x = ExecutionConfig::new().set_or_clear_authentication_config(None::<AuthenticationConfig>);
Source

pub fn set_network<T: Into<Option<Network>>>(self, v: T) -> Self

Sets the value of network.

Note that all the setters affecting network are mutually exclusive.

§Example
use google_cloud_dataproc_v1::model::execution_config::Network;
let x = ExecutionConfig::new().set_network(Some(Network::NetworkUri("example".to_string())));
Source

pub fn network_uri(&self) -> Option<&String>

The value of network if it holds a NetworkUri, None if the field is not set or holds a different branch.

Source

pub fn set_network_uri<T: Into<String>>(self, v: T) -> Self

Sets the value of network to hold a NetworkUri.

Note that all the setters affecting network are mutually exclusive.

§Example
let x = ExecutionConfig::new().set_network_uri("example");
assert!(x.network_uri().is_some());
assert!(x.subnetwork_uri().is_none());
Source

pub fn subnetwork_uri(&self) -> Option<&String>

The value of network if it holds a SubnetworkUri, None if the field is not set or holds a different branch.

Source

pub fn set_subnetwork_uri<T: Into<String>>(self, v: T) -> Self

Sets the value of network to hold a SubnetworkUri.

Note that all the setters affecting network are mutually exclusive.

§Example
let x = ExecutionConfig::new().set_subnetwork_uri("example");
assert!(x.subnetwork_uri().is_some());
assert!(x.network_uri().is_none());

Trait Implementations§

Source§

impl Clone for ExecutionConfig

Source§

fn clone(&self) -> ExecutionConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for ExecutionConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ExecutionConfig

Source§

fn default() -> ExecutionConfig

Returns the “default value” for a type. Read more
Source§

impl Message for ExecutionConfig

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for ExecutionConfig

Source§

fn eq(&self, other: &ExecutionConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ExecutionConfig

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, dest: *mut u8)

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

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,