#[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
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.service_account: StringOptional. Service account that used to execute workload.
Optional. Tags used for network traffic control.
kms_key: StringOptional. 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: StringOptional. 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
impl ExecutionConfig
pub fn new() -> Self
Sourcepub fn set_service_account<T: Into<String>>(self, v: T) -> Self
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");Sets the value of network_tags.
§Example
let x = ExecutionConfig::new().set_network_tags(["a", "b", "c"]);Sourcepub fn set_kms_key<T: Into<String>>(self, v: T) -> Self
pub fn set_kms_key<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_idle_ttl<T>(self, v: T) -> Self
pub fn set_idle_ttl<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_idle_ttl<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_idle_ttl<T>(self, v: Option<T>) -> Self
Sourcepub fn set_or_clear_ttl<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_ttl<T>(self, v: Option<T>) -> Self
Sourcepub fn set_staging_bucket<T: Into<String>>(self, v: T) -> Self
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");Sourcepub fn set_authentication_config<T>(self, v: T) -> Selfwhere
T: Into<AuthenticationConfig>,
pub fn set_authentication_config<T>(self, v: T) -> Selfwhere
T: Into<AuthenticationConfig>,
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 */);Sourcepub fn set_or_clear_authentication_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<AuthenticationConfig>,
pub fn set_or_clear_authentication_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<AuthenticationConfig>,
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>);Sourcepub fn set_network<T: Into<Option<Network>>>(self, v: T) -> Self
pub fn set_network<T: Into<Option<Network>>>(self, v: T) -> Self
Sourcepub fn network_uri(&self) -> Option<&String>
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.
Sourcepub fn set_network_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_network_uri<T: Into<String>>(self, v: T) -> Self
Sourcepub fn subnetwork_uri(&self) -> Option<&String>
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.
Sourcepub fn set_subnetwork_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_subnetwork_uri<T: Into<String>>(self, v: T) -> Self
Trait Implementations§
Source§impl Clone for ExecutionConfig
impl Clone for ExecutionConfig
Source§fn clone(&self) -> ExecutionConfig
fn clone(&self) -> ExecutionConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more