#[non_exhaustive]
pub struct JobFlowDetail {
Show 15 fields pub job_flow_id: Option<String>, pub name: Option<String>, pub log_uri: Option<String>, pub log_encryption_kms_key_id: Option<String>, pub ami_version: Option<String>, pub execution_status_detail: Option<JobFlowExecutionStatusDetail>, pub instances: Option<JobFlowInstancesDetail>, pub steps: Option<Vec<StepDetail>>, pub bootstrap_actions: Option<Vec<BootstrapActionDetail>>, pub supported_products: Option<Vec<String>>, pub visible_to_all_users: Option<bool>, pub job_flow_role: Option<String>, pub service_role: Option<String>, pub auto_scaling_role: Option<String>, pub scale_down_behavior: Option<ScaleDownBehavior>,
}
Expand description

A description of a cluster (job flow).

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.
§job_flow_id: Option<String>

The job flow identifier.

§name: Option<String>

The name of the job flow.

§log_uri: Option<String>

The location in Amazon S3 where log files for the job are stored.

§log_encryption_kms_key_id: Option<String>

The KMS key used for encrypting log files. This attribute is only available with Amazon EMR 5.30.0 and later, excluding 6.0.0.

§ami_version: Option<String>

Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID.

§execution_status_detail: Option<JobFlowExecutionStatusDetail>

Describes the execution status of the job flow.

§instances: Option<JobFlowInstancesDetail>

Describes the Amazon EC2 instances of the job flow.

§steps: Option<Vec<StepDetail>>

A list of steps run by the job flow.

§bootstrap_actions: Option<Vec<BootstrapActionDetail>>

A list of the bootstrap actions run by the job flow.

§supported_products: Option<Vec<String>>

A list of strings set by third-party software when the job flow is launched. If you are not using third-party software to manage the job flow, this value is empty.

§visible_to_all_users: Option<bool>

Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true, IAM principals in the Amazon Web Services account can perform Amazon EMR cluster actions that their IAM policies allow. When false, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform Amazon EMR actions, regardless of IAM permissions policies attached to other IAM principals.

The default value is true if a value is not provided when creating a cluster using the Amazon EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console.

§job_flow_role: Option<String>

The IAM role that was specified when the job flow was launched. The Amazon EC2 instances of the job flow assume this role.

§service_role: Option<String>

The IAM role that is assumed by the Amazon EMR service to access Amazon Web Services resources on your behalf.

§auto_scaling_role: Option<String>

An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. The IAM role provides a way for the automatic scaling feature to get the required permissions it needs to launch and terminate Amazon EC2 instances in an instance group.

§scale_down_behavior: Option<ScaleDownBehavior>

The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR indicates that Amazon EMR terminates nodes at the instance-hour boundary, regardless of when the request to terminate the instance was submitted. This option is only available with Amazon EMR 5.1.0 and later and is the default for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates that Amazon EMR adds nodes to a deny list and drains tasks from nodes before terminating the Amazon EC2 instances, regardless of the instance-hour boundary. With either behavior, Amazon EMR removes the least active nodes first and blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION available only in Amazon EMR releases 4.1.0 and later, and is the default for releases of Amazon EMR earlier than 5.1.0.

Implementations§

source§

impl JobFlowDetail

source

pub fn job_flow_id(&self) -> Option<&str>

The job flow identifier.

source

pub fn name(&self) -> Option<&str>

The name of the job flow.

source

pub fn log_uri(&self) -> Option<&str>

The location in Amazon S3 where log files for the job are stored.

source

pub fn log_encryption_kms_key_id(&self) -> Option<&str>

The KMS key used for encrypting log files. This attribute is only available with Amazon EMR 5.30.0 and later, excluding 6.0.0.

source

pub fn ami_version(&self) -> Option<&str>

Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID.

source

pub fn execution_status_detail(&self) -> Option<&JobFlowExecutionStatusDetail>

Describes the execution status of the job flow.

source

pub fn instances(&self) -> Option<&JobFlowInstancesDetail>

Describes the Amazon EC2 instances of the job flow.

source

pub fn steps(&self) -> &[StepDetail]

A list of steps run by the job flow.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .steps.is_none().

source

pub fn bootstrap_actions(&self) -> &[BootstrapActionDetail]

A list of the bootstrap actions run by the job flow.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .bootstrap_actions.is_none().

source

pub fn supported_products(&self) -> &[String]

A list of strings set by third-party software when the job flow is launched. If you are not using third-party software to manage the job flow, this value is empty.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .supported_products.is_none().

source

pub fn visible_to_all_users(&self) -> Option<bool>

Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true, IAM principals in the Amazon Web Services account can perform Amazon EMR cluster actions that their IAM policies allow. When false, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform Amazon EMR actions, regardless of IAM permissions policies attached to other IAM principals.

The default value is true if a value is not provided when creating a cluster using the Amazon EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console.

source

pub fn job_flow_role(&self) -> Option<&str>

The IAM role that was specified when the job flow was launched. The Amazon EC2 instances of the job flow assume this role.

source

pub fn service_role(&self) -> Option<&str>

The IAM role that is assumed by the Amazon EMR service to access Amazon Web Services resources on your behalf.

source

pub fn auto_scaling_role(&self) -> Option<&str>

An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. The IAM role provides a way for the automatic scaling feature to get the required permissions it needs to launch and terminate Amazon EC2 instances in an instance group.

source

pub fn scale_down_behavior(&self) -> Option<&ScaleDownBehavior>

The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR indicates that Amazon EMR terminates nodes at the instance-hour boundary, regardless of when the request to terminate the instance was submitted. This option is only available with Amazon EMR 5.1.0 and later and is the default for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates that Amazon EMR adds nodes to a deny list and drains tasks from nodes before terminating the Amazon EC2 instances, regardless of the instance-hour boundary. With either behavior, Amazon EMR removes the least active nodes first and blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION available only in Amazon EMR releases 4.1.0 and later, and is the default for releases of Amazon EMR earlier than 5.1.0.

source§

impl JobFlowDetail

source

pub fn builder() -> JobFlowDetailBuilder

Creates a new builder-style object to manufacture JobFlowDetail.

Trait Implementations§

source§

impl Clone for JobFlowDetail

source§

fn clone(&self) -> JobFlowDetail

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
source§

impl Debug for JobFlowDetail

source§

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

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

impl PartialEq for JobFlowDetail

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for JobFlowDetail

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> 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<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

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

§

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>,

§

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>,

§

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<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