
AWS SubmitSteps
CertifiedSubmit EMR steps to a running cluster
AWS SubmitSteps
Submit EMR steps to a running cluster
Appends one or more job steps to an existing EMR cluster using the AddJobFlowSteps API. Steps run in listed order and honor each step's actionOnFailure; use executionRoleArn when a step needs a specific runtime role.
type: io.kestra.plugin.aws.emr.SubmitStepsExamples
Add a job step to an existing AWS EMR cluster
id: aws_emr_add_emr_job_steps
namespace: company.team
tasks:
- id: add_steps_emr
type: io.kestra.plugin.aws.emr.SubmitSteps
accessKeyId: "{{ secret('AWS_ACCESS_KEY_ID') }}"
secretKeyId: "{{ secret('AWS_SECRET_KEY_ID') }}"
region: "eu-west-3"
clusterId: j-XXXXXXXXXXXX
steps:
- name: Spark_job_test
jar: "command-runner.jar"
actionOnFailure: CONTINUE
commands:
- spark-submit s3://mybucket/health_violations.py --data_source s3://mybucket/food_establishment_data.csv --output_uri s3://mybucket/test-emr-output
Properties
clusterId *Requiredstring
Cluster ID
Identifier of the existing EMR cluster (jobFlowId).
steps *RequiredNon-dynamicarray
Steps
Steps to append to the cluster; they execute in the order provided.
io.kestra.plugin.aws.emr.models.StepConfig
TERMINATE_CLUSTERCANCEL_AND_WAITCONTINUETERMINATE_JOB_FLOWAction on failure
Behavior when the step fails: TERMINATE_CLUSTER, CANCEL_AND_WAIT, CONTINUE, or TERMINATE_JOB_FLOW.
JAR path
JAR executed for the step, e.g., command-runner.jar.
Step name
Label for the step, e.g., Run Spark job.
Arguments
List of arguments; each string is split on spaces before being passed to the step.
Main class
Entry class name; omit if the JAR manifest defines Main-Class.
accessKeyId string
Access Key Id in order to connect to AWS
If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
compatibilityMode booleanstring
Enable compatibility mode
Use it to connect to S3 bucket with S3 compatible services that don't support the new transport client.
endpointOverride string
The endpoint with which the SDK should communicate
This property allows you to use a different S3 compatible storage backend.
executionRoleArn string
Execution role ARN
The Amazon Resource Name (ARN) of the runtime role for a step on the cluster. The runtime role can be a cross-account IAM role. The runtime role ARN is a combination of account ID, role name, and role type using the following format: arn: partition: service: region: account: resource.
forcePathStyle booleanstring
Force path style access
Must only be used when compatibilityMode is enabled.
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
region string
AWS region with which the SDK should communicate
secretKeyId string
Secret Key Id in order to connect to AWS
If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
sessionToken string
AWS session token, retrieved from an AWS token service, used for authenticating that this user has received temporary permissions to access a given resource
If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
stsEndpointOverride string
The AWS STS endpoint with which the SDKClient should communicate
stsRoleArn string
AWS STS Role
The Amazon Resource Name (ARN) of the role to assume. If set the task will use the StsAssumeRoleCredentialsProvider. If no credentials are defined, we will use the default credentials provider chain to fetch credentials.
stsRoleExternalId string
AWS STS External Id
A unique identifier that might be required when you assume a role in another account. This property is only used when an stsRoleArn is defined.
stsRoleSessionDuration string
PT15MAWS STS Session duration
The duration of the role session (default: 15 minutes, i.e., PT15M). This property is only used when an stsRoleArn is defined.
stsRoleSessionName string
AWS STS Session name
This property is only used when an stsRoleArn is defined.