aws-sdk-emrcontainers 1.18.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 05610d3640609f7c639706fb2da50b6095a15c05b8cdc314104bed98830465ae
4
- data.tar.gz: 2922a0dbb1ea2a4d251ac9a03ace43e191d33078885e86503dc374bdc041fc71
3
+ metadata.gz: 5108549d8320b5b22cb6a704863373806a2780e9f76cf1d04de5999f1fd6c02c
4
+ data.tar.gz: 151f3462af5a16506f2183ca6039d978e82568168102c2ccb970dccb386895b9
5
5
  SHA512:
6
- metadata.gz: 54551f0a325da2bc5717ff4eb1d8715a0a8b6d3a12b8db7d58c0257dc666a74df70f3d4389316e2ede69ef74f2f10822ed61763e633a656fe186e800d7338187
7
- data.tar.gz: c017686399cf638b3992599e4381c1e231373ecf6d322c6469c65ff0d96409dc6b67ecb8b2e77934398abf814f89617fe56893b3c9fbaff58226ef43003f54d9
6
+ metadata.gz: f2302b5822e6744dfb34c5681bd09fe8b7f285fa118cd57102d343c956e739c825e250f70440b750940357dfdb0e95afd9db0a941a7d0ce3c30ae12868a16d93
7
+ data.tar.gz: 16c8be96d7aa870a44c968972afc1bdbda3d84c479bc159501ac4297306229d17cce1e938cbd094616d503fc07ec008d456621b9d02f03060ec786f13f2cb165
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.20.0 (2023-04-27)
5
+ ------------------
6
+
7
+ * Feature - This release adds GetManagedEndpointSessionCredentials, a new API that allows customers to generate an auth token to connect to a managed endpoint, enabling features such as self-hosted Jupyter notebooks for EMR on EKS.
8
+
9
+ 1.19.0 (2023-02-09)
10
+ ------------------
11
+
12
+ * Feature - EMR on EKS allows configuring retry policies for job runs through the StartJobRun API. Using retry policies, a job cause a driver pod to be restarted automatically if it fails or is deleted. The job's status can be seen in the DescribeJobRun and ListJobRun APIs and monitored using CloudWatch events.
13
+
4
14
  1.18.0 (2023-01-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.18.0
1
+ 1.20.0
@@ -509,8 +509,8 @@ module Aws::EMRContainers
509
509
  end
510
510
 
511
511
  # Creates a managed endpoint. A managed endpoint is a gateway that
512
- # connects EMR Studio to Amazon EMR on EKS so that EMR Studio can
513
- # communicate with your virtual cluster.
512
+ # connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR
513
+ # Studio can communicate with your virtual cluster.
514
514
  #
515
515
  # @option params [required, String] :name
516
516
  # The name of the managed endpoint.
@@ -699,8 +699,8 @@ module Aws::EMRContainers
699
699
  end
700
700
 
701
701
  # Deletes a managed endpoint. A managed endpoint is a gateway that
702
- # connects EMR Studio to Amazon EMR on EKS so that EMR Studio can
703
- # communicate with your virtual cluster.
702
+ # connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR
703
+ # Studio can communicate with your virtual cluster.
704
704
  #
705
705
  # @option params [required, String] :id
706
706
  # The ID of the managed endpoint.
@@ -820,6 +820,8 @@ module Aws::EMRContainers
820
820
  # resp.job_run.failure_reason #=> String, one of "INTERNAL_ERROR", "USER_ERROR", "VALIDATION_ERROR", "CLUSTER_UNAVAILABLE"
821
821
  # resp.job_run.tags #=> Hash
822
822
  # resp.job_run.tags["String128"] #=> String
823
+ # resp.job_run.retry_policy_configuration.max_attempts #=> Integer
824
+ # resp.job_run.retry_policy_execution.current_attempt_count #=> Integer
823
825
  #
824
826
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeJobRun AWS API Documentation
825
827
  #
@@ -893,8 +895,9 @@ module Aws::EMRContainers
893
895
  end
894
896
 
895
897
  # Displays detailed information about a managed endpoint. A managed
896
- # endpoint is a gateway that connects EMR Studio to Amazon EMR on EKS so
897
- # that EMR Studio can communicate with your virtual cluster.
898
+ # endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on
899
+ # EKS so that Amazon EMR Studio can communicate with your virtual
900
+ # cluster.
898
901
  #
899
902
  # @option params [required, String] :id
900
903
  # This output displays ID of the managed endpoint.
@@ -997,6 +1000,68 @@ module Aws::EMRContainers
997
1000
  req.send_request(options)
998
1001
  end
999
1002
 
1003
+ # Generate a session token to connect to a managed endpoint.
1004
+ #
1005
+ # @option params [required, String] :endpoint_identifier
1006
+ # The ARN of the managed endpoint for which the request is submitted.
1007
+ #
1008
+ # @option params [required, String] :virtual_cluster_identifier
1009
+ # The ARN of the Virtual Cluster which the Managed Endpoint belongs to.
1010
+ #
1011
+ # @option params [required, String] :execution_role_arn
1012
+ # The IAM Execution Role ARN that will be used by the job run.
1013
+ #
1014
+ # @option params [required, String] :credential_type
1015
+ # Type of the token requested. Currently supported and default value of
1016
+ # this field is “TOKEN.”
1017
+ #
1018
+ # @option params [Integer] :duration_in_seconds
1019
+ # Duration in seconds for which the session token is valid. The default
1020
+ # duration is 15 minutes and the maximum is 12 hours.
1021
+ #
1022
+ # @option params [String] :log_context
1023
+ # String identifier used to separate sections of the execution logs
1024
+ # uploaded to S3.
1025
+ #
1026
+ # @option params [String] :client_token
1027
+ # The client idempotency token of the job run request.
1028
+ #
1029
+ # **A suitable default value is auto-generated.** You should normally
1030
+ # not need to pass this option.**
1031
+ #
1032
+ # @return [Types::GetManagedEndpointSessionCredentialsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1033
+ #
1034
+ # * {Types::GetManagedEndpointSessionCredentialsResponse#id #id} => String
1035
+ # * {Types::GetManagedEndpointSessionCredentialsResponse#credentials #credentials} => Types::Credentials
1036
+ # * {Types::GetManagedEndpointSessionCredentialsResponse#expires_at #expires_at} => Time
1037
+ #
1038
+ # @example Request syntax with placeholder values
1039
+ #
1040
+ # resp = client.get_managed_endpoint_session_credentials({
1041
+ # endpoint_identifier: "String2048", # required
1042
+ # virtual_cluster_identifier: "String2048", # required
1043
+ # execution_role_arn: "IAMRoleArn", # required
1044
+ # credential_type: "CredentialType", # required
1045
+ # duration_in_seconds: 1,
1046
+ # log_context: "LogContext",
1047
+ # client_token: "ClientToken",
1048
+ # })
1049
+ #
1050
+ # @example Response structure
1051
+ #
1052
+ # resp.id #=> String
1053
+ # resp.credentials.token #=> String
1054
+ # resp.expires_at #=> Time
1055
+ #
1056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/GetManagedEndpointSessionCredentials AWS API Documentation
1057
+ #
1058
+ # @overload get_managed_endpoint_session_credentials(params = {})
1059
+ # @param [Hash] params ({})
1060
+ def get_managed_endpoint_session_credentials(params = {}, options = {})
1061
+ req = build_request(:get_managed_endpoint_session_credentials, params)
1062
+ req.send_request(options)
1063
+ end
1064
+
1000
1065
  # Lists job runs based on a set of parameters. A job run is a unit of
1001
1066
  # work, such as a Spark jar, PySpark script, or SparkSQL query, that you
1002
1067
  # submit to Amazon EMR on EKS.
@@ -1074,6 +1139,8 @@ module Aws::EMRContainers
1074
1139
  # resp.job_runs[0].failure_reason #=> String, one of "INTERNAL_ERROR", "USER_ERROR", "VALIDATION_ERROR", "CLUSTER_UNAVAILABLE"
1075
1140
  # resp.job_runs[0].tags #=> Hash
1076
1141
  # resp.job_runs[0].tags["String128"] #=> String
1142
+ # resp.job_runs[0].retry_policy_configuration.max_attempts #=> Integer
1143
+ # resp.job_runs[0].retry_policy_execution.current_attempt_count #=> Integer
1077
1144
  # resp.next_token #=> String
1078
1145
  #
1079
1146
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListJobRuns AWS API Documentation
@@ -1165,8 +1232,9 @@ module Aws::EMRContainers
1165
1232
  end
1166
1233
 
1167
1234
  # Lists managed endpoints based on a set of parameters. A managed
1168
- # endpoint is a gateway that connects EMR Studio to Amazon EMR on EKS so
1169
- # that EMR Studio can communicate with your virtual cluster.
1235
+ # endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on
1236
+ # EKS so that Amazon EMR Studio can communicate with your virtual
1237
+ # cluster.
1170
1238
  #
1171
1239
  # @option params [required, String] :virtual_cluster_id
1172
1240
  # The ID of the virtual cluster.
@@ -1292,8 +1360,8 @@ module Aws::EMRContainers
1292
1360
  # The container provider ID of the virtual cluster.
1293
1361
  #
1294
1362
  # @option params [String] :container_provider_type
1295
- # The container provider type of the virtual cluster. EKS is the only
1296
- # supported type as of now.
1363
+ # The container provider type of the virtual cluster. Amazon EKS is the
1364
+ # only supported type as of now.
1297
1365
  #
1298
1366
  # @option params [Time,DateTime,Date,Integer,String] :created_after
1299
1367
  # The date and time after which the virtual clusters are created.
@@ -1390,6 +1458,9 @@ module Aws::EMRContainers
1390
1458
  # @option params [Hash<String,String>] :job_template_parameters
1391
1459
  # The values of job template parameters to start a job run.
1392
1460
  #
1461
+ # @option params [Types::RetryPolicyConfiguration] :retry_policy_configuration
1462
+ # The retry policy configuration for the job run.
1463
+ #
1393
1464
  # @return [Types::StartJobRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1394
1465
  #
1395
1466
  # * {Types::StartJobRunResponse#id #id} => String
@@ -1446,6 +1517,9 @@ module Aws::EMRContainers
1446
1517
  # job_template_parameters: {
1447
1518
  # "TemplateParameterName" => "String1024",
1448
1519
  # },
1520
+ # retry_policy_configuration: {
1521
+ # max_attempts: 1, # required
1522
+ # },
1449
1523
  # })
1450
1524
  #
1451
1525
  # @example Response structure
@@ -1464,16 +1538,17 @@ module Aws::EMRContainers
1464
1538
  req.send_request(options)
1465
1539
  end
1466
1540
 
1467
- # Assigns tags to resources. A tag is a label that you assign to an AWS
1468
- # resource. Each tag consists of a key and an optional value, both of
1469
- # which you define. Tags enable you to categorize your AWS resources by
1470
- # attributes such as purpose, owner, or environment. When you have many
1471
- # resources of the same type, you can quickly identify a specific
1472
- # resource based on the tags you've assigned to it. For example, you
1473
- # can define a set of tags for your Amazon EMR on EKS clusters to help
1474
- # you track each cluster's owner and stack level. We recommend that you
1475
- # devise a consistent set of tag keys for each resource type. You can
1476
- # then search and filter the resources based on the tags that you add.
1541
+ # Assigns tags to resources. A tag is a label that you assign to an
1542
+ # Amazon Web Services resource. Each tag consists of a key and an
1543
+ # optional value, both of which you define. Tags enable you to
1544
+ # categorize your Amazon Web Services resources by attributes such as
1545
+ # purpose, owner, or environment. When you have many resources of the
1546
+ # same type, you can quickly identify a specific resource based on the
1547
+ # tags you've assigned to it. For example, you can define a set of tags
1548
+ # for your Amazon EMR on EKS clusters to help you track each cluster's
1549
+ # owner and stack level. We recommend that you devise a consistent set
1550
+ # of tag keys for each resource type. You can then search and filter the
1551
+ # resources based on the tags that you add.
1477
1552
  #
1478
1553
  # @option params [required, String] :resource_arn
1479
1554
  # The ARN of resources.
@@ -1540,7 +1615,7 @@ module Aws::EMRContainers
1540
1615
  params: params,
1541
1616
  config: config)
1542
1617
  context[:gem_name] = 'aws-sdk-emrcontainers'
1543
- context[:gem_version] = '1.18.0'
1618
+ context[:gem_version] = '1.20.0'
1544
1619
  Seahorse::Client::Request.new(handlers, context)
1545
1620
  end
1546
1621
 
@@ -33,6 +33,8 @@ module Aws::EMRContainers
33
33
  CreateManagedEndpointResponse = Shapes::StructureShape.new(name: 'CreateManagedEndpointResponse')
34
34
  CreateVirtualClusterRequest = Shapes::StructureShape.new(name: 'CreateVirtualClusterRequest')
35
35
  CreateVirtualClusterResponse = Shapes::StructureShape.new(name: 'CreateVirtualClusterResponse')
36
+ CredentialType = Shapes::StringShape.new(name: 'CredentialType')
37
+ Credentials = Shapes::UnionShape.new(name: 'Credentials')
36
38
  Date = Shapes::TimestampShape.new(name: 'Date', timestampFormat: "iso8601")
37
39
  DeleteJobTemplateRequest = Shapes::StructureShape.new(name: 'DeleteJobTemplateRequest')
38
40
  DeleteJobTemplateResponse = Shapes::StructureShape.new(name: 'DeleteJobTemplateResponse')
@@ -60,6 +62,8 @@ module Aws::EMRContainers
60
62
  EntryPointArguments = Shapes::ListShape.new(name: 'EntryPointArguments')
61
63
  EntryPointPath = Shapes::StringShape.new(name: 'EntryPointPath')
62
64
  FailureReason = Shapes::StringShape.new(name: 'FailureReason')
65
+ GetManagedEndpointSessionCredentialsRequest = Shapes::StructureShape.new(name: 'GetManagedEndpointSessionCredentialsRequest')
66
+ GetManagedEndpointSessionCredentialsResponse = Shapes::StructureShape.new(name: 'GetManagedEndpointSessionCredentialsResponse')
63
67
  IAMRoleArn = Shapes::StringShape.new(name: 'IAMRoleArn')
64
68
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
65
69
  JavaInteger = Shapes::IntegerShape.new(name: 'JavaInteger')
@@ -85,6 +89,7 @@ module Aws::EMRContainers
85
89
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
86
90
  ListVirtualClustersRequest = Shapes::StructureShape.new(name: 'ListVirtualClustersRequest')
87
91
  ListVirtualClustersResponse = Shapes::StructureShape.new(name: 'ListVirtualClustersResponse')
92
+ LogContext = Shapes::StringShape.new(name: 'LogContext')
88
93
  LogGroupName = Shapes::StringShape.new(name: 'LogGroupName')
89
94
  MonitoringConfiguration = Shapes::StructureShape.new(name: 'MonitoringConfiguration')
90
95
  NextToken = Shapes::StringShape.new(name: 'NextToken')
@@ -97,9 +102,12 @@ module Aws::EMRContainers
97
102
  PersistentAppUI = Shapes::StringShape.new(name: 'PersistentAppUI')
98
103
  ReleaseLabel = Shapes::StringShape.new(name: 'ReleaseLabel')
99
104
  RequestIdentityUserArn = Shapes::StringShape.new(name: 'RequestIdentityUserArn')
105
+ RequestThrottledException = Shapes::StructureShape.new(name: 'RequestThrottledException')
100
106
  ResourceIdString = Shapes::StringShape.new(name: 'ResourceIdString')
101
107
  ResourceNameString = Shapes::StringShape.new(name: 'ResourceNameString')
102
108
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
109
+ RetryPolicyConfiguration = Shapes::StructureShape.new(name: 'RetryPolicyConfiguration')
110
+ RetryPolicyExecution = Shapes::StructureShape.new(name: 'RetryPolicyExecution')
103
111
  RsiArn = Shapes::StringShape.new(name: 'RsiArn')
104
112
  S3MonitoringConfiguration = Shapes::StructureShape.new(name: 'S3MonitoringConfiguration')
105
113
  SensitivePropertiesMap = Shapes::MapShape.new(name: 'SensitivePropertiesMap')
@@ -125,6 +133,7 @@ module Aws::EMRContainers
125
133
  TemplateParameterDataType = Shapes::StringShape.new(name: 'TemplateParameterDataType')
126
134
  TemplateParameterInputMap = Shapes::MapShape.new(name: 'TemplateParameterInputMap')
127
135
  TemplateParameterName = Shapes::StringShape.new(name: 'TemplateParameterName')
136
+ Token = Shapes::StringShape.new(name: 'Token')
128
137
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
129
138
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
130
139
  UriString = Shapes::StringShape.new(name: 'UriString')
@@ -214,6 +223,12 @@ module Aws::EMRContainers
214
223
  CreateVirtualClusterResponse.add_member(:arn, Shapes::ShapeRef.new(shape: VirtualClusterArn, location_name: "arn"))
215
224
  CreateVirtualClusterResponse.struct_class = Types::CreateVirtualClusterResponse
216
225
 
226
+ Credentials.add_member(:token, Shapes::ShapeRef.new(shape: Token, location_name: "token"))
227
+ Credentials.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
228
+ Credentials.add_member_subclass(:token, Types::Credentials::Token)
229
+ Credentials.add_member_subclass(:unknown, Types::Credentials::Unknown)
230
+ Credentials.struct_class = Types::Credentials
231
+
217
232
  DeleteJobTemplateRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "templateId"))
218
233
  DeleteJobTemplateRequest.struct_class = Types::DeleteJobTemplateRequest
219
234
 
@@ -291,6 +306,20 @@ module Aws::EMRContainers
291
306
 
292
307
  EntryPointArguments.member = Shapes::ShapeRef.new(shape: EntryPointArgument)
293
308
 
309
+ GetManagedEndpointSessionCredentialsRequest.add_member(:endpoint_identifier, Shapes::ShapeRef.new(shape: String2048, required: true, location: "uri", location_name: "endpointId"))
310
+ GetManagedEndpointSessionCredentialsRequest.add_member(:virtual_cluster_identifier, Shapes::ShapeRef.new(shape: String2048, required: true, location: "uri", location_name: "virtualClusterId"))
311
+ GetManagedEndpointSessionCredentialsRequest.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "executionRoleArn"))
312
+ GetManagedEndpointSessionCredentialsRequest.add_member(:credential_type, Shapes::ShapeRef.new(shape: CredentialType, required: true, location_name: "credentialType"))
313
+ GetManagedEndpointSessionCredentialsRequest.add_member(:duration_in_seconds, Shapes::ShapeRef.new(shape: JavaInteger, location_name: "durationInSeconds"))
314
+ GetManagedEndpointSessionCredentialsRequest.add_member(:log_context, Shapes::ShapeRef.new(shape: LogContext, location_name: "logContext"))
315
+ GetManagedEndpointSessionCredentialsRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
316
+ GetManagedEndpointSessionCredentialsRequest.struct_class = Types::GetManagedEndpointSessionCredentialsRequest
317
+
318
+ GetManagedEndpointSessionCredentialsResponse.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
319
+ GetManagedEndpointSessionCredentialsResponse.add_member(:credentials, Shapes::ShapeRef.new(shape: Credentials, location_name: "credentials"))
320
+ GetManagedEndpointSessionCredentialsResponse.add_member(:expires_at, Shapes::ShapeRef.new(shape: Date, location_name: "expiresAt"))
321
+ GetManagedEndpointSessionCredentialsResponse.struct_class = Types::GetManagedEndpointSessionCredentialsResponse
322
+
294
323
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String1024, location_name: "message"))
295
324
  InternalServerException.struct_class = Types::InternalServerException
296
325
 
@@ -314,6 +343,8 @@ module Aws::EMRContainers
314
343
  JobRun.add_member(:state_details, Shapes::ShapeRef.new(shape: String256, location_name: "stateDetails"))
315
344
  JobRun.add_member(:failure_reason, Shapes::ShapeRef.new(shape: FailureReason, location_name: "failureReason"))
316
345
  JobRun.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
346
+ JobRun.add_member(:retry_policy_configuration, Shapes::ShapeRef.new(shape: RetryPolicyConfiguration, location_name: "retryPolicyConfiguration"))
347
+ JobRun.add_member(:retry_policy_execution, Shapes::ShapeRef.new(shape: RetryPolicyExecution, location_name: "retryPolicyExecution"))
317
348
  JobRun.struct_class = Types::JobRun
318
349
 
319
350
  JobRunStates.member = Shapes::ShapeRef.new(shape: JobRunState)
@@ -417,9 +448,18 @@ module Aws::EMRContainers
417
448
  ParametricS3MonitoringConfiguration.add_member(:log_uri, Shapes::ShapeRef.new(shape: UriString, location_name: "logUri"))
418
449
  ParametricS3MonitoringConfiguration.struct_class = Types::ParametricS3MonitoringConfiguration
419
450
 
451
+ RequestThrottledException.add_member(:message, Shapes::ShapeRef.new(shape: String1024, location_name: "message"))
452
+ RequestThrottledException.struct_class = Types::RequestThrottledException
453
+
420
454
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String1024, location_name: "message"))
421
455
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
422
456
 
457
+ RetryPolicyConfiguration.add_member(:max_attempts, Shapes::ShapeRef.new(shape: JavaInteger, required: true, location_name: "maxAttempts"))
458
+ RetryPolicyConfiguration.struct_class = Types::RetryPolicyConfiguration
459
+
460
+ RetryPolicyExecution.add_member(:current_attempt_count, Shapes::ShapeRef.new(shape: JavaInteger, required: true, location_name: "currentAttemptCount"))
461
+ RetryPolicyExecution.struct_class = Types::RetryPolicyExecution
462
+
423
463
  S3MonitoringConfiguration.add_member(:log_uri, Shapes::ShapeRef.new(shape: UriString, required: true, location_name: "logUri"))
424
464
  S3MonitoringConfiguration.struct_class = Types::S3MonitoringConfiguration
425
465
 
@@ -445,6 +485,7 @@ module Aws::EMRContainers
445
485
  StartJobRunRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
446
486
  StartJobRunRequest.add_member(:job_template_id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "jobTemplateId"))
447
487
  StartJobRunRequest.add_member(:job_template_parameters, Shapes::ShapeRef.new(shape: TemplateParameterInputMap, location_name: "jobTemplateParameters"))
488
+ StartJobRunRequest.add_member(:retry_policy_configuration, Shapes::ShapeRef.new(shape: RetryPolicyConfiguration, location_name: "retryPolicyConfiguration"))
448
489
  StartJobRunRequest.struct_class = Types::StartJobRunRequest
449
490
 
450
491
  StartJobRunResponse.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
@@ -633,6 +674,18 @@ module Aws::EMRContainers
633
674
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
634
675
  end)
635
676
 
677
+ api.add_operation(:get_managed_endpoint_session_credentials, Seahorse::Model::Operation.new.tap do |o|
678
+ o.name = "GetManagedEndpointSessionCredentials"
679
+ o.http_method = "POST"
680
+ o.http_request_uri = "/virtualclusters/{virtualClusterId}/endpoints/{endpointId}/credentials"
681
+ o.input = Shapes::ShapeRef.new(shape: GetManagedEndpointSessionCredentialsRequest)
682
+ o.output = Shapes::ShapeRef.new(shape: GetManagedEndpointSessionCredentialsResponse)
683
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
684
+ o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
685
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
686
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
687
+ end)
688
+
636
689
  api.add_operation(:list_job_runs, Seahorse::Model::Operation.new.tap do |o|
637
690
  o.name = "ListJobRuns"
638
691
  o.http_method = "GET"
@@ -14,36 +14,39 @@ module Aws::EMRContainers
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://emr-containers-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
33
18
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://emr-containers-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
- end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
38
20
  end
39
21
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://emr-containers.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://emr-containers-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://emr-containers-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://emr-containers.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
42
45
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://emr-containers.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
47
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://emr-containers.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
50
  raise ArgumentError, 'No endpoint could be resolved'
48
51
 
49
52
  end
@@ -165,6 +165,20 @@ module Aws::EMRContainers
165
165
  end
166
166
  end
167
167
 
168
+ class GetManagedEndpointSessionCredentials
169
+ def self.build(context)
170
+ unless context.config.regional_endpoint
171
+ endpoint = context.config.endpoint.to_s
172
+ end
173
+ Aws::EMRContainers::EndpointParameters.new(
174
+ region: context.config.region,
175
+ use_dual_stack: context.config.use_dualstack_endpoint,
176
+ use_fips: context.config.use_fips_endpoint,
177
+ endpoint: endpoint,
178
+ )
179
+ end
180
+ end
181
+
168
182
  class ListJobRuns
169
183
  def self.build(context)
170
184
  unless context.config.regional_endpoint
@@ -28,6 +28,7 @@ module Aws::EMRContainers
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {InternalServerException}
31
+ # * {RequestThrottledException}
31
32
  # * {ResourceNotFoundException}
32
33
  # * {ValidationException}
33
34
  #
@@ -52,6 +53,21 @@ module Aws::EMRContainers
52
53
  end
53
54
  end
54
55
 
56
+ class RequestThrottledException < ServiceError
57
+
58
+ # @param [Seahorse::Client::RequestContext] context
59
+ # @param [String] message
60
+ # @param [Aws::EMRContainers::Types::RequestThrottledException] data
61
+ def initialize(context, message, data = Aws::EmptyStructure.new)
62
+ super(context, message, data)
63
+ end
64
+
65
+ # @return [String]
66
+ def message
67
+ @message || @data[:message]
68
+ end
69
+ end
70
+
55
71
  class ResourceNotFoundException < ServiceError
56
72
 
57
73
  # @param [Seahorse::Client::RequestContext] context
@@ -78,6 +78,8 @@ module Aws::EMRContainers
78
78
  Aws::EMRContainers::Endpoints::DescribeManagedEndpoint.build(context)
79
79
  when :describe_virtual_cluster
80
80
  Aws::EMRContainers::Endpoints::DescribeVirtualCluster.build(context)
81
+ when :get_managed_endpoint_session_credentials
82
+ Aws::EMRContainers::Endpoints::GetManagedEndpointSessionCredentials.build(context)
81
83
  when :list_job_runs
82
84
  Aws::EMRContainers::Endpoints::ListJobRuns.build(context)
83
85
  when :list_job_templates
@@ -145,7 +145,7 @@ module Aws::EMRContainers
145
145
  # @note ContainerInfo is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ContainerInfo corresponding to the set member.
146
146
  #
147
147
  # @!attribute [rw] eks_info
148
- # The information about the EKS cluster.
148
+ # The information about the Amazon EKS cluster.
149
149
  # @return [Types::EksInfo]
150
150
  #
151
151
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ContainerInfo AWS API Documentation
@@ -164,8 +164,8 @@ module Aws::EMRContainers
164
164
  # The information about the container provider.
165
165
  #
166
166
  # @!attribute [rw] type
167
- # The type of the container provider. EKS is the only supported type
168
- # as of now.
167
+ # The type of the container provider. Amazon EKS is the only supported
168
+ # type as of now.
169
169
  # @return [String]
170
170
  #
171
171
  # @!attribute [rw] id
@@ -386,6 +386,27 @@ module Aws::EMRContainers
386
386
  include Aws::Structure
387
387
  end
388
388
 
389
+ # The structure containing the session token being returned.
390
+ #
391
+ # @note Credentials is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Credentials corresponding to the set member.
392
+ #
393
+ # @!attribute [rw] token
394
+ # The actual session token being returned.
395
+ # @return [String]
396
+ #
397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/Credentials AWS API Documentation
398
+ #
399
+ class Credentials < Struct.new(
400
+ :token,
401
+ :unknown)
402
+ SENSITIVE = [:token]
403
+ include Aws::Structure
404
+ include Aws::Structure::Union
405
+
406
+ class Token < Credentials; end
407
+ class Unknown < Credentials; end
408
+ end
409
+
389
410
  # @!attribute [rw] id
390
411
  # The ID of the job template that will be deleted.
391
412
  # @return [String]
@@ -576,10 +597,10 @@ module Aws::EMRContainers
576
597
  include Aws::Structure
577
598
  end
578
599
 
579
- # The information about the EKS cluster.
600
+ # The information about the Amazon EKS cluster.
580
601
  #
581
602
  # @!attribute [rw] namespace
582
- # The namespaces of the EKS cluster.
603
+ # The namespaces of the Amazon EKS cluster.
583
604
  # @return [String]
584
605
  #
585
606
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/EksInfo AWS API Documentation
@@ -693,6 +714,77 @@ module Aws::EMRContainers
693
714
  include Aws::Structure
694
715
  end
695
716
 
717
+ # @!attribute [rw] endpoint_identifier
718
+ # The ARN of the managed endpoint for which the request is submitted.
719
+ # @return [String]
720
+ #
721
+ # @!attribute [rw] virtual_cluster_identifier
722
+ # The ARN of the Virtual Cluster which the Managed Endpoint belongs
723
+ # to.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] execution_role_arn
727
+ # The IAM Execution Role ARN that will be used by the job run.
728
+ # @return [String]
729
+ #
730
+ # @!attribute [rw] credential_type
731
+ # Type of the token requested. Currently supported and default value
732
+ # of this field is “TOKEN.”
733
+ # @return [String]
734
+ #
735
+ # @!attribute [rw] duration_in_seconds
736
+ # Duration in seconds for which the session token is valid. The
737
+ # default duration is 15 minutes and the maximum is 12 hours.
738
+ # @return [Integer]
739
+ #
740
+ # @!attribute [rw] log_context
741
+ # String identifier used to separate sections of the execution logs
742
+ # uploaded to S3.
743
+ # @return [String]
744
+ #
745
+ # @!attribute [rw] client_token
746
+ # The client idempotency token of the job run request.
747
+ #
748
+ # **A suitable default value is auto-generated.** You should normally
749
+ # not need to pass this option.
750
+ # @return [String]
751
+ #
752
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/GetManagedEndpointSessionCredentialsRequest AWS API Documentation
753
+ #
754
+ class GetManagedEndpointSessionCredentialsRequest < Struct.new(
755
+ :endpoint_identifier,
756
+ :virtual_cluster_identifier,
757
+ :execution_role_arn,
758
+ :credential_type,
759
+ :duration_in_seconds,
760
+ :log_context,
761
+ :client_token)
762
+ SENSITIVE = []
763
+ include Aws::Structure
764
+ end
765
+
766
+ # @!attribute [rw] id
767
+ # The identifier of the session token returned.
768
+ # @return [String]
769
+ #
770
+ # @!attribute [rw] credentials
771
+ # The structure containing the session credentials.
772
+ # @return [Types::Credentials]
773
+ #
774
+ # @!attribute [rw] expires_at
775
+ # The date and time when the session token will expire.
776
+ # @return [Time]
777
+ #
778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/GetManagedEndpointSessionCredentialsResponse AWS API Documentation
779
+ #
780
+ class GetManagedEndpointSessionCredentialsResponse < Struct.new(
781
+ :id,
782
+ :credentials,
783
+ :expires_at)
784
+ SENSITIVE = []
785
+ include Aws::Structure
786
+ end
787
+
696
788
  # This is an internal server exception.
697
789
  #
698
790
  # @!attribute [rw] message
@@ -796,6 +888,14 @@ module Aws::EMRContainers
796
888
  # The assigned tags of the job run.
797
889
  # @return [Hash<String,String>]
798
890
  #
891
+ # @!attribute [rw] retry_policy_configuration
892
+ # The configuration of the retry policy that the job runs on.
893
+ # @return [Types::RetryPolicyConfiguration]
894
+ #
895
+ # @!attribute [rw] retry_policy_execution
896
+ # The current status of the retry policy executed on the job.
897
+ # @return [Types::RetryPolicyExecution]
898
+ #
799
899
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/JobRun AWS API Documentation
800
900
  #
801
901
  class JobRun < Struct.new(
@@ -814,7 +914,9 @@ module Aws::EMRContainers
814
914
  :finished_at,
815
915
  :state_details,
816
916
  :failure_reason,
817
- :tags)
917
+ :tags,
918
+ :retry_policy_configuration,
919
+ :retry_policy_execution)
818
920
  SENSITIVE = []
819
921
  include Aws::Structure
820
922
  end
@@ -1111,8 +1213,8 @@ module Aws::EMRContainers
1111
1213
  # @return [String]
1112
1214
  #
1113
1215
  # @!attribute [rw] container_provider_type
1114
- # The container provider type of the virtual cluster. EKS is the only
1115
- # supported type as of now.
1216
+ # The container provider type of the virtual cluster. Amazon EKS is
1217
+ # the only supported type as of now.
1116
1218
  # @return [String]
1117
1219
  #
1118
1220
  # @!attribute [rw] created_after
@@ -1273,6 +1375,19 @@ module Aws::EMRContainers
1273
1375
  include Aws::Structure
1274
1376
  end
1275
1377
 
1378
+ # The request throttled.
1379
+ #
1380
+ # @!attribute [rw] message
1381
+ # @return [String]
1382
+ #
1383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/RequestThrottledException AWS API Documentation
1384
+ #
1385
+ class RequestThrottledException < Struct.new(
1386
+ :message)
1387
+ SENSITIVE = []
1388
+ include Aws::Structure
1389
+ end
1390
+
1276
1391
  # The specified resource was not found.
1277
1392
  #
1278
1393
  # @!attribute [rw] message
@@ -1286,6 +1401,34 @@ module Aws::EMRContainers
1286
1401
  include Aws::Structure
1287
1402
  end
1288
1403
 
1404
+ # The configuration of the retry policy that the job runs on.
1405
+ #
1406
+ # @!attribute [rw] max_attempts
1407
+ # The maximum number of attempts on the job's driver.
1408
+ # @return [Integer]
1409
+ #
1410
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/RetryPolicyConfiguration AWS API Documentation
1411
+ #
1412
+ class RetryPolicyConfiguration < Struct.new(
1413
+ :max_attempts)
1414
+ SENSITIVE = []
1415
+ include Aws::Structure
1416
+ end
1417
+
1418
+ # The current status of the retry policy executed on the job.
1419
+ #
1420
+ # @!attribute [rw] current_attempt_count
1421
+ # The current number of attempts made on the driver of the job.
1422
+ # @return [Integer]
1423
+ #
1424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/RetryPolicyExecution AWS API Documentation
1425
+ #
1426
+ class RetryPolicyExecution < Struct.new(
1427
+ :current_attempt_count)
1428
+ SENSITIVE = []
1429
+ include Aws::Structure
1430
+ end
1431
+
1289
1432
  # Amazon S3 configuration for monitoring log publishing. You can
1290
1433
  # configure your jobs to send log information to Amazon S3.
1291
1434
  #
@@ -1387,6 +1530,10 @@ module Aws::EMRContainers
1387
1530
  # The values of job template parameters to start a job run.
1388
1531
  # @return [Hash<String,String>]
1389
1532
  #
1533
+ # @!attribute [rw] retry_policy_configuration
1534
+ # The retry policy configuration for the job run.
1535
+ # @return [Types::RetryPolicyConfiguration]
1536
+ #
1390
1537
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/StartJobRunRequest AWS API Documentation
1391
1538
  #
1392
1539
  class StartJobRunRequest < Struct.new(
@@ -1399,7 +1546,8 @@ module Aws::EMRContainers
1399
1546
  :configuration_overrides,
1400
1547
  :tags,
1401
1548
  :job_template_id,
1402
- :job_template_parameters)
1549
+ :job_template_parameters,
1550
+ :retry_policy_configuration)
1403
1551
  SENSITIVE = []
1404
1552
  include Aws::Structure
1405
1553
  end
@@ -1457,7 +1605,7 @@ module Aws::EMRContainers
1457
1605
  #
1458
1606
  # @!attribute [rw] type
1459
1607
  # The type of the job template parameter. Allowed values are:
1460
- # ‘String’, ‘Number’.
1608
+ # ‘STRING’, ‘NUMBER’.
1461
1609
  # @return [String]
1462
1610
  #
1463
1611
  # @!attribute [rw] default_value
@@ -1511,9 +1659,9 @@ module Aws::EMRContainers
1511
1659
  # Kubernetes namespace that Amazon EMR is registered with. Amazon EMR
1512
1660
  # uses virtual clusters to run jobs and host endpoints. Multiple virtual
1513
1661
  # clusters can be backed by the same physical cluster. However, each
1514
- # virtual cluster maps to one namespace on an EKS cluster. Virtual
1515
- # clusters do not create any active resources that contribute to your
1516
- # bill or that require lifecycle management outside the service.
1662
+ # virtual cluster maps to one namespace on an Amazon EKS cluster.
1663
+ # Virtual clusters do not create any active resources that contribute to
1664
+ # your bill or that require lifecycle management outside the service.
1517
1665
  #
1518
1666
  # @!attribute [rw] id
1519
1667
  # The ID of the virtual cluster.
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-emrcontainers/customizations'
52
52
  # @!group service
53
53
  module Aws::EMRContainers
54
54
 
55
- GEM_VERSION = '1.18.0'
55
+ GEM_VERSION = '1.20.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-emrcontainers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.18.0
4
+ version: 1.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core