aws-sdk-emrcontainers 1.0.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 7849bea7ad59e518e623db16b5f3f8302c38944fdd42b8986c5a6502f892a8f2
4
+ data.tar.gz: 5712fc1085112a19ce0faa4ea0c05e109db9250d65f487180f8667b510cd99e5
5
+ SHA512:
6
+ metadata.gz: 1ed8a6c94a516532885a0a03e6e5641981e471a7c37b87ff9c9cda00b5a6aa00856bd1154c75f209ffb74365a9fb465169c3ce27e3375657d8d3ac962e7b2558
7
+ data.tar.gz: cd7b50e8a411f72ff23fe9970e57d5f9eb39c194dd9f7767064fb848b492a75d5d4bbbce43061d3a27779b9323eb7b7346d330636fe98a87fe1eff0df83456ad
@@ -0,0 +1,53 @@
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/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ require 'aws-sdk-core'
12
+ require 'aws-sigv4'
13
+
14
+ require_relative 'aws-sdk-emrcontainers/types'
15
+ require_relative 'aws-sdk-emrcontainers/client_api'
16
+ require_relative 'aws-sdk-emrcontainers/client'
17
+ require_relative 'aws-sdk-emrcontainers/errors'
18
+ require_relative 'aws-sdk-emrcontainers/resource'
19
+ require_relative 'aws-sdk-emrcontainers/customizations'
20
+
21
+ # This module provides support for Amazon EMR Containers. This module is available in the
22
+ # `aws-sdk-emrcontainers` gem.
23
+ #
24
+ # # Client
25
+ #
26
+ # The {Client} class provides one method for each API operation. Operation
27
+ # methods each accept a hash of request parameters and return a response
28
+ # structure.
29
+ #
30
+ # emr_containers = Aws::EMRContainers::Client.new
31
+ # resp = emr_containers.cancel_job_run(params)
32
+ #
33
+ # See {Client} for more information.
34
+ #
35
+ # # Errors
36
+ #
37
+ # Errors returned from Amazon EMR Containers are defined in the
38
+ # {Errors} module and all extend {Errors::ServiceError}.
39
+ #
40
+ # begin
41
+ # # do stuff
42
+ # rescue Aws::EMRContainers::Errors::ServiceError
43
+ # # rescues all Amazon EMR Containers API errors
44
+ # end
45
+ #
46
+ # See {Errors} for more information.
47
+ #
48
+ # @!group service
49
+ module Aws::EMRContainers
50
+
51
+ GEM_VERSION = '1.0.0'
52
+
53
+ end
@@ -0,0 +1,1221 @@
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/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/signature_v4.rb'
31
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
+
33
+ Aws::Plugins::GlobalConfiguration.add_identifier(:emrcontainers)
34
+
35
+ module Aws::EMRContainers
36
+ # An API client for EMRContainers. To construct a client, you need to configure a `:region` and `:credentials`.
37
+ #
38
+ # client = Aws::EMRContainers::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
43
+ #
44
+ # For details on configuring region and credentials see
45
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
46
+ #
47
+ # See {#initialize} for a full list of supported configuration options.
48
+ class Client < Seahorse::Client::Base
49
+
50
+ include Aws::ClientStubs
51
+
52
+ @identifier = :emrcontainers
53
+
54
+ set_api(ClientApi::API)
55
+
56
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
57
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
58
+ add_plugin(Aws::Plugins::Logging)
59
+ add_plugin(Aws::Plugins::ParamConverter)
60
+ add_plugin(Aws::Plugins::ParamValidator)
61
+ add_plugin(Aws::Plugins::UserAgent)
62
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
63
+ add_plugin(Aws::Plugins::RetryErrors)
64
+ add_plugin(Aws::Plugins::GlobalConfiguration)
65
+ add_plugin(Aws::Plugins::RegionalEndpoint)
66
+ add_plugin(Aws::Plugins::EndpointDiscovery)
67
+ add_plugin(Aws::Plugins::EndpointPattern)
68
+ add_plugin(Aws::Plugins::ResponsePaging)
69
+ add_plugin(Aws::Plugins::StubResponses)
70
+ add_plugin(Aws::Plugins::IdempotencyToken)
71
+ add_plugin(Aws::Plugins::JsonvalueConverter)
72
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
73
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
+ add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
76
+ add_plugin(Aws::Plugins::SignatureV4)
77
+ add_plugin(Aws::Plugins::Protocols::RestJson)
78
+
79
+ # @overload initialize(options)
80
+ # @param [Hash] options
81
+ # @option options [required, Aws::CredentialProvider] :credentials
82
+ # Your AWS credentials. This can be an instance of any one of the
83
+ # following classes:
84
+ #
85
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
+ # credentials.
87
+ #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
102
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
103
+ # from an EC2 IMDS on an EC2 instance.
104
+ #
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
107
+ #
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
110
+ #
111
+ # When `:credentials` are not configured directly, the following
112
+ # locations will be searched for credentials:
113
+ #
114
+ # * `Aws.config[:credentials]`
115
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
116
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
117
+ # * `~/.aws/credentials`
118
+ # * `~/.aws/config`
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
123
+ #
124
+ # @option options [required, String] :region
125
+ # The AWS region to connect to. The configured `:region` is
126
+ # used to determine the service `:endpoint`. When not passed,
127
+ # a default `:region` is searched for in the following locations:
128
+ #
129
+ # * `Aws.config[:region]`
130
+ # * `ENV['AWS_REGION']`
131
+ # * `ENV['AMAZON_REGION']`
132
+ # * `ENV['AWS_DEFAULT_REGION']`
133
+ # * `~/.aws/credentials`
134
+ # * `~/.aws/config`
135
+ #
136
+ # @option options [String] :access_key_id
137
+ #
138
+ # @option options [Boolean] :active_endpoint_cache (false)
139
+ # When set to `true`, a thread polling for endpoints will be running in
140
+ # the background every 60 secs (default). Defaults to `false`.
141
+ #
142
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
143
+ # Used only in `adaptive` retry mode. When true, the request will sleep
144
+ # until there is sufficent client side capacity to retry the request.
145
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
146
+ # not retry instead of sleeping.
147
+ #
148
+ # @option options [Boolean] :client_side_monitoring (false)
149
+ # When `true`, client-side metrics will be collected for all API requests from
150
+ # this client.
151
+ #
152
+ # @option options [String] :client_side_monitoring_client_id ("")
153
+ # Allows you to provide an identifier for this client which will be attached to
154
+ # all generated client side metrics. Defaults to an empty string.
155
+ #
156
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
157
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
158
+ # side monitoring agent is running on, where client metrics will be published via UDP.
159
+ #
160
+ # @option options [Integer] :client_side_monitoring_port (31000)
161
+ # Required for publishing client metrics. The port that the client side monitoring
162
+ # agent is running on, where client metrics will be published via UDP.
163
+ #
164
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
165
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
166
+ # will use the Client Side Monitoring Agent Publisher.
167
+ #
168
+ # @option options [Boolean] :convert_params (true)
169
+ # When `true`, an attempt is made to coerce request parameters into
170
+ # the required types.
171
+ #
172
+ # @option options [Boolean] :correct_clock_skew (true)
173
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
+ # a clock skew correction and retry requests with skewed client clocks.
175
+ #
176
+ # @option options [Boolean] :disable_host_prefix_injection (false)
177
+ # Set to true to disable SDK automatically adding host prefix
178
+ # to default service endpoint when available.
179
+ #
180
+ # @option options [String] :endpoint
181
+ # The client endpoint is normally constructed from the `:region`
182
+ # option. You should only configure an `:endpoint` when connecting
183
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
184
+ #
185
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
186
+ # Used for the maximum size limit of the LRU cache storing endpoints data
187
+ # for endpoint discovery enabled operations. Defaults to 1000.
188
+ #
189
+ # @option options [Integer] :endpoint_cache_max_threads (10)
190
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
191
+ #
192
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
193
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
194
+ # Use this option to config the time interval in seconds for making
195
+ # requests fetching endpoints information. Defaults to 60 sec.
196
+ #
197
+ # @option options [Boolean] :endpoint_discovery (false)
198
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
199
+ #
200
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
201
+ # The log formatter.
202
+ #
203
+ # @option options [Symbol] :log_level (:info)
204
+ # The log level to send messages to the `:logger` at.
205
+ #
206
+ # @option options [Logger] :logger
207
+ # The Logger instance to send log messages to. If this option
208
+ # is not set, logging will be disabled.
209
+ #
210
+ # @option options [Integer] :max_attempts (3)
211
+ # An integer representing the maximum number attempts that will be made for
212
+ # a single request, including the initial attempt. For example,
213
+ # setting this value to 5 will result in a request being retried up to
214
+ # 4 times. Used in `standard` and `adaptive` retry modes.
215
+ #
216
+ # @option options [String] :profile ("default")
217
+ # Used when loading credentials from the shared credentials file
218
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
219
+ #
220
+ # @option options [Proc] :retry_backoff
221
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
222
+ # This option is only used in the `legacy` retry mode.
223
+ #
224
+ # @option options [Float] :retry_base_delay (0.3)
225
+ # The base delay in seconds used by the default backoff function. This option
226
+ # is only used in the `legacy` retry mode.
227
+ #
228
+ # @option options [Symbol] :retry_jitter (:none)
229
+ # A delay randomiser function used by the default backoff function.
230
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
231
+ # otherwise a Proc that takes and returns a number. This option is only used
232
+ # in the `legacy` retry mode.
233
+ #
234
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
235
+ #
236
+ # @option options [Integer] :retry_limit (3)
237
+ # The maximum number of times to retry failed requests. Only
238
+ # ~ 500 level server errors and certain ~ 400 level client errors
239
+ # are retried. Generally, these are throttling errors, data
240
+ # checksum errors, networking errors, timeout errors, auth errors,
241
+ # endpoint discovery, and errors from expired credentials.
242
+ # This option is only used in the `legacy` retry mode.
243
+ #
244
+ # @option options [Integer] :retry_max_delay (0)
245
+ # The maximum number of seconds to delay between retries (0 for no limit)
246
+ # used by the default backoff function. This option is only used in the
247
+ # `legacy` retry mode.
248
+ #
249
+ # @option options [String] :retry_mode ("legacy")
250
+ # Specifies which retry algorithm to use. Values are:
251
+ #
252
+ # * `legacy` - The pre-existing retry behavior. This is default value if
253
+ # no retry mode is provided.
254
+ #
255
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
256
+ # This includes support for retry quotas, which limit the number of
257
+ # unsuccessful retries a client can make.
258
+ #
259
+ # * `adaptive` - An experimental retry mode that includes all the
260
+ # functionality of `standard` mode along with automatic client side
261
+ # throttling. This is a provisional mode that may change behavior
262
+ # in the future.
263
+ #
264
+ #
265
+ # @option options [String] :secret_access_key
266
+ #
267
+ # @option options [String] :session_token
268
+ #
269
+ # @option options [Boolean] :stub_responses (false)
270
+ # Causes the client to return stubbed responses. By default
271
+ # fake responses are generated and returned. You can specify
272
+ # the response data to return or errors to raise by calling
273
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
274
+ #
275
+ # ** Please note ** When response stubbing is enabled, no HTTP
276
+ # requests are made, and retries are disabled.
277
+ #
278
+ # @option options [Boolean] :validate_params (true)
279
+ # When `true`, request parameters are validated before
280
+ # sending the request.
281
+ #
282
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
283
+ # requests through. Formatted like 'http://proxy.com:123'.
284
+ #
285
+ # @option options [Float] :http_open_timeout (15) The number of
286
+ # seconds to wait when opening a HTTP session before raising a
287
+ # `Timeout::Error`.
288
+ #
289
+ # @option options [Integer] :http_read_timeout (60) The default
290
+ # number of seconds to wait for response data. This value can
291
+ # safely be set per-request on the session.
292
+ #
293
+ # @option options [Float] :http_idle_timeout (5) The number of
294
+ # seconds a connection is allowed to sit idle before it is
295
+ # considered stale. Stale connections are closed and removed
296
+ # from the pool before making a request.
297
+ #
298
+ # @option options [Float] :http_continue_timeout (1) The number of
299
+ # seconds to wait for a 100-continue response before sending the
300
+ # request body. This option has no effect unless the request has
301
+ # "Expect" header set to "100-continue". Defaults to `nil` which
302
+ # disables this behaviour. This value can safely be set per
303
+ # request on the session.
304
+ #
305
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
306
+ # HTTP debug output will be sent to the `:logger`.
307
+ #
308
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
309
+ # SSL peer certificates are verified when establishing a
310
+ # connection.
311
+ #
312
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
313
+ # certificate authority bundle file that should be used when
314
+ # verifying peer certificates. If you do not pass
315
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
316
+ # will be used if available.
317
+ #
318
+ # @option options [String] :ssl_ca_directory Full path of the
319
+ # directory that contains the unbundled SSL certificate
320
+ # authority files for verifying peer certificates. If you do
321
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
322
+ # system default will be used if available.
323
+ #
324
+ def initialize(*args)
325
+ super
326
+ end
327
+
328
+ # @!group API Operations
329
+
330
+ # Cancels a job run. A job run is a unit of work, such as a Spark jar,
331
+ # PySpark script, or SparkSQL query, that you submit to Amazon EMR on
332
+ # EKS.
333
+ #
334
+ # @option params [required, String] :id
335
+ # The ID of the job run to cancel.
336
+ #
337
+ # @option params [required, String] :virtual_cluster_id
338
+ # The ID of the virtual cluster for which the job run will be canceled.
339
+ #
340
+ # @return [Types::CancelJobRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
341
+ #
342
+ # * {Types::CancelJobRunResponse#id #id} => String
343
+ # * {Types::CancelJobRunResponse#virtual_cluster_id #virtual_cluster_id} => String
344
+ #
345
+ # @example Request syntax with placeholder values
346
+ #
347
+ # resp = client.cancel_job_run({
348
+ # id: "ResourceIdString", # required
349
+ # virtual_cluster_id: "ResourceIdString", # required
350
+ # })
351
+ #
352
+ # @example Response structure
353
+ #
354
+ # resp.id #=> String
355
+ # resp.virtual_cluster_id #=> String
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/CancelJobRun AWS API Documentation
358
+ #
359
+ # @overload cancel_job_run(params = {})
360
+ # @param [Hash] params ({})
361
+ def cancel_job_run(params = {}, options = {})
362
+ req = build_request(:cancel_job_run, params)
363
+ req.send_request(options)
364
+ end
365
+
366
+ # Creates a managed endpoint. A managed endpoint is a gateway that
367
+ # connects EMR Studio to Amazon EMR on EKS so that EMR Studio can
368
+ # communicate with your virtual cluster.
369
+ #
370
+ # @option params [required, String] :name
371
+ # The name of the managed endpoint.
372
+ #
373
+ # @option params [required, String] :virtual_cluster_id
374
+ # The ID of the virtual cluster for which a managed endpoint is created.
375
+ #
376
+ # @option params [required, String] :type
377
+ # The type of the managed endpoint.
378
+ #
379
+ # @option params [required, String] :release_label
380
+ # The Amazon EMR release version.
381
+ #
382
+ # @option params [required, String] :execution_role_arn
383
+ # The ARN of the execution role.
384
+ #
385
+ # @option params [required, String] :certificate_arn
386
+ # The certificate ARN of the managed endpoint.
387
+ #
388
+ # @option params [Types::ConfigurationOverrides] :configuration_overrides
389
+ # The configuration settings that will be used to override existing
390
+ # configurations.
391
+ #
392
+ # @option params [required, String] :client_token
393
+ # The client idempotency token for this create call.
394
+ #
395
+ # **A suitable default value is auto-generated.** You should normally
396
+ # not need to pass this option.**
397
+ #
398
+ # @option params [Hash<String,String>] :tags
399
+ # The tags of the managed endpoint.
400
+ #
401
+ # @return [Types::CreateManagedEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
402
+ #
403
+ # * {Types::CreateManagedEndpointResponse#id #id} => String
404
+ # * {Types::CreateManagedEndpointResponse#name #name} => String
405
+ # * {Types::CreateManagedEndpointResponse#arn #arn} => String
406
+ # * {Types::CreateManagedEndpointResponse#virtual_cluster_id #virtual_cluster_id} => String
407
+ #
408
+ # @example Request syntax with placeholder values
409
+ #
410
+ # resp = client.create_managed_endpoint({
411
+ # name: "ResourceNameString", # required
412
+ # virtual_cluster_id: "ResourceIdString", # required
413
+ # type: "EndpointType", # required
414
+ # release_label: "ReleaseLabel", # required
415
+ # execution_role_arn: "IAMRoleArn", # required
416
+ # certificate_arn: "ACMCertArn", # required
417
+ # configuration_overrides: {
418
+ # application_configuration: [
419
+ # {
420
+ # classification: "String1024", # required
421
+ # properties: {
422
+ # "String1024" => "String1024",
423
+ # },
424
+ # configurations: {
425
+ # # recursive ConfigurationList
426
+ # },
427
+ # },
428
+ # ],
429
+ # monitoring_configuration: {
430
+ # persistent_app_ui: "ENABLED", # accepts ENABLED, DISABLED
431
+ # cloud_watch_monitoring_configuration: {
432
+ # log_group_name: "LogGroupName", # required
433
+ # log_stream_name_prefix: "String256",
434
+ # },
435
+ # s3_monitoring_configuration: {
436
+ # log_uri: "UriString", # required
437
+ # },
438
+ # },
439
+ # },
440
+ # client_token: "ClientToken", # required
441
+ # tags: {
442
+ # "String128" => "StringEmpty256",
443
+ # },
444
+ # })
445
+ #
446
+ # @example Response structure
447
+ #
448
+ # resp.id #=> String
449
+ # resp.name #=> String
450
+ # resp.arn #=> String
451
+ # resp.virtual_cluster_id #=> String
452
+ #
453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/CreateManagedEndpoint AWS API Documentation
454
+ #
455
+ # @overload create_managed_endpoint(params = {})
456
+ # @param [Hash] params ({})
457
+ def create_managed_endpoint(params = {}, options = {})
458
+ req = build_request(:create_managed_endpoint, params)
459
+ req.send_request(options)
460
+ end
461
+
462
+ # Creates a virtual cluster. Virtual cluster is a managed entity on
463
+ # Amazon EMR on EKS. You can create, describe, list and delete virtual
464
+ # clusters. They do not consume any additional resource in your system.
465
+ # A single virtual cluster maps to a single Kubernetes namespace. Given
466
+ # this relationship, you can model virtual clusters the same way you
467
+ # model Kubernetes namespaces to meet your requirements.
468
+ #
469
+ # @option params [required, String] :name
470
+ # The specified name of the virtual cluster.
471
+ #
472
+ # @option params [required, Types::ContainerProvider] :container_provider
473
+ # The container provider of the virtual cluster.
474
+ #
475
+ # @option params [required, String] :client_token
476
+ # The client token of the virtual cluster.
477
+ #
478
+ # **A suitable default value is auto-generated.** You should normally
479
+ # not need to pass this option.**
480
+ #
481
+ # @option params [Hash<String,String>] :tags
482
+ # The tags assigned to the virtual cluster.
483
+ #
484
+ # @return [Types::CreateVirtualClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
485
+ #
486
+ # * {Types::CreateVirtualClusterResponse#id #id} => String
487
+ # * {Types::CreateVirtualClusterResponse#name #name} => String
488
+ # * {Types::CreateVirtualClusterResponse#arn #arn} => String
489
+ #
490
+ # @example Request syntax with placeholder values
491
+ #
492
+ # resp = client.create_virtual_cluster({
493
+ # name: "ResourceNameString", # required
494
+ # container_provider: { # required
495
+ # type: "EKS", # required, accepts EKS
496
+ # id: "String256", # required
497
+ # info: {
498
+ # eks_info: {
499
+ # namespace: "String256",
500
+ # },
501
+ # },
502
+ # },
503
+ # client_token: "ClientToken", # required
504
+ # tags: {
505
+ # "String128" => "StringEmpty256",
506
+ # },
507
+ # })
508
+ #
509
+ # @example Response structure
510
+ #
511
+ # resp.id #=> String
512
+ # resp.name #=> String
513
+ # resp.arn #=> String
514
+ #
515
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/CreateVirtualCluster AWS API Documentation
516
+ #
517
+ # @overload create_virtual_cluster(params = {})
518
+ # @param [Hash] params ({})
519
+ def create_virtual_cluster(params = {}, options = {})
520
+ req = build_request(:create_virtual_cluster, params)
521
+ req.send_request(options)
522
+ end
523
+
524
+ # Deletes a managed endpoint. A managed endpoint is a gateway that
525
+ # connects EMR Studio to Amazon EMR on EKS so that EMR Studio can
526
+ # communicate with your virtual cluster.
527
+ #
528
+ # @option params [required, String] :id
529
+ # The ID of the managed endpoint.
530
+ #
531
+ # @option params [required, String] :virtual_cluster_id
532
+ # The ID of the endpoint's virtual cluster.
533
+ #
534
+ # @return [Types::DeleteManagedEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
535
+ #
536
+ # * {Types::DeleteManagedEndpointResponse#id #id} => String
537
+ # * {Types::DeleteManagedEndpointResponse#virtual_cluster_id #virtual_cluster_id} => String
538
+ #
539
+ # @example Request syntax with placeholder values
540
+ #
541
+ # resp = client.delete_managed_endpoint({
542
+ # id: "ResourceIdString", # required
543
+ # virtual_cluster_id: "ResourceIdString", # required
544
+ # })
545
+ #
546
+ # @example Response structure
547
+ #
548
+ # resp.id #=> String
549
+ # resp.virtual_cluster_id #=> String
550
+ #
551
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DeleteManagedEndpoint AWS API Documentation
552
+ #
553
+ # @overload delete_managed_endpoint(params = {})
554
+ # @param [Hash] params ({})
555
+ def delete_managed_endpoint(params = {}, options = {})
556
+ req = build_request(:delete_managed_endpoint, params)
557
+ req.send_request(options)
558
+ end
559
+
560
+ # Deletes a virtual cluster. Virtual cluster is a managed entity on
561
+ # Amazon EMR on EKS. You can create, describe, list and delete virtual
562
+ # clusters. They do not consume any additional resource in your system.
563
+ # A single virtual cluster maps to a single Kubernetes namespace. Given
564
+ # this relationship, you can model virtual clusters the same way you
565
+ # model Kubernetes namespaces to meet your requirements.
566
+ #
567
+ # @option params [required, String] :id
568
+ # The ID of the virtual cluster that will be deleted.
569
+ #
570
+ # @return [Types::DeleteVirtualClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
571
+ #
572
+ # * {Types::DeleteVirtualClusterResponse#id #id} => String
573
+ #
574
+ # @example Request syntax with placeholder values
575
+ #
576
+ # resp = client.delete_virtual_cluster({
577
+ # id: "ResourceIdString", # required
578
+ # })
579
+ #
580
+ # @example Response structure
581
+ #
582
+ # resp.id #=> String
583
+ #
584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DeleteVirtualCluster AWS API Documentation
585
+ #
586
+ # @overload delete_virtual_cluster(params = {})
587
+ # @param [Hash] params ({})
588
+ def delete_virtual_cluster(params = {}, options = {})
589
+ req = build_request(:delete_virtual_cluster, params)
590
+ req.send_request(options)
591
+ end
592
+
593
+ # Displays detailed information about a job run. A job run is a unit of
594
+ # work, such as a Spark jar, PySpark script, or SparkSQL query, that you
595
+ # submit to Amazon EMR on EKS.
596
+ #
597
+ # @option params [required, String] :id
598
+ # The ID of the job run request.
599
+ #
600
+ # @option params [required, String] :virtual_cluster_id
601
+ # The ID of the virtual cluster for which the job run is submitted.
602
+ #
603
+ # @return [Types::DescribeJobRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
604
+ #
605
+ # * {Types::DescribeJobRunResponse#job_run #job_run} => Types::JobRun
606
+ #
607
+ # @example Request syntax with placeholder values
608
+ #
609
+ # resp = client.describe_job_run({
610
+ # id: "ResourceIdString", # required
611
+ # virtual_cluster_id: "ResourceIdString", # required
612
+ # })
613
+ #
614
+ # @example Response structure
615
+ #
616
+ # resp.job_run.id #=> String
617
+ # resp.job_run.name #=> String
618
+ # resp.job_run.virtual_cluster_id #=> String
619
+ # resp.job_run.arn #=> String
620
+ # resp.job_run.state #=> String, one of "PENDING", "SUBMITTED", "RUNNING", "FAILED", "CANCELLED", "CANCEL_PENDING", "COMPLETED"
621
+ # resp.job_run.client_token #=> String
622
+ # resp.job_run.execution_role_arn #=> String
623
+ # resp.job_run.release_label #=> String
624
+ # resp.job_run.configuration_overrides.application_configuration #=> Array
625
+ # resp.job_run.configuration_overrides.application_configuration[0].classification #=> String
626
+ # resp.job_run.configuration_overrides.application_configuration[0].properties #=> Hash
627
+ # resp.job_run.configuration_overrides.application_configuration[0].properties["String1024"] #=> String
628
+ # resp.job_run.configuration_overrides.application_configuration[0].configurations #=> Types::ConfigurationList
629
+ # resp.job_run.configuration_overrides.monitoring_configuration.persistent_app_ui #=> String, one of "ENABLED", "DISABLED"
630
+ # resp.job_run.configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_group_name #=> String
631
+ # resp.job_run.configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_stream_name_prefix #=> String
632
+ # resp.job_run.configuration_overrides.monitoring_configuration.s3_monitoring_configuration.log_uri #=> String
633
+ # resp.job_run.job_driver.spark_submit_job_driver.entry_point #=> String
634
+ # resp.job_run.job_driver.spark_submit_job_driver.entry_point_arguments #=> Array
635
+ # resp.job_run.job_driver.spark_submit_job_driver.entry_point_arguments[0] #=> String
636
+ # resp.job_run.job_driver.spark_submit_job_driver.spark_submit_parameters #=> String
637
+ # resp.job_run.created_at #=> Time
638
+ # resp.job_run.created_by #=> String
639
+ # resp.job_run.finished_at #=> Time
640
+ # resp.job_run.state_details #=> String
641
+ # resp.job_run.failure_reason #=> String, one of "INTERNAL_ERROR", "USER_ERROR", "VALIDATION_ERROR", "CLUSTER_UNAVAILABLE"
642
+ # resp.job_run.tags #=> Hash
643
+ # resp.job_run.tags["String128"] #=> String
644
+ #
645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeJobRun AWS API Documentation
646
+ #
647
+ # @overload describe_job_run(params = {})
648
+ # @param [Hash] params ({})
649
+ def describe_job_run(params = {}, options = {})
650
+ req = build_request(:describe_job_run, params)
651
+ req.send_request(options)
652
+ end
653
+
654
+ # Displays detailed information about a managed endpoint. A managed
655
+ # endpoint is a gateway that connects EMR Studio to Amazon EMR on EKS so
656
+ # that EMR Studio can communicate with your virtual cluster.
657
+ #
658
+ # @option params [required, String] :id
659
+ # This output displays ID of the managed endpoint.
660
+ #
661
+ # @option params [required, String] :virtual_cluster_id
662
+ # The ID of the endpoint's virtual cluster.
663
+ #
664
+ # @return [Types::DescribeManagedEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
665
+ #
666
+ # * {Types::DescribeManagedEndpointResponse#endpoint #endpoint} => Types::Endpoint
667
+ #
668
+ # @example Request syntax with placeholder values
669
+ #
670
+ # resp = client.describe_managed_endpoint({
671
+ # id: "ResourceIdString", # required
672
+ # virtual_cluster_id: "ResourceIdString", # required
673
+ # })
674
+ #
675
+ # @example Response structure
676
+ #
677
+ # resp.endpoint.id #=> String
678
+ # resp.endpoint.name #=> String
679
+ # resp.endpoint.arn #=> String
680
+ # resp.endpoint.virtual_cluster_id #=> String
681
+ # resp.endpoint.type #=> String
682
+ # resp.endpoint.state #=> String, one of "CREATING", "ACTIVE", "TERMINATING", "TERMINATED", "TERMINATED_WITH_ERRORS"
683
+ # resp.endpoint.release_label #=> String
684
+ # resp.endpoint.execution_role_arn #=> String
685
+ # resp.endpoint.certificate_arn #=> String
686
+ # resp.endpoint.configuration_overrides.application_configuration #=> Array
687
+ # resp.endpoint.configuration_overrides.application_configuration[0].classification #=> String
688
+ # resp.endpoint.configuration_overrides.application_configuration[0].properties #=> Hash
689
+ # resp.endpoint.configuration_overrides.application_configuration[0].properties["String1024"] #=> String
690
+ # resp.endpoint.configuration_overrides.application_configuration[0].configurations #=> Types::ConfigurationList
691
+ # resp.endpoint.configuration_overrides.monitoring_configuration.persistent_app_ui #=> String, one of "ENABLED", "DISABLED"
692
+ # resp.endpoint.configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_group_name #=> String
693
+ # resp.endpoint.configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_stream_name_prefix #=> String
694
+ # resp.endpoint.configuration_overrides.monitoring_configuration.s3_monitoring_configuration.log_uri #=> String
695
+ # resp.endpoint.server_url #=> String
696
+ # resp.endpoint.created_at #=> Time
697
+ # resp.endpoint.security_group #=> String
698
+ # resp.endpoint.subnet_ids #=> Array
699
+ # resp.endpoint.subnet_ids[0] #=> String
700
+ # resp.endpoint.tags #=> Hash
701
+ # resp.endpoint.tags["String128"] #=> String
702
+ #
703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeManagedEndpoint AWS API Documentation
704
+ #
705
+ # @overload describe_managed_endpoint(params = {})
706
+ # @param [Hash] params ({})
707
+ def describe_managed_endpoint(params = {}, options = {})
708
+ req = build_request(:describe_managed_endpoint, params)
709
+ req.send_request(options)
710
+ end
711
+
712
+ # Displays detailed information about a specified virtual cluster.
713
+ # Virtual cluster is a managed entity on Amazon EMR on EKS. You can
714
+ # create, describe, list and delete virtual clusters. They do not
715
+ # consume any additional resource in your system. A single virtual
716
+ # cluster maps to a single Kubernetes namespace. Given this
717
+ # relationship, you can model virtual clusters the same way you model
718
+ # Kubernetes namespaces to meet your requirements.
719
+ #
720
+ # @option params [required, String] :id
721
+ # The ID of the virtual cluster that will be described.
722
+ #
723
+ # @return [Types::DescribeVirtualClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
724
+ #
725
+ # * {Types::DescribeVirtualClusterResponse#virtual_cluster #virtual_cluster} => Types::VirtualCluster
726
+ #
727
+ # @example Request syntax with placeholder values
728
+ #
729
+ # resp = client.describe_virtual_cluster({
730
+ # id: "ResourceIdString", # required
731
+ # })
732
+ #
733
+ # @example Response structure
734
+ #
735
+ # resp.virtual_cluster.id #=> String
736
+ # resp.virtual_cluster.name #=> String
737
+ # resp.virtual_cluster.arn #=> String
738
+ # resp.virtual_cluster.state #=> String, one of "RUNNING", "TERMINATING", "TERMINATED", "ARRESTED"
739
+ # resp.virtual_cluster.container_provider.type #=> String, one of "EKS"
740
+ # resp.virtual_cluster.container_provider.id #=> String
741
+ # resp.virtual_cluster.container_provider.info.eks_info.namespace #=> String
742
+ # resp.virtual_cluster.created_at #=> Time
743
+ # resp.virtual_cluster.tags #=> Hash
744
+ # resp.virtual_cluster.tags["String128"] #=> String
745
+ #
746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeVirtualCluster AWS API Documentation
747
+ #
748
+ # @overload describe_virtual_cluster(params = {})
749
+ # @param [Hash] params ({})
750
+ def describe_virtual_cluster(params = {}, options = {})
751
+ req = build_request(:describe_virtual_cluster, params)
752
+ req.send_request(options)
753
+ end
754
+
755
+ # Lists job runs based on a set of parameters. A job run is a unit of
756
+ # work, such as a Spark jar, PySpark script, or SparkSQL query, that you
757
+ # submit to Amazon EMR on EKS.
758
+ #
759
+ # @option params [required, String] :virtual_cluster_id
760
+ # The ID of the virtual cluster for which to list the job run.
761
+ #
762
+ # @option params [Time,DateTime,Date,Integer,String] :created_before
763
+ # The date and time before which the job runs were submitted.
764
+ #
765
+ # @option params [Time,DateTime,Date,Integer,String] :created_after
766
+ # The date and time after which the job runs were submitted.
767
+ #
768
+ # @option params [String] :name
769
+ # The name of the job run.
770
+ #
771
+ # @option params [Array<String>] :states
772
+ # The states of the job run.
773
+ #
774
+ # @option params [Integer] :max_results
775
+ # The maximum number of job runs that can be listed.
776
+ #
777
+ # @option params [String] :next_token
778
+ # The token for the next set of job runs to return.
779
+ #
780
+ # @return [Types::ListJobRunsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
781
+ #
782
+ # * {Types::ListJobRunsResponse#job_runs #job_runs} => Array&lt;Types::JobRun&gt;
783
+ # * {Types::ListJobRunsResponse#next_token #next_token} => String
784
+ #
785
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
786
+ #
787
+ # @example Request syntax with placeholder values
788
+ #
789
+ # resp = client.list_job_runs({
790
+ # virtual_cluster_id: "ResourceIdString", # required
791
+ # created_before: Time.now,
792
+ # created_after: Time.now,
793
+ # name: "ResourceNameString",
794
+ # states: ["PENDING"], # accepts PENDING, SUBMITTED, RUNNING, FAILED, CANCELLED, CANCEL_PENDING, COMPLETED
795
+ # max_results: 1,
796
+ # next_token: "NextToken",
797
+ # })
798
+ #
799
+ # @example Response structure
800
+ #
801
+ # resp.job_runs #=> Array
802
+ # resp.job_runs[0].id #=> String
803
+ # resp.job_runs[0].name #=> String
804
+ # resp.job_runs[0].virtual_cluster_id #=> String
805
+ # resp.job_runs[0].arn #=> String
806
+ # resp.job_runs[0].state #=> String, one of "PENDING", "SUBMITTED", "RUNNING", "FAILED", "CANCELLED", "CANCEL_PENDING", "COMPLETED"
807
+ # resp.job_runs[0].client_token #=> String
808
+ # resp.job_runs[0].execution_role_arn #=> String
809
+ # resp.job_runs[0].release_label #=> String
810
+ # resp.job_runs[0].configuration_overrides.application_configuration #=> Array
811
+ # resp.job_runs[0].configuration_overrides.application_configuration[0].classification #=> String
812
+ # resp.job_runs[0].configuration_overrides.application_configuration[0].properties #=> Hash
813
+ # resp.job_runs[0].configuration_overrides.application_configuration[0].properties["String1024"] #=> String
814
+ # resp.job_runs[0].configuration_overrides.application_configuration[0].configurations #=> Types::ConfigurationList
815
+ # resp.job_runs[0].configuration_overrides.monitoring_configuration.persistent_app_ui #=> String, one of "ENABLED", "DISABLED"
816
+ # resp.job_runs[0].configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_group_name #=> String
817
+ # resp.job_runs[0].configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_stream_name_prefix #=> String
818
+ # resp.job_runs[0].configuration_overrides.monitoring_configuration.s3_monitoring_configuration.log_uri #=> String
819
+ # resp.job_runs[0].job_driver.spark_submit_job_driver.entry_point #=> String
820
+ # resp.job_runs[0].job_driver.spark_submit_job_driver.entry_point_arguments #=> Array
821
+ # resp.job_runs[0].job_driver.spark_submit_job_driver.entry_point_arguments[0] #=> String
822
+ # resp.job_runs[0].job_driver.spark_submit_job_driver.spark_submit_parameters #=> String
823
+ # resp.job_runs[0].created_at #=> Time
824
+ # resp.job_runs[0].created_by #=> String
825
+ # resp.job_runs[0].finished_at #=> Time
826
+ # resp.job_runs[0].state_details #=> String
827
+ # resp.job_runs[0].failure_reason #=> String, one of "INTERNAL_ERROR", "USER_ERROR", "VALIDATION_ERROR", "CLUSTER_UNAVAILABLE"
828
+ # resp.job_runs[0].tags #=> Hash
829
+ # resp.job_runs[0].tags["String128"] #=> String
830
+ # resp.next_token #=> String
831
+ #
832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListJobRuns AWS API Documentation
833
+ #
834
+ # @overload list_job_runs(params = {})
835
+ # @param [Hash] params ({})
836
+ def list_job_runs(params = {}, options = {})
837
+ req = build_request(:list_job_runs, params)
838
+ req.send_request(options)
839
+ end
840
+
841
+ # Lists managed endpoints based on a set of parameters. A managed
842
+ # endpoint is a gateway that connects EMR Studio to Amazon EMR on EKS so
843
+ # that EMR Studio can communicate with your virtual cluster.
844
+ #
845
+ # @option params [required, String] :virtual_cluster_id
846
+ # The ID of the virtual cluster.
847
+ #
848
+ # @option params [Time,DateTime,Date,Integer,String] :created_before
849
+ # The date and time before which the endpoints are created.
850
+ #
851
+ # @option params [Time,DateTime,Date,Integer,String] :created_after
852
+ # The date and time after which the endpoints are created.
853
+ #
854
+ # @option params [Array<String>] :types
855
+ # The types of the managed endpoints.
856
+ #
857
+ # @option params [Array<String>] :states
858
+ # The states of the managed endpoints.
859
+ #
860
+ # @option params [Integer] :max_results
861
+ # The maximum number of managed endpoints that can be listed.
862
+ #
863
+ # @option params [String] :next_token
864
+ # The token for the next set of managed endpoints to return.
865
+ #
866
+ # @return [Types::ListManagedEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
867
+ #
868
+ # * {Types::ListManagedEndpointsResponse#endpoints #endpoints} => Array&lt;Types::Endpoint&gt;
869
+ # * {Types::ListManagedEndpointsResponse#next_token #next_token} => String
870
+ #
871
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
872
+ #
873
+ # @example Request syntax with placeholder values
874
+ #
875
+ # resp = client.list_managed_endpoints({
876
+ # virtual_cluster_id: "ResourceIdString", # required
877
+ # created_before: Time.now,
878
+ # created_after: Time.now,
879
+ # types: ["EndpointType"],
880
+ # states: ["CREATING"], # accepts CREATING, ACTIVE, TERMINATING, TERMINATED, TERMINATED_WITH_ERRORS
881
+ # max_results: 1,
882
+ # next_token: "NextToken",
883
+ # })
884
+ #
885
+ # @example Response structure
886
+ #
887
+ # resp.endpoints #=> Array
888
+ # resp.endpoints[0].id #=> String
889
+ # resp.endpoints[0].name #=> String
890
+ # resp.endpoints[0].arn #=> String
891
+ # resp.endpoints[0].virtual_cluster_id #=> String
892
+ # resp.endpoints[0].type #=> String
893
+ # resp.endpoints[0].state #=> String, one of "CREATING", "ACTIVE", "TERMINATING", "TERMINATED", "TERMINATED_WITH_ERRORS"
894
+ # resp.endpoints[0].release_label #=> String
895
+ # resp.endpoints[0].execution_role_arn #=> String
896
+ # resp.endpoints[0].certificate_arn #=> String
897
+ # resp.endpoints[0].configuration_overrides.application_configuration #=> Array
898
+ # resp.endpoints[0].configuration_overrides.application_configuration[0].classification #=> String
899
+ # resp.endpoints[0].configuration_overrides.application_configuration[0].properties #=> Hash
900
+ # resp.endpoints[0].configuration_overrides.application_configuration[0].properties["String1024"] #=> String
901
+ # resp.endpoints[0].configuration_overrides.application_configuration[0].configurations #=> Types::ConfigurationList
902
+ # resp.endpoints[0].configuration_overrides.monitoring_configuration.persistent_app_ui #=> String, one of "ENABLED", "DISABLED"
903
+ # resp.endpoints[0].configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_group_name #=> String
904
+ # resp.endpoints[0].configuration_overrides.monitoring_configuration.cloud_watch_monitoring_configuration.log_stream_name_prefix #=> String
905
+ # resp.endpoints[0].configuration_overrides.monitoring_configuration.s3_monitoring_configuration.log_uri #=> String
906
+ # resp.endpoints[0].server_url #=> String
907
+ # resp.endpoints[0].created_at #=> Time
908
+ # resp.endpoints[0].security_group #=> String
909
+ # resp.endpoints[0].subnet_ids #=> Array
910
+ # resp.endpoints[0].subnet_ids[0] #=> String
911
+ # resp.endpoints[0].tags #=> Hash
912
+ # resp.endpoints[0].tags["String128"] #=> String
913
+ # resp.next_token #=> String
914
+ #
915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListManagedEndpoints AWS API Documentation
916
+ #
917
+ # @overload list_managed_endpoints(params = {})
918
+ # @param [Hash] params ({})
919
+ def list_managed_endpoints(params = {}, options = {})
920
+ req = build_request(:list_managed_endpoints, params)
921
+ req.send_request(options)
922
+ end
923
+
924
+ # Lists the tags assigned to the resources.
925
+ #
926
+ # @option params [required, String] :resource_arn
927
+ # The ARN of tagged resources.
928
+ #
929
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
930
+ #
931
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
932
+ #
933
+ # @example Request syntax with placeholder values
934
+ #
935
+ # resp = client.list_tags_for_resource({
936
+ # resource_arn: "RsiArn", # required
937
+ # })
938
+ #
939
+ # @example Response structure
940
+ #
941
+ # resp.tags #=> Hash
942
+ # resp.tags["String128"] #=> String
943
+ #
944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListTagsForResource AWS API Documentation
945
+ #
946
+ # @overload list_tags_for_resource(params = {})
947
+ # @param [Hash] params ({})
948
+ def list_tags_for_resource(params = {}, options = {})
949
+ req = build_request(:list_tags_for_resource, params)
950
+ req.send_request(options)
951
+ end
952
+
953
+ # Lists information about the specified virtual cluster. Virtual cluster
954
+ # is a managed entity on Amazon EMR on EKS. You can create, describe,
955
+ # list and delete virtual clusters. They do not consume any additional
956
+ # resource in your system. A single virtual cluster maps to a single
957
+ # Kubernetes namespace. Given this relationship, you can model virtual
958
+ # clusters the same way you model Kubernetes namespaces to meet your
959
+ # requirements.
960
+ #
961
+ # @option params [String] :container_provider_id
962
+ # The container provider ID of the virtual cluster.
963
+ #
964
+ # @option params [String] :container_provider_type
965
+ # The container provider type of the virtual cluster. EKS is the only
966
+ # supported type as of now.
967
+ #
968
+ # @option params [Time,DateTime,Date,Integer,String] :created_after
969
+ # The date and time after which the virtual clusters are created.
970
+ #
971
+ # @option params [Time,DateTime,Date,Integer,String] :created_before
972
+ # The date and time before which the virtual clusters are created.
973
+ #
974
+ # @option params [Array<String>] :states
975
+ # The states of the requested virtual clusters.
976
+ #
977
+ # @option params [Integer] :max_results
978
+ # The maximum number of virtual clusters that can be listed.
979
+ #
980
+ # @option params [String] :next_token
981
+ # The token for the next set of virtual clusters to return.
982
+ #
983
+ # @return [Types::ListVirtualClustersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
984
+ #
985
+ # * {Types::ListVirtualClustersResponse#virtual_clusters #virtual_clusters} => Array&lt;Types::VirtualCluster&gt;
986
+ # * {Types::ListVirtualClustersResponse#next_token #next_token} => String
987
+ #
988
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
989
+ #
990
+ # @example Request syntax with placeholder values
991
+ #
992
+ # resp = client.list_virtual_clusters({
993
+ # container_provider_id: "String1024",
994
+ # container_provider_type: "EKS", # accepts EKS
995
+ # created_after: Time.now,
996
+ # created_before: Time.now,
997
+ # states: ["RUNNING"], # accepts RUNNING, TERMINATING, TERMINATED, ARRESTED
998
+ # max_results: 1,
999
+ # next_token: "NextToken",
1000
+ # })
1001
+ #
1002
+ # @example Response structure
1003
+ #
1004
+ # resp.virtual_clusters #=> Array
1005
+ # resp.virtual_clusters[0].id #=> String
1006
+ # resp.virtual_clusters[0].name #=> String
1007
+ # resp.virtual_clusters[0].arn #=> String
1008
+ # resp.virtual_clusters[0].state #=> String, one of "RUNNING", "TERMINATING", "TERMINATED", "ARRESTED"
1009
+ # resp.virtual_clusters[0].container_provider.type #=> String, one of "EKS"
1010
+ # resp.virtual_clusters[0].container_provider.id #=> String
1011
+ # resp.virtual_clusters[0].container_provider.info.eks_info.namespace #=> String
1012
+ # resp.virtual_clusters[0].created_at #=> Time
1013
+ # resp.virtual_clusters[0].tags #=> Hash
1014
+ # resp.virtual_clusters[0].tags["String128"] #=> String
1015
+ # resp.next_token #=> String
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListVirtualClusters AWS API Documentation
1018
+ #
1019
+ # @overload list_virtual_clusters(params = {})
1020
+ # @param [Hash] params ({})
1021
+ def list_virtual_clusters(params = {}, options = {})
1022
+ req = build_request(:list_virtual_clusters, params)
1023
+ req.send_request(options)
1024
+ end
1025
+
1026
+ # Starts a job run. A job run is a unit of work, such as a Spark jar,
1027
+ # PySpark script, or SparkSQL query, that you submit to Amazon EMR on
1028
+ # EKS.
1029
+ #
1030
+ # @option params [String] :name
1031
+ # The name of the job run.
1032
+ #
1033
+ # @option params [required, String] :virtual_cluster_id
1034
+ # The virtual cluster ID for which the job run request is submitted.
1035
+ #
1036
+ # @option params [required, String] :client_token
1037
+ # The client idempotency token of the job run request.
1038
+ #
1039
+ # **A suitable default value is auto-generated.** You should normally
1040
+ # not need to pass this option.**
1041
+ #
1042
+ # @option params [required, String] :execution_role_arn
1043
+ # The execution role ARN for the job run.
1044
+ #
1045
+ # @option params [required, String] :release_label
1046
+ # The Amazon EMR release version to use for the job run.
1047
+ #
1048
+ # @option params [required, Types::JobDriver] :job_driver
1049
+ # The job driver for the job run.
1050
+ #
1051
+ # @option params [Types::ConfigurationOverrides] :configuration_overrides
1052
+ # The configuration overrides for the job run.
1053
+ #
1054
+ # @option params [Hash<String,String>] :tags
1055
+ # The tags assigned to job runs.
1056
+ #
1057
+ # @return [Types::StartJobRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1058
+ #
1059
+ # * {Types::StartJobRunResponse#id #id} => String
1060
+ # * {Types::StartJobRunResponse#name #name} => String
1061
+ # * {Types::StartJobRunResponse#arn #arn} => String
1062
+ # * {Types::StartJobRunResponse#virtual_cluster_id #virtual_cluster_id} => String
1063
+ #
1064
+ # @example Request syntax with placeholder values
1065
+ #
1066
+ # resp = client.start_job_run({
1067
+ # name: "ResourceNameString",
1068
+ # virtual_cluster_id: "ResourceIdString", # required
1069
+ # client_token: "ClientToken", # required
1070
+ # execution_role_arn: "IAMRoleArn", # required
1071
+ # release_label: "ReleaseLabel", # required
1072
+ # job_driver: { # required
1073
+ # spark_submit_job_driver: {
1074
+ # entry_point: "EntryPointPath", # required
1075
+ # entry_point_arguments: ["EntryPointArgument"],
1076
+ # spark_submit_parameters: "SparkSubmitParameters",
1077
+ # },
1078
+ # },
1079
+ # configuration_overrides: {
1080
+ # application_configuration: [
1081
+ # {
1082
+ # classification: "String1024", # required
1083
+ # properties: {
1084
+ # "String1024" => "String1024",
1085
+ # },
1086
+ # configurations: {
1087
+ # # recursive ConfigurationList
1088
+ # },
1089
+ # },
1090
+ # ],
1091
+ # monitoring_configuration: {
1092
+ # persistent_app_ui: "ENABLED", # accepts ENABLED, DISABLED
1093
+ # cloud_watch_monitoring_configuration: {
1094
+ # log_group_name: "LogGroupName", # required
1095
+ # log_stream_name_prefix: "String256",
1096
+ # },
1097
+ # s3_monitoring_configuration: {
1098
+ # log_uri: "UriString", # required
1099
+ # },
1100
+ # },
1101
+ # },
1102
+ # tags: {
1103
+ # "String128" => "StringEmpty256",
1104
+ # },
1105
+ # })
1106
+ #
1107
+ # @example Response structure
1108
+ #
1109
+ # resp.id #=> String
1110
+ # resp.name #=> String
1111
+ # resp.arn #=> String
1112
+ # resp.virtual_cluster_id #=> String
1113
+ #
1114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/StartJobRun AWS API Documentation
1115
+ #
1116
+ # @overload start_job_run(params = {})
1117
+ # @param [Hash] params ({})
1118
+ def start_job_run(params = {}, options = {})
1119
+ req = build_request(:start_job_run, params)
1120
+ req.send_request(options)
1121
+ end
1122
+
1123
+ # Assigns tags to resources. A tag is a label that you assign to an AWS
1124
+ # resource. Each tag consists of a key and an optional value, both of
1125
+ # which you define. Tags enable you to categorize your AWS resources by
1126
+ # attributes such as purpose, owner, or environment. When you have many
1127
+ # resources of the same type, you can quickly identify a specific
1128
+ # resource based on the tags you've assigned to it. For example, you
1129
+ # can define a set of tags for your Amazon EMR on EKS clusters to help
1130
+ # you track each cluster's owner and stack level. We recommend that you
1131
+ # devise a consistent set of tag keys for each resource type. You can
1132
+ # then search and filter the resources based on the tags that you add.
1133
+ #
1134
+ # @option params [required, String] :resource_arn
1135
+ # The ARN of resources.
1136
+ #
1137
+ # @option params [required, Hash<String,String>] :tags
1138
+ # The tags assigned to resources.
1139
+ #
1140
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1141
+ #
1142
+ # @example Request syntax with placeholder values
1143
+ #
1144
+ # resp = client.tag_resource({
1145
+ # resource_arn: "RsiArn", # required
1146
+ # tags: { # required
1147
+ # "String128" => "StringEmpty256",
1148
+ # },
1149
+ # })
1150
+ #
1151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/TagResource AWS API Documentation
1152
+ #
1153
+ # @overload tag_resource(params = {})
1154
+ # @param [Hash] params ({})
1155
+ def tag_resource(params = {}, options = {})
1156
+ req = build_request(:tag_resource, params)
1157
+ req.send_request(options)
1158
+ end
1159
+
1160
+ # Removes tags from resources.
1161
+ #
1162
+ # @option params [required, String] :resource_arn
1163
+ # The ARN of resources.
1164
+ #
1165
+ # @option params [required, Array<String>] :tag_keys
1166
+ # The tag keys of the resources.
1167
+ #
1168
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1169
+ #
1170
+ # @example Request syntax with placeholder values
1171
+ #
1172
+ # resp = client.untag_resource({
1173
+ # resource_arn: "RsiArn", # required
1174
+ # tag_keys: ["String128"], # required
1175
+ # })
1176
+ #
1177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/UntagResource AWS API Documentation
1178
+ #
1179
+ # @overload untag_resource(params = {})
1180
+ # @param [Hash] params ({})
1181
+ def untag_resource(params = {}, options = {})
1182
+ req = build_request(:untag_resource, params)
1183
+ req.send_request(options)
1184
+ end
1185
+
1186
+ # @!endgroup
1187
+
1188
+ # @param params ({})
1189
+ # @api private
1190
+ def build_request(operation_name, params = {})
1191
+ handlers = @handlers.for(operation_name)
1192
+ context = Seahorse::Client::RequestContext.new(
1193
+ operation_name: operation_name,
1194
+ operation: config.api.operation(operation_name),
1195
+ client: self,
1196
+ params: params,
1197
+ config: config)
1198
+ context[:gem_name] = 'aws-sdk-emrcontainers'
1199
+ context[:gem_version] = '1.0.0'
1200
+ Seahorse::Client::Request.new(handlers, context)
1201
+ end
1202
+
1203
+ # @api private
1204
+ # @deprecated
1205
+ def waiter_names
1206
+ []
1207
+ end
1208
+
1209
+ class << self
1210
+
1211
+ # @api private
1212
+ attr_reader :identifier
1213
+
1214
+ # @api private
1215
+ def errors_module
1216
+ Errors
1217
+ end
1218
+
1219
+ end
1220
+ end
1221
+ end