aws-sdk-emr 1.62.0 → 1.64.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: 4245e32c0b2ca5861d24917d4f1da2dcc6850bcc0a300239305dad34dcc4a915
4
- data.tar.gz: 024c44e94b82313c1c46a21a84726169a1777bc642941585a295338f853fce98
3
+ metadata.gz: 45ac152a94428ccf12ae327345ad526d0937e0c7a037c1da63badaf01402e9d8
4
+ data.tar.gz: ddb7336fafb63f8f37103e24aa92ba93f7afeb633488d801f99ed965a797916e
5
5
  SHA512:
6
- metadata.gz: 07b683666ec8cb1a7a930b45f68d7a1d5adbd5d34fb61b9651815265902a106a7ef5f0f32845863603b0ef97400e3bed856484d90d8eab8ba1572317d8094739
7
- data.tar.gz: 6a54b7d3032ba850643da1078882da4ef77f6ebb40b96680d4949f13c77f2f405d233b482118a50d8688584655446f6b696b2f92eba6560dbff7246015060cdb
6
+ metadata.gz: dfa2fd91df3df4f22716b25a061543baf7ef6294247efe1d8e53d90a543f502983685f2be44ea10ee30aacad504e5d098fed7622e0d9c80a2807a271a5ae5068
7
+ data.tar.gz: 3c3af5fabddaf261c5d6b0fe6fab17182945a1f1ddc8c006bf33e1952f1a8b7570fcae95c50faebd6112c9d11d3ab49e96579e4854cb2cb6f8d060a37b0791a1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2022-12-29)
5
+ ------------------
6
+
7
+ * Feature - Added GetClusterSessionCredentials API to allow Amazon SageMaker Studio to connect to EMR on EC2 clusters with runtime roles and AWS Lake Formation-based access control for Apache Spark, Apache Hive, and Presto queries.
8
+
9
+ 1.63.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.62.0 (2022-06-30)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.62.0
1
+ 1.64.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:emr)
@@ -79,8 +79,9 @@ module Aws::EMR
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::EMR::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::EMR
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::EMR
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::EMR::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::EMR::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -574,9 +591,7 @@ module Aws::EMR
574
591
  # complex, you may require more than 256 steps to process your data. You
575
592
  # can bypass the 256-step limitation in various ways, including using
576
593
  # SSH to connect to the master node and submitting queries directly to
577
- # the software running on the master node, such as Hive and Hadoop. For
578
- # more information on how to do this, see [Add More than 256 Steps to a
579
- # Cluster][1] in the *Amazon EMR Management Guide*.
594
+ # the software running on the master node, such as Hive and Hadoop.
580
595
  #
581
596
  # A step specifies the location of a JAR file stored either on the
582
597
  # master node of the cluster or in Amazon S3. Each step is performed by
@@ -597,10 +612,6 @@ module Aws::EMR
597
612
  #
598
613
  # </note>
599
614
  #
600
- #
601
- #
602
- # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html
603
- #
604
615
  # @option params [required, String] :job_flow_id
605
616
  # A string that uniquely identifies the job flow. This identifier is
606
617
  # returned by RunJobFlow and can also be obtained from ListClusters.
@@ -802,8 +813,8 @@ module Aws::EMR
802
813
  # A detailed description of the Amazon EMR Studio.
803
814
  #
804
815
  # @option params [required, String] :auth_mode
805
- # Specifies whether the Studio authenticates users using IAM or Amazon
806
- # Web Services SSO.
816
+ # Specifies whether the Studio authenticates users using IAM or IAM
817
+ # Identity Center.
807
818
  #
808
819
  # @option params [required, String] :vpc_id
809
820
  # The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate
@@ -822,10 +833,9 @@ module Aws::EMR
822
833
  #
823
834
  # @option params [String] :user_role
824
835
  # The IAM user role that users and groups assume when logged in to an
825
- # Amazon EMR Studio. Only specify a `UserRole` when you use Amazon Web
826
- # Services SSO authentication. The permissions attached to the
827
- # `UserRole` can be scoped down for each user or group using session
828
- # policies.
836
+ # Amazon EMR Studio. Only specify a `UserRole` when you use IAM Identity
837
+ # Center authentication. The permissions attached to the `UserRole` can
838
+ # be scoped down for each user or group using session policies.
829
839
  #
830
840
  # @option params [required, String] :workspace_security_group_id
831
841
  # The ID of the Amazon EMR Studio Workspace security group. The
@@ -907,7 +917,7 @@ module Aws::EMR
907
917
  # Maps a user or group to the Amazon EMR Studio specified by `StudioId`,
908
918
  # and applies a session policy to refine Studio permissions for that
909
919
  # user or group. Use `CreateStudioSessionMapping` to assign users to a
910
- # Studio when you use Amazon Web Services SSO authentication. For
920
+ # Studio when you use IAM Identity Center authentication. For
911
921
  # instructions on how to assign users to a Studio when you use IAM
912
922
  # authentication, see [Assign a user or group to your EMR Studio][1].
913
923
  #
@@ -921,8 +931,8 @@ module Aws::EMR
921
931
  #
922
932
  # @option params [String] :identity_id
923
933
  # The globally unique identifier (GUID) of the user or group from the
924
- # Amazon Web Services SSO Identity Store. For more information, see
925
- # [UserId][1] and [GroupId][2] in the *Amazon Web Services SSO Identity
934
+ # IAM Identity Center Identity Store. For more information, see
935
+ # [UserId][1] and [GroupId][2] in the *IAM Identity Center Identity
926
936
  # Store API Reference*. Either `IdentityName` or `IdentityId` must be
927
937
  # specified, but not both.
928
938
  #
@@ -933,9 +943,9 @@ module Aws::EMR
933
943
  #
934
944
  # @option params [String] :identity_name
935
945
  # The name of the user or group. For more information, see [UserName][1]
936
- # and [DisplayName][2] in the *Amazon Web Services SSO Identity Store
937
- # API Reference*. Either `IdentityName` or `IdentityId` must be
938
- # specified, but not both.
946
+ # and [DisplayName][2] in the *IAM Identity Center Identity Store API
947
+ # Reference*. Either `IdentityName` or `IdentityId` must be specified,
948
+ # but not both.
939
949
  #
940
950
  #
941
951
  #
@@ -1030,7 +1040,7 @@ module Aws::EMR
1030
1040
  # @option params [String] :identity_id
1031
1041
  # The globally unique identifier (GUID) of the user or group to remove
1032
1042
  # from the Amazon EMR Studio. For more information, see [UserId][1] and
1033
- # [GroupId][2] in the *Amazon Web Services SSO Identity Store API
1043
+ # [GroupId][2] in the *IAM Identity Center Identity Store API
1034
1044
  # Reference*. Either `IdentityName` or `IdentityId` must be specified.
1035
1045
  #
1036
1046
  #
@@ -1041,7 +1051,7 @@ module Aws::EMR
1041
1051
  # @option params [String] :identity_name
1042
1052
  # The name of the user name or group to remove from the Amazon EMR
1043
1053
  # Studio. For more information, see [UserName][1] and [DisplayName][2]
1044
- # in the *Amazon Web Services SSO Store API Reference*. Either
1054
+ # in the *IAM Identity Center Store API Reference*. Either
1045
1055
  # `IdentityName` or `IdentityId` must be specified.
1046
1056
  #
1047
1057
  #
@@ -1592,6 +1602,49 @@ module Aws::EMR
1592
1602
  req.send_request(options)
1593
1603
  end
1594
1604
 
1605
+ # Provides Temporary, basic HTTP credentials that are associated with a
1606
+ # given runtime IAM role and used by a cluster with fine-grained access
1607
+ # control activated. You can use these credentials to connect to cluster
1608
+ # endpoints that support username-based and password-based
1609
+ # authentication.
1610
+ #
1611
+ # @option params [required, String] :cluster_id
1612
+ # The unique identifier of the cluster.
1613
+ #
1614
+ # @option params [required, String] :execution_role_arn
1615
+ # The Amazon Resource Name (ARN) of the runtime role for interactive
1616
+ # workload submission on the cluster. The runtime role can be a
1617
+ # cross-account IAM role. The runtime role ARN is a combination of
1618
+ # account ID, role name, and role type using the following format:
1619
+ # `arn:partition:service:region:account:resource`.
1620
+ #
1621
+ # @return [Types::GetClusterSessionCredentialsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1622
+ #
1623
+ # * {Types::GetClusterSessionCredentialsOutput#credentials #credentials} => Types::Credentials
1624
+ # * {Types::GetClusterSessionCredentialsOutput#expires_at #expires_at} => Time
1625
+ #
1626
+ # @example Request syntax with placeholder values
1627
+ #
1628
+ # resp = client.get_cluster_session_credentials({
1629
+ # cluster_id: "XmlStringMaxLen256", # required
1630
+ # execution_role_arn: "ArnType", # required
1631
+ # })
1632
+ #
1633
+ # @example Response structure
1634
+ #
1635
+ # resp.credentials.username_password.username #=> String
1636
+ # resp.credentials.username_password.password #=> String
1637
+ # resp.expires_at #=> Time
1638
+ #
1639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetClusterSessionCredentials AWS API Documentation
1640
+ #
1641
+ # @overload get_cluster_session_credentials(params = {})
1642
+ # @param [Hash] params ({})
1643
+ def get_cluster_session_credentials(params = {}, options = {})
1644
+ req = build_request(:get_cluster_session_credentials, params)
1645
+ req.send_request(options)
1646
+ end
1647
+
1595
1648
  # Fetches the attached managed scaling policy for an Amazon EMR cluster.
1596
1649
  #
1597
1650
  # @option params [required, String] :cluster_id
@@ -1633,8 +1686,8 @@ module Aws::EMR
1633
1686
  #
1634
1687
  # @option params [String] :identity_id
1635
1688
  # The globally unique identifier (GUID) of the user or group. For more
1636
- # information, see [UserId][1] and [GroupId][2] in the *Amazon Web
1637
- # Services SSO Identity Store API Reference*. Either `IdentityName` or
1689
+ # information, see [UserId][1] and [GroupId][2] in the *IAM Identity
1690
+ # Center Identity Store API Reference*. Either `IdentityName` or
1638
1691
  # `IdentityId` must be specified.
1639
1692
  #
1640
1693
  #
@@ -1644,7 +1697,7 @@ module Aws::EMR
1644
1697
  #
1645
1698
  # @option params [String] :identity_name
1646
1699
  # The name of the user or group to fetch. For more information, see
1647
- # [UserName][1] and [DisplayName][2] in the *Amazon Web Services SSO
1700
+ # [UserName][1] and [DisplayName][2] in the *IAM Identity Center
1648
1701
  # Identity Store API Reference*. Either `IdentityName` or `IdentityId`
1649
1702
  # must be specified.
1650
1703
  #
@@ -2906,10 +2959,9 @@ module Aws::EMR
2906
2959
  # can bypass the 256-step limitation in various ways, including using
2907
2960
  # the SSH shell to connect to the master node and submitting queries
2908
2961
  # directly to the software running on the master node, such as Hive and
2909
- # Hadoop. For more information on how to do this, see [Add More than 256
2910
- # Steps to a Cluster][1] in the *Amazon EMR Management Guide*.
2962
+ # Hadoop.
2911
2963
  #
2912
- # For long running clusters, we recommend that you periodically store
2964
+ # For long-running clusters, we recommend that you periodically store
2913
2965
  # your results.
2914
2966
  #
2915
2967
  # <note markdown="1"> The instance fleets configuration is available only in Amazon EMR
@@ -2919,10 +2971,6 @@ module Aws::EMR
2919
2971
  #
2920
2972
  # </note>
2921
2973
  #
2922
- #
2923
- #
2924
- # [1]: https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html
2925
- #
2926
2974
  # @option params [required, String] :name
2927
2975
  # The name of the job flow.
2928
2976
  #
@@ -3067,7 +3115,9 @@ module Aws::EMR
3067
3115
  #
3068
3116
  # @option params [String] :service_role
3069
3117
  # The IAM role that Amazon EMR assumes in order to access Amazon Web
3070
- # Services resources on your behalf.
3118
+ # Services resources on your behalf. If you've created a custom service
3119
+ # role path, you must specify it for the service role when you launch
3120
+ # your cluster.
3071
3121
  #
3072
3122
  # @option params [Array<Types::Tag>] :tags
3073
3123
  # A list of tags to associate with a cluster and propagate to Amazon EC2
@@ -3734,8 +3784,8 @@ module Aws::EMR
3734
3784
  #
3735
3785
  # @option params [String] :identity_id
3736
3786
  # The globally unique identifier (GUID) of the user or group. For more
3737
- # information, see [UserId][1] and [GroupId][2] in the *Amazon Web
3738
- # Services SSO Identity Store API Reference*. Either `IdentityName` or
3787
+ # information, see [UserId][1] and [GroupId][2] in the *IAM Identity
3788
+ # Center Identity Store API Reference*. Either `IdentityName` or
3739
3789
  # `IdentityId` must be specified.
3740
3790
  #
3741
3791
  #
@@ -3745,7 +3795,7 @@ module Aws::EMR
3745
3795
  #
3746
3796
  # @option params [String] :identity_name
3747
3797
  # The name of the user or group to update. For more information, see
3748
- # [UserName][1] and [DisplayName][2] in the *Amazon Web Services SSO
3798
+ # [UserName][1] and [DisplayName][2] in the *IAM Identity Center
3749
3799
  # Identity Store API Reference*. Either `IdentityName` or `IdentityId`
3750
3800
  # must be specified.
3751
3801
  #
@@ -3795,7 +3845,7 @@ module Aws::EMR
3795
3845
  params: params,
3796
3846
  config: config)
3797
3847
  context[:gem_name] = 'aws-sdk-emr'
3798
- context[:gem_version] = '1.62.0'
3848
+ context[:gem_version] = '1.64.0'
3799
3849
  Seahorse::Client::Request.new(handlers, context)
3800
3850
  end
3801
3851
 
@@ -70,6 +70,7 @@ module Aws::EMR
70
70
  CreateStudioInput = Shapes::StructureShape.new(name: 'CreateStudioInput')
71
71
  CreateStudioOutput = Shapes::StructureShape.new(name: 'CreateStudioOutput')
72
72
  CreateStudioSessionMappingInput = Shapes::StructureShape.new(name: 'CreateStudioSessionMappingInput')
73
+ Credentials = Shapes::UnionShape.new(name: 'Credentials')
73
74
  Date = Shapes::TimestampShape.new(name: 'Date')
74
75
  DeleteSecurityConfigurationInput = Shapes::StructureShape.new(name: 'DeleteSecurityConfigurationInput')
75
76
  DeleteSecurityConfigurationOutput = Shapes::StructureShape.new(name: 'DeleteSecurityConfigurationOutput')
@@ -108,6 +109,8 @@ module Aws::EMR
108
109
  GetAutoTerminationPolicyOutput = Shapes::StructureShape.new(name: 'GetAutoTerminationPolicyOutput')
109
110
  GetBlockPublicAccessConfigurationInput = Shapes::StructureShape.new(name: 'GetBlockPublicAccessConfigurationInput')
110
111
  GetBlockPublicAccessConfigurationOutput = Shapes::StructureShape.new(name: 'GetBlockPublicAccessConfigurationOutput')
112
+ GetClusterSessionCredentialsInput = Shapes::StructureShape.new(name: 'GetClusterSessionCredentialsInput')
113
+ GetClusterSessionCredentialsOutput = Shapes::StructureShape.new(name: 'GetClusterSessionCredentialsOutput')
111
114
  GetManagedScalingPolicyInput = Shapes::StructureShape.new(name: 'GetManagedScalingPolicyInput')
112
115
  GetManagedScalingPolicyOutput = Shapes::StructureShape.new(name: 'GetManagedScalingPolicyOutput')
113
116
  GetStudioSessionMappingInput = Shapes::StructureShape.new(name: 'GetStudioSessionMappingInput')
@@ -312,6 +315,7 @@ module Aws::EMR
312
315
  Unit = Shapes::StringShape.new(name: 'Unit')
313
316
  UpdateStudioInput = Shapes::StructureShape.new(name: 'UpdateStudioInput')
314
317
  UpdateStudioSessionMappingInput = Shapes::StructureShape.new(name: 'UpdateStudioSessionMappingInput')
318
+ UsernamePassword = Shapes::StructureShape.new(name: 'UsernamePassword')
315
319
  VolumeSpecification = Shapes::StructureShape.new(name: 'VolumeSpecification')
316
320
  WholeNumber = Shapes::IntegerShape.new(name: 'WholeNumber')
317
321
  XmlString = Shapes::StringShape.new(name: 'XmlString')
@@ -538,6 +542,12 @@ module Aws::EMR
538
542
  CreateStudioSessionMappingInput.add_member(:session_policy_arn, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, required: true, location_name: "SessionPolicyArn"))
539
543
  CreateStudioSessionMappingInput.struct_class = Types::CreateStudioSessionMappingInput
540
544
 
545
+ Credentials.add_member(:username_password, Shapes::ShapeRef.new(shape: UsernamePassword, location_name: "UsernamePassword"))
546
+ Credentials.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
547
+ Credentials.add_member_subclass(:username_password, Types::Credentials::UsernamePassword)
548
+ Credentials.add_member_subclass(:unknown, Types::Credentials::Unknown)
549
+ Credentials.struct_class = Types::Credentials
550
+
541
551
  DeleteSecurityConfigurationInput.add_member(:name, Shapes::ShapeRef.new(shape: XmlString, required: true, location_name: "Name"))
542
552
  DeleteSecurityConfigurationInput.struct_class = Types::DeleteSecurityConfigurationInput
543
553
 
@@ -666,6 +676,14 @@ module Aws::EMR
666
676
  GetBlockPublicAccessConfigurationOutput.add_member(:block_public_access_configuration_metadata, Shapes::ShapeRef.new(shape: BlockPublicAccessConfigurationMetadata, required: true, location_name: "BlockPublicAccessConfigurationMetadata"))
667
677
  GetBlockPublicAccessConfigurationOutput.struct_class = Types::GetBlockPublicAccessConfigurationOutput
668
678
 
679
+ GetClusterSessionCredentialsInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, required: true, location_name: "ClusterId"))
680
+ GetClusterSessionCredentialsInput.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: ArnType, required: true, location_name: "ExecutionRoleArn"))
681
+ GetClusterSessionCredentialsInput.struct_class = Types::GetClusterSessionCredentialsInput
682
+
683
+ GetClusterSessionCredentialsOutput.add_member(:credentials, Shapes::ShapeRef.new(shape: Credentials, location_name: "Credentials"))
684
+ GetClusterSessionCredentialsOutput.add_member(:expires_at, Shapes::ShapeRef.new(shape: Date, location_name: "ExpiresAt"))
685
+ GetClusterSessionCredentialsOutput.struct_class = Types::GetClusterSessionCredentialsOutput
686
+
669
687
  GetManagedScalingPolicyInput.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
670
688
  GetManagedScalingPolicyInput.struct_class = Types::GetManagedScalingPolicyInput
671
689
 
@@ -1455,6 +1473,10 @@ module Aws::EMR
1455
1473
  UpdateStudioSessionMappingInput.add_member(:session_policy_arn, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, required: true, location_name: "SessionPolicyArn"))
1456
1474
  UpdateStudioSessionMappingInput.struct_class = Types::UpdateStudioSessionMappingInput
1457
1475
 
1476
+ UsernamePassword.add_member(:username, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, location_name: "Username"))
1477
+ UsernamePassword.add_member(:password, Shapes::ShapeRef.new(shape: XmlStringMaxLen256, location_name: "Password"))
1478
+ UsernamePassword.struct_class = Types::UsernamePassword
1479
+
1458
1480
  VolumeSpecification.add_member(:volume_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "VolumeType"))
1459
1481
  VolumeSpecification.add_member(:iops, Shapes::ShapeRef.new(shape: Integer, location_name: "Iops"))
1460
1482
  VolumeSpecification.add_member(:size_in_gb, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "SizeInGB"))
@@ -1680,6 +1702,16 @@ module Aws::EMR
1680
1702
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1681
1703
  end)
1682
1704
 
1705
+ api.add_operation(:get_cluster_session_credentials, Seahorse::Model::Operation.new.tap do |o|
1706
+ o.name = "GetClusterSessionCredentials"
1707
+ o.http_method = "POST"
1708
+ o.http_request_uri = "/"
1709
+ o.input = Shapes::ShapeRef.new(shape: GetClusterSessionCredentialsInput)
1710
+ o.output = Shapes::ShapeRef.new(shape: GetClusterSessionCredentialsOutput)
1711
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1712
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1713
+ end)
1714
+
1683
1715
  api.add_operation(:get_managed_scaling_policy, Seahorse::Model::Operation.new.tap do |o|
1684
1716
  o.name = "GetManagedScalingPolicy"
1685
1717
  o.http_method = "POST"
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::EMR
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
56
+ self[:use_dual_stack] = options[:use_dual_stack]
57
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
+ if self[:use_dual_stack].nil?
59
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
60
+ end
61
+ self[:use_fips] = options[:use_fips]
62
+ self[:use_fips] = false if self[:use_fips].nil?
63
+ if self[:use_fips].nil?
64
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
65
+ end
66
+ self[:endpoint] = options[:endpoint]
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::EMR
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
33
+ YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
34
+ ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
35
+ aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
36
+ ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
37
+ IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
38
+ bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
39
+ aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
40
+ IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
41
+ IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
42
+ aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
43
+ Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
44
+ cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
45
+ bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
46
+ YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
47
+ bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
48
+ ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
49
+ IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
50
+ b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
51
+ ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
52
+ dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
53
+ c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfV0sInR5cGUiOiJ0
54
+ cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
55
+ dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJlcnJv
56
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRklQUyBhbmQgY3VzdG9tIGVu
57
+ ZHBvaW50IGFyZSBub3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJj
58
+ b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
59
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
60
+ VXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZp
61
+ Z3VyYXRpb246IER1YWxzdGFjayBhbmQgY3VzdG9tIGVuZHBvaW50IGFyZSBu
62
+ b3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJjb25kaXRpb25zIjpb
63
+ XSwiZW5kcG9pbnQiOnsidXJsIjp7InJlZiI6IkVuZHBvaW50In0sInByb3Bl
64
+ cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
65
+ fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
66
+ Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX0seyJmbiI6ImJvb2xlYW5FcXVh
67
+ bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
68
+ eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
69
+ b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
70
+ Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
71
+ XX1dfSx7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
72
+ OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
73
+ InN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVz
74
+ IjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6
75
+ Ly9lbGFzdGljbWFwcmVkdWNlLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJl
76
+ c3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhl
77
+ YWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMi
78
+ OltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFjayBhcmUgZW5hYmxlZCwg
79
+ YnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgb25lIG9yIGJv
80
+ dGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJi
81
+ b29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVd
82
+ fV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZu
83
+ IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRy
84
+ IiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRz
85
+ RklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
86
+ cyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7
87
+ ImZuIjoic3RyaW5nRXF1YWxzIiwiYXJndiI6WyJhd3MtdXMtZ292Iix7ImZu
88
+ IjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9
89
+ LCJuYW1lIl19XX1dLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2VsYXN0
90
+ aWNtYXByZWR1Y2Uue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZm
91
+ aXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVu
92
+ ZHBvaW50In0seyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoi
93
+ aHR0cHM6Ly9lbGFzdGljbWFwcmVkdWNlLWZpcHMue1JlZ2lvbn0ue1BhcnRp
94
+ dGlvblJlc3VsdCNkbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRl
95
+ cnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6
96
+ W10sImVycm9yIjoiRklQUyBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlv
97
+ biBkb2VzIG5vdCBzdXBwb3J0IEZJUFMiLCJ0eXBlIjoiZXJyb3IifV19LHsi
98
+ Y29uZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3si
99
+ cmVmIjoiVXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJy
100
+ dWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwi
101
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
102
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
103
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
104
+ dCI6eyJ1cmwiOiJodHRwczovL2VsYXN0aWNtYXByZWR1Y2Uue1JlZ2lvbn0u
105
+ e1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVy
106
+ dGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7
107
+ ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkR1YWxTdGFjayBpcyBlbmFibGVk
108
+ IGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IER1YWxTdGFj
109
+ ayIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpbXSwiZW5kcG9p
110
+ bnQiOnsidXJsIjoiaHR0cHM6Ly9lbGFzdGljbWFwcmVkdWNlLntSZWdpb259
111
+ LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9
112
+ LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
113
+
114
+ JSON
115
+ end
116
+ end