From 52322980a3ba87ccc12f19cc9780cf3300a8394d Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 30 Jun 2022 20:20:33 +0000 Subject: [PATCH] feat(client-emr): This release adds support for the ExecutionRoleArn parameter in the AddJobFlowSteps and DescribeStep APIs. Customers can use ExecutionRoleArn to specify the IAM role used for each job they submit using the AddJobFlowSteps API. --- clients/client-emr/src/models/models_0.ts | 20 +++++++++++++++++++ .../client-emr/src/protocols/Aws_json1_1.ts | 3 +++ codegen/sdk-codegen/aws-models/emr.json | 12 +++++++++++ 3 files changed, 35 insertions(+) diff --git a/clients/client-emr/src/models/models_0.ts b/clients/client-emr/src/models/models_0.ts index adf7ebf10767..09b4abbe7374 100644 --- a/clients/client-emr/src/models/models_0.ts +++ b/clients/client-emr/src/models/models_0.ts @@ -932,6 +932,16 @@ export interface AddJobFlowStepsInput { *

A list of StepConfig to be executed by the job flow.

*/ Steps: StepConfig[] | undefined; + + /** + *

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.

+ *

For example, arn:aws:iam::1234567890:role/ReadOnly is a correctly formatted + * runtime role ARN.

+ */ + ExecutionRoleArn?: string; } export namespace AddJobFlowStepsInput { @@ -3294,6 +3304,16 @@ export interface Step { *

The current execution status details of the cluster step.

*/ Status?: StepStatus; + + /** + *

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.

+ *

For example, arn:aws:iam::1234567890:role/ReadOnly is a correctly formatted + * runtime role ARN.

+ */ + ExecutionRoleArn?: string; } export namespace Step { diff --git a/clients/client-emr/src/protocols/Aws_json1_1.ts b/clients/client-emr/src/protocols/Aws_json1_1.ts index f84f462f8b0f..63bf36420180 100644 --- a/clients/client-emr/src/protocols/Aws_json1_1.ts +++ b/clients/client-emr/src/protocols/Aws_json1_1.ts @@ -3431,6 +3431,8 @@ const serializeAws_json1_1AddInstanceGroupsInput = (input: AddInstanceGroupsInpu const serializeAws_json1_1AddJobFlowStepsInput = (input: AddJobFlowStepsInput, context: __SerdeContext): any => { return { + ...(input.ExecutionRoleArn !== undefined && + input.ExecutionRoleArn !== null && { ExecutionRoleArn: input.ExecutionRoleArn }), ...(input.JobFlowId !== undefined && input.JobFlowId !== null && { JobFlowId: input.JobFlowId }), ...(input.Steps !== undefined && input.Steps !== null && { Steps: serializeAws_json1_1StepConfigList(input.Steps, context) }), @@ -6812,6 +6814,7 @@ const deserializeAws_json1_1Step = (output: any, context: __SerdeContext): Step output.Config !== undefined && output.Config !== null ? deserializeAws_json1_1HadoopStepConfig(output.Config, context) : undefined, + ExecutionRoleArn: __expectString(output.ExecutionRoleArn), Id: __expectString(output.Id), Name: __expectString(output.Name), Status: diff --git a/codegen/sdk-codegen/aws-models/emr.json b/codegen/sdk-codegen/aws-models/emr.json index 837d57f4f006..67afd6db72c9 100644 --- a/codegen/sdk-codegen/aws-models/emr.json +++ b/codegen/sdk-codegen/aws-models/emr.json @@ -212,6 +212,12 @@ "smithy.api#documentation": "

A list of StepConfig to be executed by the job flow.

", "smithy.api#required": {} } + }, + "ExecutionRoleArn": { + "target": "com.amazonaws.emr#ArnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the runtime role for a step on the cluster. The\n runtime role can be a cross-account IAM role. The runtime role ARN is a combination of\n account ID, role name, and role type using the following format:\n arn:partition:service:region:account:resource.

\n

For example, arn:aws:iam::1234567890:role/ReadOnly is a correctly formatted\n runtime role ARN.

" + } } }, "traits": { @@ -7289,6 +7295,12 @@ "traits": { "smithy.api#documentation": "

The current execution status details of the cluster step.

" } + }, + "ExecutionRoleArn": { + "target": "com.amazonaws.emr#OptionalArnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the runtime role for a step on the cluster. The\n runtime role can be a cross-account IAM role. The runtime role ARN is a combination of\n account ID, role name, and role type using the following format:\n arn:partition:service:region:account:resource.

\n

For example, arn:aws:iam::1234567890:role/ReadOnly is a correctly formatted\n runtime role ARN.

" + } } }, "traits": {