aws-sdk-emr 1.49.0 → 1.50.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: 58b6202840db551ffbc2db426ad53cd5c0d8ea37c7b4ee5b9eddf2d9e80a0236
4
- data.tar.gz: 40a513db905c24dba538f0a6e9b0076a70ca811329b89a229f7024fc8fcfc3a5
3
+ metadata.gz: e17253a893d359c57e9426744b005f415a7b2bdf54d9d8b47106dc9dafe3eaea
4
+ data.tar.gz: e1f98a666a8317e44e9ac7eff6fd49fadf8b8e1bc141b1b3f579baf4a8a2d502
5
5
  SHA512:
6
- metadata.gz: e70a536f9c709ae750bc90bca00b827830ca9d8e871b090bfb336075cf32c8d09afaaab926bc809e660887aaabf07e0078303a0bc7502838a92c059ab27b1d1f
7
- data.tar.gz: 7a3068ebf859c8eeff32579680a61855fcc97752489fb52588f348523909b799ddfdf45cbc6083294868042b582ce02b5734c0cbb4a9f2d8b35b6bc87d3e47d1
6
+ metadata.gz: c4822f366bae745623ff5bce1953caef8648b4892393ce71a3a352ffaacda5825a7a14d05ed763995ea3945b9fb51b8f4381075155bb6c913bad77943c86cc7c
7
+ data.tar.gz: 43ead65dee46d446e4518f09615d41a434560717925599721deb3ad8d421a2e055ebf61651711739709f290eaed102947a4abdfa258f04493d9ce4d27973efa0
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.50.0 (2021-08-27)
5
+ ------------------
6
+
7
+ * Feature - Amazon EMR now supports auto-terminating idle EMR clusters. You can specify the idle timeout value when enabling auto-termination for both running and new clusters and Amazon EMR automatically terminates the cluster when idle timeout kicks in.
8
+
4
9
  1.49.0 (2021-08-13)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.49.0
1
+ 1.50.0
@@ -1458,10 +1458,39 @@ module Aws::EMR
1458
1458
  req.send_request(options)
1459
1459
  end
1460
1460
 
1461
+ # Returns the auto-termination policy for an Amazon EMR cluster.
1462
+ #
1463
+ # @option params [required, String] :cluster_id
1464
+ # Specifies the ID of the Amazon EMR cluster for which the
1465
+ # auto-termination policy will be fetched.
1466
+ #
1467
+ # @return [Types::GetAutoTerminationPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1468
+ #
1469
+ # * {Types::GetAutoTerminationPolicyOutput#auto_termination_policy #auto_termination_policy} => Types::AutoTerminationPolicy
1470
+ #
1471
+ # @example Request syntax with placeholder values
1472
+ #
1473
+ # resp = client.get_auto_termination_policy({
1474
+ # cluster_id: "ClusterId", # required
1475
+ # })
1476
+ #
1477
+ # @example Response structure
1478
+ #
1479
+ # resp.auto_termination_policy.idle_timeout #=> Integer
1480
+ #
1481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy AWS API Documentation
1482
+ #
1483
+ # @overload get_auto_termination_policy(params = {})
1484
+ # @param [Hash] params ({})
1485
+ def get_auto_termination_policy(params = {}, options = {})
1486
+ req = build_request(:get_auto_termination_policy, params)
1487
+ req.send_request(options)
1488
+ end
1489
+
1461
1490
  # Returns the Amazon EMR block public access configuration for your
1462
- # account in the current Region. For more information see [Configure
1463
- # Block Public Access for Amazon EMR][1] in the *Amazon EMR Management
1464
- # Guide*.
1491
+ # Amazon Web Services account in the current Region. For more
1492
+ # information see [Configure Block Public Access for Amazon EMR][1] in
1493
+ # the *Amazon EMR Management Guide*.
1465
1494
  #
1466
1495
  #
1467
1496
  #
@@ -1628,12 +1657,12 @@ module Aws::EMR
1628
1657
  req.send_request(options)
1629
1658
  end
1630
1659
 
1631
- # Provides the status of all clusters visible to this account. Allows
1632
- # you to filter the list of clusters based on certain criteria; for
1633
- # example, filtering by cluster creation date and time or by status.
1634
- # This call returns a maximum of 50 clusters in unsorted order per call,
1635
- # but returns a marker to track the paging of the cluster list across
1636
- # multiple ListClusters calls.
1660
+ # Provides the status of all clusters visible to this Amazon Web
1661
+ # Services account. Allows you to filter the list of clusters based on
1662
+ # certain criteria; for example, filtering by cluster creation date and
1663
+ # time or by status. This call returns a maximum of 50 clusters in
1664
+ # unsorted order per call, but returns a marker to track the paging of
1665
+ # the cluster list across multiple ListClusters calls.
1637
1666
  #
1638
1667
  # @option params [Time,DateTime,Date,Integer,String] :created_after
1639
1668
  # The creation date and time beginning value filter for listing
@@ -2054,9 +2083,9 @@ module Aws::EMR
2054
2083
  # which is usually the case for the first request of ListReleaseLabels,
2055
2084
  # the first page of results are determined by other filtering parameters
2056
2085
  # or by the latest version. The `ListReleaseLabels` request fails if the
2057
- # identity (account ID) and all filtering parameters are different from
2058
- # the original request, or if the `NextToken` is expired or tampered
2059
- # with.
2086
+ # identity (Amazon Web Services account ID) and all filtering parameters
2087
+ # are different from the original request, or if the `NextToken` is
2088
+ # expired or tampered with.
2060
2089
  #
2061
2090
  # @option params [Integer] :max_results
2062
2091
  # Defines the maximum number of release labels to return in a single
@@ -2254,9 +2283,9 @@ module Aws::EMR
2254
2283
  req.send_request(options)
2255
2284
  end
2256
2285
 
2257
- # Returns a list of all Amazon EMR Studios associated with the account.
2258
- # The list includes details such as ID, Studio Access URL, and creation
2259
- # time for each Studio.
2286
+ # Returns a list of all Amazon EMR Studios associated with the Amazon
2287
+ # Web Services account. The list includes details such as ID, Studio
2288
+ # Access URL, and creation time for each Studio.
2260
2289
  #
2261
2290
  # @option params [String] :marker
2262
2291
  # The pagination token that indicates the set of results to retrieve.
@@ -2530,10 +2559,47 @@ module Aws::EMR
2530
2559
  req.send_request(options)
2531
2560
  end
2532
2561
 
2562
+ # Creates or updates an auto-termination policy for an Amazon EMR
2563
+ # cluster. An auto-termination policy defines the amount of idle time in
2564
+ # seconds after which a cluster automatically terminates. For
2565
+ # alternative cluster termination options, see [Control cluster
2566
+ # termination][1].
2567
+ #
2568
+ #
2569
+ #
2570
+ # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html
2571
+ #
2572
+ # @option params [required, String] :cluster_id
2573
+ # Specifies the ID of the Amazon EMR cluster to which the
2574
+ # auto-termination policy will be attached.
2575
+ #
2576
+ # @option params [Types::AutoTerminationPolicy] :auto_termination_policy
2577
+ # Specifies the auto-termination policy to attach to the cluster.
2578
+ #
2579
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2580
+ #
2581
+ # @example Request syntax with placeholder values
2582
+ #
2583
+ # resp = client.put_auto_termination_policy({
2584
+ # cluster_id: "ClusterId", # required
2585
+ # auto_termination_policy: {
2586
+ # idle_timeout: 1,
2587
+ # },
2588
+ # })
2589
+ #
2590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy AWS API Documentation
2591
+ #
2592
+ # @overload put_auto_termination_policy(params = {})
2593
+ # @param [Hash] params ({})
2594
+ def put_auto_termination_policy(params = {}, options = {})
2595
+ req = build_request(:put_auto_termination_policy, params)
2596
+ req.send_request(options)
2597
+ end
2598
+
2533
2599
  # Creates or updates an Amazon EMR block public access configuration for
2534
- # your account in the current Region. For more information see
2535
- # [Configure Block Public Access for Amazon EMR][1] in the *Amazon EMR
2536
- # Management Guide*.
2600
+ # your Amazon Web Services account in the current Region. For more
2601
+ # information see [Configure Block Public Access for Amazon EMR][1] in
2602
+ # the *Amazon EMR Management Guide*.
2537
2603
  #
2538
2604
  #
2539
2605
  #
@@ -2653,6 +2719,29 @@ module Aws::EMR
2653
2719
  req.send_request(options)
2654
2720
  end
2655
2721
 
2722
+ # Removes an auto-termination policy from an Amazon EMR cluster.
2723
+ #
2724
+ # @option params [required, String] :cluster_id
2725
+ # Specifies the ID of the Amazon EMR cluster from which the
2726
+ # auto-termination policy will be removed.
2727
+ #
2728
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2729
+ #
2730
+ # @example Request syntax with placeholder values
2731
+ #
2732
+ # resp = client.remove_auto_termination_policy({
2733
+ # cluster_id: "ClusterId", # required
2734
+ # })
2735
+ #
2736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy AWS API Documentation
2737
+ #
2738
+ # @overload remove_auto_termination_policy(params = {})
2739
+ # @param [Hash] params ({})
2740
+ def remove_auto_termination_policy(params = {}, options = {})
2741
+ req = build_request(:remove_auto_termination_policy, params)
2742
+ req.send_request(options)
2743
+ end
2744
+
2656
2745
  # Removes a managed scaling policy from a specified EMR cluster.
2657
2746
  #
2658
2747
  # @option params [required, String] :cluster_id
@@ -2865,17 +2954,18 @@ module Aws::EMR
2865
2954
  # supplied for the EMR cluster you are creating.
2866
2955
  #
2867
2956
  # @option params [Boolean] :visible_to_all_users
2868
- # Set this value to `true` so that IAM principals in the account
2869
- # associated with the cluster can perform EMR actions on the cluster
2870
- # that their IAM policies allow. This value defaults to `true` for
2871
- # clusters created using the EMR API or the CLI [create-cluster][1]
2872
- # command.
2957
+ # Set this value to `true` so that IAM principals in the Amazon Web
2958
+ # Services account associated with the cluster can perform EMR actions
2959
+ # on the cluster that their IAM policies allow. This value defaults to
2960
+ # `true` for clusters created using the EMR API or the CLI
2961
+ # [create-cluster][1] command.
2873
2962
  #
2874
2963
  # When set to `false`, only the IAM principal that created the cluster
2875
- # and the account root user can perform EMR actions for the cluster,
2876
- # regardless of the IAM permissions policies attached to other IAM
2877
- # principals. For more information, see [Understanding the EMR Cluster
2878
- # VisibleToAllUsers Setting][2] in the *Amazon EMRManagement Guide*.
2964
+ # and the Amazon Web Services account root user can perform EMR actions
2965
+ # for the cluster, regardless of the IAM permissions policies attached
2966
+ # to other IAM principals. For more information, see [Understanding the
2967
+ # EMR Cluster VisibleToAllUsers Setting][2] in the *Amazon EMRManagement
2968
+ # Guide*.
2879
2969
  #
2880
2970
  #
2881
2971
  #
@@ -2973,6 +3063,16 @@ module Aws::EMR
2973
3063
  # @option params [Array<Types::PlacementGroupConfig>] :placement_group_configs
2974
3064
  # The specified placement group configuration for an Amazon EMR cluster.
2975
3065
  #
3066
+ # @option params [Types::AutoTerminationPolicy] :auto_termination_policy
3067
+ # An auto-termination policy for an Amazon EMR cluster. An
3068
+ # auto-termination policy defines the amount of idle time in seconds
3069
+ # after which a cluster automatically terminates. For alternative
3070
+ # cluster termination options, see [Control cluster termination][1].
3071
+ #
3072
+ #
3073
+ #
3074
+ # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html
3075
+ #
2976
3076
  # @return [Types::RunJobFlowOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2977
3077
  #
2978
3078
  # * {Types::RunJobFlowOutput#job_flow_id #job_flow_id} => String
@@ -3229,6 +3329,9 @@ module Aws::EMR
3229
3329
  # placement_strategy: "SPREAD", # accepts SPREAD, PARTITION, CLUSTER, NONE
3230
3330
  # },
3231
3331
  # ],
3332
+ # auto_termination_policy: {
3333
+ # idle_timeout: 1,
3334
+ # },
3232
3335
  # })
3233
3336
  #
3234
3337
  # @example Response structure
@@ -3299,11 +3402,11 @@ module Aws::EMR
3299
3402
  end
3300
3403
 
3301
3404
  # Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When
3302
- # `true`, IAM principals in the account can perform EMR cluster actions
3303
- # that their IAM policies allow. When `false`, only the IAM principal
3304
- # that created the cluster and the account root user can perform EMR
3305
- # actions on the cluster, regardless of IAM permissions policies
3306
- # attached to other IAM principals.
3405
+ # `true`, IAM principals in the Amazon Web Services account can perform
3406
+ # EMR cluster actions that their IAM policies allow. When `false`, only
3407
+ # the IAM principal that created the cluster and the Amazon Web Services
3408
+ # account root user can perform EMR actions on the cluster, regardless
3409
+ # of IAM permissions policies attached to other IAM principals.
3307
3410
  #
3308
3411
  # This action works on running clusters. When you create a cluster, use
3309
3412
  # the RunJobFlowInput$VisibleToAllUsers parameter.
@@ -3319,11 +3422,11 @@ module Aws::EMR
3319
3422
  # The unique identifier of the job flow (cluster).
3320
3423
  #
3321
3424
  # @option params [required, Boolean] :visible_to_all_users
3322
- # A value of `true` indicates that an IAM principal in the account can
3323
- # perform EMR actions on the cluster that the IAM policies attached to
3324
- # the principal allow. A value of `false` indicates that only the IAM
3325
- # principal that created the cluster and the Amazon Web Services root
3326
- # user can perform EMR actions on the cluster.
3425
+ # A value of `true` indicates that an IAM principal in the Amazon Web
3426
+ # Services account can perform EMR actions on the cluster that the IAM
3427
+ # policies attached to the principal allow. A value of `false` indicates
3428
+ # that only the IAM principal that created the cluster and the Amazon
3429
+ # Web Services root user can perform EMR actions on the cluster.
3327
3430
  #
3328
3431
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3329
3432
  #
@@ -3591,7 +3694,7 @@ module Aws::EMR
3591
3694
  params: params,
3592
3695
  config: config)
3593
3696
  context[:gem_name] = 'aws-sdk-emr'
3594
- context[:gem_version] = '1.49.0'
3697
+ context[:gem_version] = '1.50.0'
3595
3698
  Seahorse::Client::Request.new(handlers, context)
3596
3699
  end
3597
3700
 
@@ -33,6 +33,7 @@ module Aws::EMR
33
33
  AutoScalingPolicyStateChangeReason = Shapes::StructureShape.new(name: 'AutoScalingPolicyStateChangeReason')
34
34
  AutoScalingPolicyStateChangeReasonCode = Shapes::StringShape.new(name: 'AutoScalingPolicyStateChangeReasonCode')
35
35
  AutoScalingPolicyStatus = Shapes::StructureShape.new(name: 'AutoScalingPolicyStatus')
36
+ AutoTerminationPolicy = Shapes::StructureShape.new(name: 'AutoTerminationPolicy')
36
37
  BlockPublicAccessConfiguration = Shapes::StructureShape.new(name: 'BlockPublicAccessConfiguration')
37
38
  BlockPublicAccessConfigurationMetadata = Shapes::StructureShape.new(name: 'BlockPublicAccessConfigurationMetadata')
38
39
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
@@ -103,6 +104,8 @@ module Aws::EMR
103
104
  ExecutionEngineConfig = Shapes::StructureShape.new(name: 'ExecutionEngineConfig')
104
105
  ExecutionEngineType = Shapes::StringShape.new(name: 'ExecutionEngineType')
105
106
  FailureDetails = Shapes::StructureShape.new(name: 'FailureDetails')
107
+ GetAutoTerminationPolicyInput = Shapes::StructureShape.new(name: 'GetAutoTerminationPolicyInput')
108
+ GetAutoTerminationPolicyOutput = Shapes::StructureShape.new(name: 'GetAutoTerminationPolicyOutput')
106
109
  GetBlockPublicAccessConfigurationInput = Shapes::StructureShape.new(name: 'GetBlockPublicAccessConfigurationInput')
107
110
  GetBlockPublicAccessConfigurationOutput = Shapes::StructureShape.new(name: 'GetBlockPublicAccessConfigurationOutput')
108
111
  GetManagedScalingPolicyInput = Shapes::StructureShape.new(name: 'GetManagedScalingPolicyInput')
@@ -227,6 +230,8 @@ module Aws::EMR
227
230
  PortRanges = Shapes::ListShape.new(name: 'PortRanges')
228
231
  PutAutoScalingPolicyInput = Shapes::StructureShape.new(name: 'PutAutoScalingPolicyInput')
229
232
  PutAutoScalingPolicyOutput = Shapes::StructureShape.new(name: 'PutAutoScalingPolicyOutput')
233
+ PutAutoTerminationPolicyInput = Shapes::StructureShape.new(name: 'PutAutoTerminationPolicyInput')
234
+ PutAutoTerminationPolicyOutput = Shapes::StructureShape.new(name: 'PutAutoTerminationPolicyOutput')
230
235
  PutBlockPublicAccessConfigurationInput = Shapes::StructureShape.new(name: 'PutBlockPublicAccessConfigurationInput')
231
236
  PutBlockPublicAccessConfigurationOutput = Shapes::StructureShape.new(name: 'PutBlockPublicAccessConfigurationOutput')
232
237
  PutManagedScalingPolicyInput = Shapes::StructureShape.new(name: 'PutManagedScalingPolicyInput')
@@ -234,6 +239,8 @@ module Aws::EMR
234
239
  ReleaseLabelFilter = Shapes::StructureShape.new(name: 'ReleaseLabelFilter')
235
240
  RemoveAutoScalingPolicyInput = Shapes::StructureShape.new(name: 'RemoveAutoScalingPolicyInput')
236
241
  RemoveAutoScalingPolicyOutput = Shapes::StructureShape.new(name: 'RemoveAutoScalingPolicyOutput')
242
+ RemoveAutoTerminationPolicyInput = Shapes::StructureShape.new(name: 'RemoveAutoTerminationPolicyInput')
243
+ RemoveAutoTerminationPolicyOutput = Shapes::StructureShape.new(name: 'RemoveAutoTerminationPolicyOutput')
237
244
  RemoveManagedScalingPolicyInput = Shapes::StructureShape.new(name: 'RemoveManagedScalingPolicyInput')
238
245
  RemoveManagedScalingPolicyOutput = Shapes::StructureShape.new(name: 'RemoveManagedScalingPolicyOutput')
239
246
  RemoveTagsInput = Shapes::StructureShape.new(name: 'RemoveTagsInput')
@@ -364,6 +371,9 @@ module Aws::EMR
364
371
  AutoScalingPolicyStatus.add_member(:state_change_reason, Shapes::ShapeRef.new(shape: AutoScalingPolicyStateChangeReason, location_name: "StateChangeReason"))
365
372
  AutoScalingPolicyStatus.struct_class = Types::AutoScalingPolicyStatus
366
373
 
374
+ AutoTerminationPolicy.add_member(:idle_timeout, Shapes::ShapeRef.new(shape: Long, location_name: "IdleTimeout"))
375
+ AutoTerminationPolicy.struct_class = Types::AutoTerminationPolicy
376
+
367
377
  BlockPublicAccessConfiguration.add_member(:block_public_security_group_rules, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "BlockPublicSecurityGroupRules"))
368
378
  BlockPublicAccessConfiguration.add_member(:permitted_public_security_group_rule_ranges, Shapes::ShapeRef.new(shape: PortRanges, location_name: "PermittedPublicSecurityGroupRuleRanges"))
369
379
  BlockPublicAccessConfiguration.struct_class = Types::BlockPublicAccessConfiguration
@@ -635,6 +645,12 @@ module Aws::EMR
635
645
  FailureDetails.add_member(:log_file, Shapes::ShapeRef.new(shape: String, location_name: "LogFile"))
636
646
  FailureDetails.struct_class = Types::FailureDetails
637
647
 
648
+ GetAutoTerminationPolicyInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
649
+ GetAutoTerminationPolicyInput.struct_class = Types::GetAutoTerminationPolicyInput
650
+
651
+ GetAutoTerminationPolicyOutput.add_member(:auto_termination_policy, Shapes::ShapeRef.new(shape: AutoTerminationPolicy, location_name: "AutoTerminationPolicy"))
652
+ GetAutoTerminationPolicyOutput.struct_class = Types::GetAutoTerminationPolicyOutput
653
+
638
654
  GetBlockPublicAccessConfigurationInput.struct_class = Types::GetBlockPublicAccessConfigurationInput
639
655
 
640
656
  GetBlockPublicAccessConfigurationOutput.add_member(:block_public_access_configuration, Shapes::ShapeRef.new(shape: BlockPublicAccessConfiguration, required: true, location_name: "BlockPublicAccessConfiguration"))
@@ -1129,6 +1145,12 @@ module Aws::EMR
1129
1145
  PutAutoScalingPolicyOutput.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: ArnType, location_name: "ClusterArn"))
1130
1146
  PutAutoScalingPolicyOutput.struct_class = Types::PutAutoScalingPolicyOutput
1131
1147
 
1148
+ PutAutoTerminationPolicyInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
1149
+ PutAutoTerminationPolicyInput.add_member(:auto_termination_policy, Shapes::ShapeRef.new(shape: AutoTerminationPolicy, location_name: "AutoTerminationPolicy"))
1150
+ PutAutoTerminationPolicyInput.struct_class = Types::PutAutoTerminationPolicyInput
1151
+
1152
+ PutAutoTerminationPolicyOutput.struct_class = Types::PutAutoTerminationPolicyOutput
1153
+
1132
1154
  PutBlockPublicAccessConfigurationInput.add_member(:block_public_access_configuration, Shapes::ShapeRef.new(shape: BlockPublicAccessConfiguration, required: true, location_name: "BlockPublicAccessConfiguration"))
1133
1155
  PutBlockPublicAccessConfigurationInput.struct_class = Types::PutBlockPublicAccessConfigurationInput
1134
1156
 
@@ -1150,6 +1172,11 @@ module Aws::EMR
1150
1172
 
1151
1173
  RemoveAutoScalingPolicyOutput.struct_class = Types::RemoveAutoScalingPolicyOutput
1152
1174
 
1175
+ RemoveAutoTerminationPolicyInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
1176
+ RemoveAutoTerminationPolicyInput.struct_class = Types::RemoveAutoTerminationPolicyInput
1177
+
1178
+ RemoveAutoTerminationPolicyOutput.struct_class = Types::RemoveAutoTerminationPolicyOutput
1179
+
1153
1180
  RemoveManagedScalingPolicyInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
1154
1181
  RemoveManagedScalingPolicyInput.struct_class = Types::RemoveManagedScalingPolicyInput
1155
1182
 
@@ -1188,6 +1215,7 @@ module Aws::EMR
1188
1215
  RunJobFlowInput.add_member(:step_concurrency_level, Shapes::ShapeRef.new(shape: Integer, location_name: "StepConcurrencyLevel"))
1189
1216
  RunJobFlowInput.add_member(:managed_scaling_policy, Shapes::ShapeRef.new(shape: ManagedScalingPolicy, location_name: "ManagedScalingPolicy"))
1190
1217
  RunJobFlowInput.add_member(:placement_group_configs, Shapes::ShapeRef.new(shape: PlacementGroupConfigList, location_name: "PlacementGroupConfigs"))
1218
+ RunJobFlowInput.add_member(:auto_termination_policy, Shapes::ShapeRef.new(shape: AutoTerminationPolicy, location_name: "AutoTerminationPolicy"))
1191
1219
  RunJobFlowInput.struct_class = Types::RunJobFlowInput
1192
1220
 
1193
1221
  RunJobFlowOutput.add_member(:job_flow_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, location_name: "JobFlowId"))
@@ -1613,6 +1641,14 @@ module Aws::EMR
1613
1641
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1614
1642
  end)
1615
1643
 
1644
+ api.add_operation(:get_auto_termination_policy, Seahorse::Model::Operation.new.tap do |o|
1645
+ o.name = "GetAutoTerminationPolicy"
1646
+ o.http_method = "POST"
1647
+ o.http_request_uri = "/"
1648
+ o.input = Shapes::ShapeRef.new(shape: GetAutoTerminationPolicyInput)
1649
+ o.output = Shapes::ShapeRef.new(shape: GetAutoTerminationPolicyOutput)
1650
+ end)
1651
+
1616
1652
  api.add_operation(:get_block_public_access_configuration, Seahorse::Model::Operation.new.tap do |o|
1617
1653
  o.name = "GetBlockPublicAccessConfiguration"
1618
1654
  o.http_method = "POST"
@@ -1844,6 +1880,14 @@ module Aws::EMR
1844
1880
  o.output = Shapes::ShapeRef.new(shape: PutAutoScalingPolicyOutput)
1845
1881
  end)
1846
1882
 
1883
+ api.add_operation(:put_auto_termination_policy, Seahorse::Model::Operation.new.tap do |o|
1884
+ o.name = "PutAutoTerminationPolicy"
1885
+ o.http_method = "POST"
1886
+ o.http_request_uri = "/"
1887
+ o.input = Shapes::ShapeRef.new(shape: PutAutoTerminationPolicyInput)
1888
+ o.output = Shapes::ShapeRef.new(shape: PutAutoTerminationPolicyOutput)
1889
+ end)
1890
+
1847
1891
  api.add_operation(:put_block_public_access_configuration, Seahorse::Model::Operation.new.tap do |o|
1848
1892
  o.name = "PutBlockPublicAccessConfiguration"
1849
1893
  o.http_method = "POST"
@@ -1870,6 +1914,14 @@ module Aws::EMR
1870
1914
  o.output = Shapes::ShapeRef.new(shape: RemoveAutoScalingPolicyOutput)
1871
1915
  end)
1872
1916
 
1917
+ api.add_operation(:remove_auto_termination_policy, Seahorse::Model::Operation.new.tap do |o|
1918
+ o.name = "RemoveAutoTerminationPolicy"
1919
+ o.http_method = "POST"
1920
+ o.http_request_uri = "/"
1921
+ o.input = Shapes::ShapeRef.new(shape: RemoveAutoTerminationPolicyInput)
1922
+ o.output = Shapes::ShapeRef.new(shape: RemoveAutoTerminationPolicyOutput)
1923
+ end)
1924
+
1873
1925
  api.add_operation(:remove_managed_scaling_policy, Seahorse::Model::Operation.new.tap do |o|
1874
1926
  o.name = "RemoveManagedScalingPolicy"
1875
1927
  o.http_method = "POST"
@@ -533,6 +533,36 @@ module Aws::EMR
533
533
  include Aws::Structure
534
534
  end
535
535
 
536
+ # An auto-termination policy for an Amazon EMR cluster. An
537
+ # auto-termination policy defines the amount of idle time in seconds
538
+ # after which a cluster automatically terminates. For alternative
539
+ # cluster termination options, see [Control cluster termination][1].
540
+ #
541
+ #
542
+ #
543
+ # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html
544
+ #
545
+ # @note When making an API call, you may pass AutoTerminationPolicy
546
+ # data as a hash:
547
+ #
548
+ # {
549
+ # idle_timeout: 1,
550
+ # }
551
+ #
552
+ # @!attribute [rw] idle_timeout
553
+ # Specifies the amount of idle time in seconds after which the cluster
554
+ # automatically terminates. You can specify a minimum of 60 seconds
555
+ # and a maximum of 604800 seconds (seven days).
556
+ # @return [Integer]
557
+ #
558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AutoTerminationPolicy AWS API Documentation
559
+ #
560
+ class AutoTerminationPolicy < Struct.new(
561
+ :idle_timeout)
562
+ SENSITIVE = []
563
+ include Aws::Structure
564
+ end
565
+
536
566
  # A configuration for Amazon EMR block public access. When
537
567
  # `BlockPublicSecurityGroupRules` is set to `true`, Amazon EMR prevents
538
568
  # cluster creation if one of the cluster's security groups has a rule
@@ -894,20 +924,22 @@ module Aws::EMR
894
924
  #
895
925
  # @!attribute [rw] visible_to_all_users
896
926
  # Indicates whether the cluster is visible to IAM principals in the
897
- # account associated with the cluster. When `true`, IAM principals in
898
- # the account can perform EMR cluster actions on the cluster that
899
- # their IAM policies allow. When `false`, only the IAM principal that
900
- # created the cluster and the account root user can perform EMR
927
+ # Amazon Web Services account associated with the cluster. When
928
+ # `true`, IAM principals in the Amazon Web Services account can
929
+ # perform EMR cluster actions on the cluster that their IAM policies
930
+ # allow. When `false`, only the IAM principal that created the cluster
931
+ # and the Amazon Web Services account root user can perform EMR
901
932
  # actions, regardless of IAM permissions policies attached to other
902
933
  # IAM principals.
903
934
  #
904
935
  # The default value is `true` if a value is not provided when creating
905
936
  # a cluster using the EMR API RunJobFlow command, the CLI
906
- # [create-cluster][1] command, or the Management Console. IAM
907
- # principals that are allowed to perform actions on the cluster can
908
- # use the SetVisibleToAllUsers action to change the value on a running
909
- # cluster. For more information, see [Understanding the EMR Cluster
910
- # VisibleToAllUsers Setting][2] in the *Amazon EMRManagement Guide*.
937
+ # [create-cluster][1] command, or the Amazon Web Services Management
938
+ # Console. IAM principals that are allowed to perform actions on the
939
+ # cluster can use the SetVisibleToAllUsers action to change the value
940
+ # on a running cluster. For more information, see [Understanding the
941
+ # EMR Cluster VisibleToAllUsers Setting][2] in the *Amazon
942
+ # EMRManagement Guide*.
911
943
  #
912
944
  #
913
945
  #
@@ -2225,6 +2257,39 @@ module Aws::EMR
2225
2257
  include Aws::Structure
2226
2258
  end
2227
2259
 
2260
+ # @note When making an API call, you may pass GetAutoTerminationPolicyInput
2261
+ # data as a hash:
2262
+ #
2263
+ # {
2264
+ # cluster_id: "ClusterId", # required
2265
+ # }
2266
+ #
2267
+ # @!attribute [rw] cluster_id
2268
+ # Specifies the ID of the Amazon EMR cluster for which the
2269
+ # auto-termination policy will be fetched.
2270
+ # @return [String]
2271
+ #
2272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicyInput AWS API Documentation
2273
+ #
2274
+ class GetAutoTerminationPolicyInput < Struct.new(
2275
+ :cluster_id)
2276
+ SENSITIVE = []
2277
+ include Aws::Structure
2278
+ end
2279
+
2280
+ # @!attribute [rw] auto_termination_policy
2281
+ # Specifies the auto-termination policy that is attached to an Amazon
2282
+ # EMR cluster.
2283
+ # @return [Types::AutoTerminationPolicy]
2284
+ #
2285
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicyOutput AWS API Documentation
2286
+ #
2287
+ class GetAutoTerminationPolicyOutput < Struct.new(
2288
+ :auto_termination_policy)
2289
+ SENSITIVE = []
2290
+ include Aws::Structure
2291
+ end
2292
+
2228
2293
  # @api private
2229
2294
  #
2230
2295
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfigurationInput AWS API Documentation
@@ -3854,19 +3919,22 @@ module Aws::EMR
3854
3919
  #
3855
3920
  # @!attribute [rw] visible_to_all_users
3856
3921
  # Indicates whether the cluster is visible to IAM principals in the
3857
- # account associated with the cluster. When `true`, IAM principals in
3858
- # the account can perform EMR cluster actions that their IAM policies
3859
- # allow. When `false`, only the IAM principal that created the cluster
3860
- # and the account root user can perform EMR actions, regardless of IAM
3861
- # permissions policies attached to other IAM principals.
3922
+ # Amazon Web Services account associated with the cluster. When
3923
+ # `true`, IAM principals in the Amazon Web Services account can
3924
+ # perform EMR cluster actions that their IAM policies allow. When
3925
+ # `false`, only the IAM principal that created the cluster and the
3926
+ # Amazon Web Services account root user can perform EMR actions,
3927
+ # regardless of IAM permissions policies attached to other IAM
3928
+ # principals.
3862
3929
  #
3863
3930
  # The default value is `true` if a value is not provided when creating
3864
3931
  # a cluster using the EMR API RunJobFlow command, the CLI
3865
- # [create-cluster][1] command, or the Management Console. IAM
3866
- # principals that are authorized to perform actions on the cluster can
3867
- # use the SetVisibleToAllUsers action to change the value on a running
3868
- # cluster. For more information, see [Understanding the EMR Cluster
3869
- # VisibleToAllUsers Setting][2] in the *Amazon EMRManagement Guide*.
3932
+ # [create-cluster][1] command, or the Amazon Web Services Management
3933
+ # Console. IAM principals that are authorized to perform actions on
3934
+ # the cluster can use the SetVisibleToAllUsers action to change the
3935
+ # value on a running cluster. For more information, see [Understanding
3936
+ # the EMR Cluster VisibleToAllUsers Setting][2] in the *Amazon
3937
+ # EMRManagement Guide*.
3870
3938
  #
3871
3939
  #
3872
3940
  #
@@ -4844,9 +4912,10 @@ module Aws::EMR
4844
4912
  # which is usually the case for the first request of
4845
4913
  # ListReleaseLabels, the first page of results are determined by other
4846
4914
  # filtering parameters or by the latest version. The
4847
- # `ListReleaseLabels` request fails if the identity (account ID) and
4848
- # all filtering parameters are different from the original request, or
4849
- # if the `NextToken` is expired or tampered with.
4915
+ # `ListReleaseLabels` request fails if the identity (Amazon Web
4916
+ # Services account ID) and all filtering parameters are different from
4917
+ # the original request, or if the `NextToken` is expired or tampered
4918
+ # with.
4850
4919
  # @return [String]
4851
4920
  #
4852
4921
  # @!attribute [rw] max_results
@@ -5755,6 +5824,38 @@ module Aws::EMR
5755
5824
  include Aws::Structure
5756
5825
  end
5757
5826
 
5827
+ # @note When making an API call, you may pass PutAutoTerminationPolicyInput
5828
+ # data as a hash:
5829
+ #
5830
+ # {
5831
+ # cluster_id: "ClusterId", # required
5832
+ # auto_termination_policy: {
5833
+ # idle_timeout: 1,
5834
+ # },
5835
+ # }
5836
+ #
5837
+ # @!attribute [rw] cluster_id
5838
+ # Specifies the ID of the Amazon EMR cluster to which the
5839
+ # auto-termination policy will be attached.
5840
+ # @return [String]
5841
+ #
5842
+ # @!attribute [rw] auto_termination_policy
5843
+ # Specifies the auto-termination policy to attach to the cluster.
5844
+ # @return [Types::AutoTerminationPolicy]
5845
+ #
5846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicyInput AWS API Documentation
5847
+ #
5848
+ class PutAutoTerminationPolicyInput < Struct.new(
5849
+ :cluster_id,
5850
+ :auto_termination_policy)
5851
+ SENSITIVE = []
5852
+ include Aws::Structure
5853
+ end
5854
+
5855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicyOutput AWS API Documentation
5856
+ #
5857
+ class PutAutoTerminationPolicyOutput < Aws::EmptyStructure; end
5858
+
5758
5859
  # @note When making an API call, you may pass PutBlockPublicAccessConfigurationInput
5759
5860
  # data as a hash:
5760
5861
  #
@@ -5902,6 +6003,30 @@ module Aws::EMR
5902
6003
  #
5903
6004
  class RemoveAutoScalingPolicyOutput < Aws::EmptyStructure; end
5904
6005
 
6006
+ # @note When making an API call, you may pass RemoveAutoTerminationPolicyInput
6007
+ # data as a hash:
6008
+ #
6009
+ # {
6010
+ # cluster_id: "ClusterId", # required
6011
+ # }
6012
+ #
6013
+ # @!attribute [rw] cluster_id
6014
+ # Specifies the ID of the Amazon EMR cluster from which the
6015
+ # auto-termination policy will be removed.
6016
+ # @return [String]
6017
+ #
6018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicyInput AWS API Documentation
6019
+ #
6020
+ class RemoveAutoTerminationPolicyInput < Struct.new(
6021
+ :cluster_id)
6022
+ SENSITIVE = []
6023
+ include Aws::Structure
6024
+ end
6025
+
6026
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicyOutput AWS API Documentation
6027
+ #
6028
+ class RemoveAutoTerminationPolicyOutput < Aws::EmptyStructure; end
6029
+
5905
6030
  # @note When making an API call, you may pass RemoveManagedScalingPolicyInput
5906
6031
  # data as a hash:
5907
6032
  #
@@ -6214,6 +6339,9 @@ module Aws::EMR
6214
6339
  # placement_strategy: "SPREAD", # accepts SPREAD, PARTITION, CLUSTER, NONE
6215
6340
  # },
6216
6341
  # ],
6342
+ # auto_termination_policy: {
6343
+ # idle_timeout: 1,
6344
+ # },
6217
6345
  # }
6218
6346
  #
6219
6347
  # @!attribute [rw] name
@@ -6345,17 +6473,18 @@ module Aws::EMR
6345
6473
  # @return [Array<Types::Configuration>]
6346
6474
  #
6347
6475
  # @!attribute [rw] visible_to_all_users
6348
- # Set this value to `true` so that IAM principals in the account
6349
- # associated with the cluster can perform EMR actions on the cluster
6350
- # that their IAM policies allow. This value defaults to `true` for
6351
- # clusters created using the EMR API or the CLI [create-cluster][1]
6352
- # command.
6476
+ # Set this value to `true` so that IAM principals in the Amazon Web
6477
+ # Services account associated with the cluster can perform EMR actions
6478
+ # on the cluster that their IAM policies allow. This value defaults to
6479
+ # `true` for clusters created using the EMR API or the CLI
6480
+ # [create-cluster][1] command.
6353
6481
  #
6354
6482
  # When set to `false`, only the IAM principal that created the cluster
6355
- # and the account root user can perform EMR actions for the cluster,
6356
- # regardless of the IAM permissions policies attached to other IAM
6357
- # principals. For more information, see [Understanding the EMR Cluster
6358
- # VisibleToAllUsers Setting][2] in the *Amazon EMRManagement Guide*.
6483
+ # and the Amazon Web Services account root user can perform EMR
6484
+ # actions for the cluster, regardless of the IAM permissions policies
6485
+ # attached to other IAM principals. For more information, see
6486
+ # [Understanding the EMR Cluster VisibleToAllUsers Setting][2] in the
6487
+ # *Amazon EMRManagement Guide*.
6359
6488
  #
6360
6489
  #
6361
6490
  #
@@ -6470,6 +6599,17 @@ module Aws::EMR
6470
6599
  # cluster.
6471
6600
  # @return [Array<Types::PlacementGroupConfig>]
6472
6601
  #
6602
+ # @!attribute [rw] auto_termination_policy
6603
+ # An auto-termination policy for an Amazon EMR cluster. An
6604
+ # auto-termination policy defines the amount of idle time in seconds
6605
+ # after which a cluster automatically terminates. For alternative
6606
+ # cluster termination options, see [Control cluster termination][1].
6607
+ #
6608
+ #
6609
+ #
6610
+ # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html
6611
+ # @return [Types::AutoTerminationPolicy]
6612
+ #
6473
6613
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlowInput AWS API Documentation
6474
6614
  #
6475
6615
  class RunJobFlowInput < Struct.new(
@@ -6499,7 +6639,8 @@ module Aws::EMR
6499
6639
  :kerberos_attributes,
6500
6640
  :step_concurrency_level,
6501
6641
  :managed_scaling_policy,
6502
- :placement_group_configs)
6642
+ :placement_group_configs,
6643
+ :auto_termination_policy)
6503
6644
  SENSITIVE = []
6504
6645
  include Aws::Structure
6505
6646
  end
@@ -6896,11 +7037,12 @@ module Aws::EMR
6896
7037
  # @return [Array<String>]
6897
7038
  #
6898
7039
  # @!attribute [rw] visible_to_all_users
6899
- # A value of `true` indicates that an IAM principal in the account can
6900
- # perform EMR actions on the cluster that the IAM policies attached to
6901
- # the principal allow. A value of `false` indicates that only the IAM
6902
- # principal that created the cluster and the Amazon Web Services root
6903
- # user can perform EMR actions on the cluster.
7040
+ # A value of `true` indicates that an IAM principal in the Amazon Web
7041
+ # Services account can perform EMR actions on the cluster that the IAM
7042
+ # policies attached to the principal allow. A value of `false`
7043
+ # indicates that only the IAM principal that created the cluster and
7044
+ # the Amazon Web Services root user can perform EMR actions on the
7045
+ # cluster.
6904
7046
  # @return [Boolean]
6905
7047
  #
6906
7048
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsersInput AWS API Documentation
data/lib/aws-sdk-emr.rb CHANGED
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-emr/customizations'
49
49
  # @!group service
50
50
  module Aws::EMR
51
51
 
52
- GEM_VERSION = '1.49.0'
52
+ GEM_VERSION = '1.50.0'
53
53
 
54
54
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-emr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.49.0
4
+ version: 1.50.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: 2021-08-13 00:00:00.000000000 Z
11
+ date: 2021-08-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core