aws-sdk-emr 1.49.0 → 1.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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