aws-sdk-batch 1.95.0 → 1.147.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.
@@ -7,35 +7,34 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
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/invocation_id.rb'
26
- require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
27
- require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
28
- require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
29
- require 'aws-sdk-core/plugins/transfer_encoding.rb'
30
- require 'aws-sdk-core/plugins/http_checksum.rb'
31
- require 'aws-sdk-core/plugins/checksum_algorithm.rb'
32
- require 'aws-sdk-core/plugins/request_compression.rb'
33
- require 'aws-sdk-core/plugins/defaults_mode.rb'
34
- require 'aws-sdk-core/plugins/recursion_detection.rb'
35
- require 'aws-sdk-core/plugins/sign.rb'
36
- require 'aws-sdk-core/plugins/protocols/rest_json.rb'
37
-
38
- Aws::Plugins::GlobalConfiguration.add_identifier(:batch)
10
+ require 'seahorse/client/plugins/content_length'
11
+ require 'aws-sdk-core/plugins/credentials_configuration'
12
+ require 'aws-sdk-core/plugins/logging'
13
+ require 'aws-sdk-core/plugins/param_converter'
14
+ require 'aws-sdk-core/plugins/param_validator'
15
+ require 'aws-sdk-core/plugins/user_agent'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors'
17
+ require 'aws-sdk-core/plugins/retry_errors'
18
+ require 'aws-sdk-core/plugins/global_configuration'
19
+ require 'aws-sdk-core/plugins/regional_endpoint'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern'
22
+ require 'aws-sdk-core/plugins/response_paging'
23
+ require 'aws-sdk-core/plugins/stub_responses'
24
+ require 'aws-sdk-core/plugins/idempotency_token'
25
+ require 'aws-sdk-core/plugins/invocation_id'
26
+ require 'aws-sdk-core/plugins/jsonvalue_converter'
27
+ require 'aws-sdk-core/plugins/client_metrics_plugin'
28
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin'
29
+ require 'aws-sdk-core/plugins/transfer_encoding'
30
+ require 'aws-sdk-core/plugins/http_checksum'
31
+ require 'aws-sdk-core/plugins/checksum_algorithm'
32
+ require 'aws-sdk-core/plugins/request_compression'
33
+ require 'aws-sdk-core/plugins/defaults_mode'
34
+ require 'aws-sdk-core/plugins/recursion_detection'
35
+ require 'aws-sdk-core/plugins/telemetry'
36
+ require 'aws-sdk-core/plugins/sign'
37
+ require 'aws-sdk-core/plugins/protocols/rest_json'
39
38
 
40
39
  module Aws::Batch
41
40
  # An API client for Batch. To construct a client, you need to configure a `:region` and `:credentials`.
@@ -83,6 +82,7 @@ module Aws::Batch
83
82
  add_plugin(Aws::Plugins::RequestCompression)
84
83
  add_plugin(Aws::Plugins::DefaultsMode)
85
84
  add_plugin(Aws::Plugins::RecursionDetection)
85
+ add_plugin(Aws::Plugins::Telemetry)
86
86
  add_plugin(Aws::Plugins::Sign)
87
87
  add_plugin(Aws::Plugins::Protocols::RestJson)
88
88
  add_plugin(Aws::Batch::Plugins::Endpoints)
@@ -95,8 +95,8 @@ module Aws::Batch
95
95
  # class name or an instance of a plugin class.
96
96
  #
97
97
  # @option options [required, Aws::CredentialProvider] :credentials
98
- # Your AWS credentials. This can be an instance of any one of the
99
- # following classes:
98
+ # Your AWS credentials used for authentication. This can be any class that includes and implements
99
+ # `Aws::CredentialProvider`, or instance of any one of the following classes:
100
100
  #
101
101
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
102
102
  # credentials.
@@ -124,20 +124,24 @@ module Aws::Batch
124
124
  # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
125
125
  # from the Cognito Identity service.
126
126
  #
127
- # When `:credentials` are not configured directly, the following
128
- # locations will be searched for credentials:
127
+ # When `:credentials` are not configured directly, the following locations will be searched for credentials:
129
128
  #
130
129
  # * `Aws.config[:credentials]`
131
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
132
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
130
+ #
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ #
134
+ # * `ENV['AWS_ACCESS_KEY_ID']`, `ENV['AWS_SECRET_ACCESS_KEY']`,
135
+ # `ENV['AWS_SESSION_TOKEN']`, and `ENV['AWS_ACCOUNT_ID']`.
136
+ #
133
137
  # * `~/.aws/credentials`
138
+ #
134
139
  # * `~/.aws/config`
135
- # * EC2/ECS IMDS instance profile - When used by default, the timeouts
136
- # are very aggressive. Construct and pass an instance of
137
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
138
- # enable retries and extended timeouts. Instance profile credential
139
- # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
140
- # to true.
140
+ #
141
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive.
142
+ # Construct and pass an instance of `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
143
+ # enable retries and extended timeouts. Instance profile credential fetching can be disabled by
144
+ # setting `ENV['AWS_EC2_METADATA_DISABLED']` to `true`.
141
145
  #
142
146
  # @option options [required, String] :region
143
147
  # The AWS region to connect to. The configured `:region` is
@@ -153,6 +157,8 @@ module Aws::Batch
153
157
  #
154
158
  # @option options [String] :access_key_id
155
159
  #
160
+ # @option options [String] :account_id
161
+ #
156
162
  # @option options [Boolean] :active_endpoint_cache (false)
157
163
  # When set to `true`, a thread polling for endpoints will be running in
158
164
  # the background every 60 secs (default). Defaults to `false`.
@@ -163,6 +169,11 @@ module Aws::Batch
163
169
  # When false, the request will raise a `RetryCapacityNotAvailableError` and will
164
170
  # not retry instead of sleeping.
165
171
  #
172
+ # @option options [Array<String>] :auth_scheme_preference
173
+ # A list of preferred authentication schemes to use when making a request. Supported values are:
174
+ # `sigv4`, `sigv4a`, `httpBearerAuth`, and `noAuth`. When set using `ENV['AWS_AUTH_SCHEME_PREFERENCE']` or in
175
+ # shared config as `auth_scheme_preference`, the value should be a comma-separated list.
176
+ #
166
177
  # @option options [Boolean] :client_side_monitoring (false)
167
178
  # When `true`, client-side metrics will be collected for all API requests from
168
179
  # this client.
@@ -188,7 +199,7 @@ module Aws::Batch
188
199
  # the required types.
189
200
  #
190
201
  # @option options [Boolean] :correct_clock_skew (true)
191
- # Used only in `standard` and adaptive retry modes. Specifies whether to apply
202
+ # Used only in `standard` and `adaptive` retry modes. Specifies whether to apply
192
203
  # a clock skew correction and retry requests with skewed client clocks.
193
204
  #
194
205
  # @option options [String] :defaults_mode ("legacy")
@@ -196,8 +207,7 @@ module Aws::Batch
196
207
  # accepted modes and the configuration defaults that are included.
197
208
  #
198
209
  # @option options [Boolean] :disable_host_prefix_injection (false)
199
- # Set to true to disable SDK automatically adding host prefix
200
- # to default service endpoint when available.
210
+ # When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
201
211
  #
202
212
  # @option options [Boolean] :disable_request_compression (false)
203
213
  # When set to 'true' the request body will not be compressed
@@ -250,14 +260,37 @@ module Aws::Batch
250
260
  # 4 times. Used in `standard` and `adaptive` retry modes.
251
261
  #
252
262
  # @option options [String] :profile ("default")
253
- # Used when loading credentials from the shared credentials file
254
- # at HOME/.aws/credentials. When not specified, 'default' is used.
263
+ # Used when loading credentials from the shared credentials file at `HOME/.aws/credentials`.
264
+ # When not specified, 'default' is used.
265
+ #
266
+ # @option options [String] :request_checksum_calculation ("when_supported")
267
+ # Determines when a checksum will be calculated for request payloads. Values are:
268
+ #
269
+ # * `when_supported` - (default) When set, a checksum will be
270
+ # calculated for all request payloads of operations modeled with the
271
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
272
+ # `requestAlgorithmMember` is modeled.
273
+ # * `when_required` - When set, a checksum will only be calculated for
274
+ # request payloads of operations modeled with the `httpChecksum` trait where
275
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
276
+ # is modeled and supplied.
255
277
  #
256
278
  # @option options [Integer] :request_min_compression_size_bytes (10240)
257
279
  # The minimum size in bytes that triggers compression for request
258
280
  # bodies. The value must be non-negative integer value between 0
259
281
  # and 10485780 bytes inclusive.
260
282
  #
283
+ # @option options [String] :response_checksum_validation ("when_supported")
284
+ # Determines when checksum validation will be performed on response payloads. Values are:
285
+ #
286
+ # * `when_supported` - (default) When set, checksum validation is performed on all
287
+ # response payloads of operations modeled with the `httpChecksum` trait where
288
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
289
+ # are supported.
290
+ # * `when_required` - When set, checksum validation is not performed on
291
+ # response payloads of operations unless the checksum algorithm is supported and
292
+ # the `requestValidationModeMember` member is set to `ENABLED`.
293
+ #
261
294
  # @option options [Proc] :retry_backoff
262
295
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
263
296
  # This option is only used in the `legacy` retry mode.
@@ -290,17 +323,15 @@ module Aws::Batch
290
323
  # @option options [String] :retry_mode ("legacy")
291
324
  # Specifies which retry algorithm to use. Values are:
292
325
  #
293
- # * `legacy` - The pre-existing retry behavior. This is default value if
294
- # no retry mode is provided.
326
+ # * `legacy` - The pre-existing retry behavior. This is the default
327
+ # value if no retry mode is provided.
295
328
  #
296
329
  # * `standard` - A standardized set of retry rules across the AWS SDKs.
297
330
  # This includes support for retry quotas, which limit the number of
298
331
  # unsuccessful retries a client can make.
299
332
  #
300
- # * `adaptive` - An experimental retry mode that includes all the
301
- # functionality of `standard` mode along with automatic client side
302
- # throttling. This is a provisional mode that may change behavior
303
- # in the future.
333
+ # * `adaptive` - A retry mode that includes all the functionality of
334
+ # `standard` mode along with automatic client side throttling.
304
335
  #
305
336
  # @option options [String] :sdk_ua_app_id
306
337
  # A unique and opaque application ID that is appended to the
@@ -330,9 +361,19 @@ module Aws::Batch
330
361
  # ** Please note ** When response stubbing is enabled, no HTTP
331
362
  # requests are made, and retries are disabled.
332
363
  #
364
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
365
+ # Allows you to provide a telemetry provider, which is used to
366
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
367
+ # will not record or emit any telemetry data. The SDK supports the
368
+ # following telemetry providers:
369
+ #
370
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
371
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
372
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
373
+ #
333
374
  # @option options [Aws::TokenProvider] :token_provider
334
- # A Bearer Token Provider. This can be an instance of any one of the
335
- # following classes:
375
+ # Your Bearer token used for authentication. This can be any class that includes and implements
376
+ # `Aws::TokenProvider`, or instance of any one of the following classes:
336
377
  #
337
378
  # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
338
379
  # tokens.
@@ -357,7 +398,9 @@ module Aws::Batch
357
398
  # sending the request.
358
399
  #
359
400
  # @option options [Aws::Batch::EndpointProvider] :endpoint_provider
360
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Batch::EndpointParameters`
401
+ # The endpoint provider used to resolve endpoints. Any object that responds to
402
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
403
+ # `Aws::Batch::EndpointParameters`.
361
404
  #
362
405
  # @option options [Float] :http_continue_timeout (1)
363
406
  # The number of seconds to wait for a 100-continue response before sending the
@@ -413,6 +456,12 @@ module Aws::Batch
413
456
  # @option options [String] :ssl_ca_store
414
457
  # Sets the X509::Store to verify peer certificate.
415
458
  #
459
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
460
+ # Sets a client certificate when creating http connections.
461
+ #
462
+ # @option options [OpenSSL::PKey] :ssl_key
463
+ # Sets a client key when creating http connections.
464
+ #
416
465
  # @option options [Float] :ssl_timeout
417
466
  # Sets the SSL timeout in seconds
418
467
  #
@@ -450,7 +499,9 @@ module Aws::Batch
450
499
  # @option params [required, String] :reason
451
500
  # A message to attach to the job that explains the reason for canceling
452
501
  # it. This message is returned by future DescribeJobs operations on the
453
- # job. This message is also recorded in the Batch activity logs.
502
+ # job. It is also recorded in the Batch activity logs.
503
+ #
504
+ # This parameter has as limit of 1024 characters.
454
505
  #
455
506
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
456
507
  #
@@ -499,10 +550,6 @@ module Aws::Batch
499
550
  # price so that Spot Instances only launch when the Spot Instance price
500
551
  # is less than a specified percentage of the On-Demand price.
501
552
  #
502
- # <note markdown="1"> Multi-node parallel jobs aren't supported on Spot Instances.
503
- #
504
- # </note>
505
- #
506
553
  # In an unmanaged compute environment, you can manage your own EC2
507
554
  # compute resources and have flexibility with how you configure your
508
555
  # compute resources. For example, you can use custom AMIs. However, you
@@ -516,69 +563,10 @@ module Aws::Batch
516
563
  # [Launching an Amazon ECS container instance][3] in the *Amazon Elastic
517
564
  # Container Service Developer Guide*.
518
565
  #
519
- # <note markdown="1"> To create a compute environment that uses EKS resources, the caller
520
- # must have permissions to call `eks:DescribeCluster`.
521
- #
522
- # </note>
523
- #
524
566
  # <note markdown="1"> Batch doesn't automatically upgrade the AMIs in a compute environment
525
- # after it's created. For example, it also doesn't update the AMIs in
526
- # your compute environment when a newer version of the Amazon ECS
527
- # optimized AMI is available. You're responsible for the management of
528
- # the guest operating system. This includes any updates and security
529
- # patches. You're also responsible for any additional application
530
- # software or utilities that you install on the compute resources. There
531
- # are two ways to use a new AMI for your Batch jobs. The original method
532
- # is to complete these steps:
533
- #
534
- # 1. Create a new compute environment with the new AMI.
535
- #
536
- # 2. Add the compute environment to an existing job queue.
537
- #
538
- # 3. Remove the earlier compute environment from your job queue.
539
- #
540
- # 4. Delete the earlier compute environment.
541
- #
542
- # In April 2022, Batch added enhanced support for updating compute
543
- # environments. For more information, see [Updating compute
544
- # environments][4]. To use the enhanced updating of compute environments
545
- # to update AMIs, follow these rules:
546
- #
547
- # * Either don't set the service role (`serviceRole`) parameter or set
548
- # it to the **AWSBatchServiceRole** service-linked role.
549
- #
550
- # * Set the allocation strategy (`allocationStrategy`) parameter to
551
- # `BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED`, or
552
- # `SPOT_PRICE_CAPACITY_OPTIMIZED`.
553
- #
554
- # * Set the update to latest image version
555
- # (`updateToLatestImageVersion`) parameter to `true`. The
556
- # `updateToLatestImageVersion` parameter is used when you update a
557
- # compute environment. This parameter is ignored when you create a
558
- # compute environment.
559
- #
560
- # * Don't specify an AMI ID in `imageId`, `imageIdOverride` (in [
561
- # `ec2Configuration` ][5]), or in the launch template
562
- # (`launchTemplate`). In that case, Batch selects the latest Amazon
563
- # ECS optimized AMI that's supported by Batch at the time the
564
- # infrastructure update is initiated. Alternatively, you can specify
565
- # the AMI ID in the `imageId` or `imageIdOverride` parameters, or the
566
- # launch template identified by the `LaunchTemplate` properties.
567
- # Changing any of these properties starts an infrastructure update. If
568
- # the AMI ID is specified in the launch template, it can't be
569
- # replaced by specifying an AMI ID in either the `imageId` or
570
- # `imageIdOverride` parameters. It can only be replaced by specifying
571
- # a different launch template, or if the launch template version is
572
- # set to `$Default` or `$Latest`, by setting either a new default
573
- # version for the launch template (if `$Default`) or by adding a new
574
- # version to the launch template (if `$Latest`).
575
- #
576
- # If these rules are followed, any update that starts an infrastructure
577
- # update causes the AMI ID to be re-selected. If the `version` setting
578
- # in the launch template (`launchTemplate`) is set to `$Latest` or
579
- # `$Default`, the latest or default version of the launch template is
580
- # evaluated up at the time of the infrastructure update, even if the
581
- # `launchTemplate` wasn't updated.
567
+ # after it's created. For more information on how to update a compute
568
+ # environment's AMI, see [Updating compute environments][4] in the
569
+ # *Batch User Guide*.
582
570
  #
583
571
  # </note>
584
572
  #
@@ -588,7 +576,6 @@ module Aws::Batch
588
576
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container_instance_AMIs.html
589
577
  # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html
590
578
  # [4]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
591
- # [5]: https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html
592
579
  #
593
580
  # @option params [required, String] :compute_environment_name
594
581
  # The name for your compute environment. It can be up to 128 characters
@@ -605,9 +592,11 @@ module Aws::Batch
605
592
  # [1]: https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html
606
593
  #
607
594
  # @option params [String] :state
608
- # The state of the compute environment. If the state is `ENABLED`, then
609
- # the compute environment accepts jobs from a queue and can scale out
610
- # automatically based on queues.
595
+ # The state of the compute environment. A compute environment must be
596
+ # created in the `ENABLED` state.
597
+ #
598
+ # If the state is `ENABLED`, then the compute environment accepts jobs
599
+ # from a queue and can scale out automatically based on queues.
611
600
  #
612
601
  # If the state is `ENABLED`, then the Batch scheduler can attempt to
613
602
  # place jobs from an associated job queue on the compute resources
@@ -621,9 +610,10 @@ module Aws::Batch
621
610
  # environments in the `DISABLED` state don't scale out.
622
611
  #
623
612
  # <note markdown="1"> Compute environments in a `DISABLED` state may continue to incur
624
- # billing charges. To prevent additional charges, turn off and then
625
- # delete the compute environment. For more information, see [State][1]
626
- # in the *Batch User Guide*.
613
+ # billing charges, for example, if they have running instances due to
614
+ # jobs that are still executing or a non-zero `minvCpus` setting. To
615
+ # prevent additional charges, disable and delete the compute
616
+ # environment.
627
617
  #
628
618
  # </note>
629
619
  #
@@ -633,15 +623,11 @@ module Aws::Batch
633
623
  # `desiredvCpus` value of `36`. This instance doesn't scale down to a
634
624
  # `c5.large` instance.
635
625
  #
636
- #
637
- #
638
- # [1]: https://docs.aws.amazon.com/batch/latest/userguide/compute_environment_parameters.html#compute_environment_state
639
- #
640
626
  # @option params [Integer] :unmanagedv_cpus
641
627
  # The maximum number of vCPUs for an unmanaged compute environment. This
642
- # parameter is only used for fair share scheduling to reserve vCPU
628
+ # parameter is only used for fair-share scheduling to reserve vCPU
643
629
  # capacity for new share identifiers. If this parameter isn't provided
644
- # for a fair share job queue, no vCPU capacity is reserved.
630
+ # for a fair-share job queue, no vCPU capacity is reserved.
645
631
  #
646
632
  # <note markdown="1"> This parameter is only supported when the `type` parameter is set to
647
633
  # `UNMANAGED`.
@@ -671,6 +657,10 @@ module Aws::Batch
671
657
  # service attempts to create the Batch service-linked role in your
672
658
  # account.
673
659
  #
660
+ # This automatic service-linked role creation only applies to `MANAGED`
661
+ # compute environments. For `UNMANAGED` compute environments, you must
662
+ # explicitly specify a `serviceRole`.
663
+ #
674
664
  # If your specified role has a path other than `/`, then you must
675
665
  # specify either the full role ARN (recommended) or prefix the role name
676
666
  # with the path. For example, if a role with the name `bar` has a path
@@ -711,6 +701,11 @@ module Aws::Batch
711
701
  # The details for the Amazon EKS cluster that supports the compute
712
702
  # environment.
713
703
  #
704
+ # <note markdown="1"> To create a compute environment that uses EKS resources, the caller
705
+ # must have permissions to call `eks:DescribeCluster`.
706
+ #
707
+ # </note>
708
+ #
714
709
  # @option params [String] :context
715
710
  # Reserved.
716
711
  #
@@ -815,13 +810,13 @@ module Aws::Batch
815
810
  # unmanagedv_cpus: 1,
816
811
  # compute_resources: {
817
812
  # type: "EC2", # required, accepts EC2, SPOT, FARGATE, FARGATE_SPOT
818
- # allocation_strategy: "BEST_FIT", # accepts BEST_FIT, BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED, SPOT_PRICE_CAPACITY_OPTIMIZED
813
+ # allocation_strategy: "BEST_FIT", # accepts BEST_FIT, BEST_FIT_PROGRESSIVE, BEST_FIT_PROGRESSIVE_ORDERED, SPOT_CAPACITY_OPTIMIZED, SPOT_PRICE_CAPACITY_OPTIMIZED, SPOT_CAPACITY_OPTIMIZED_PRIORITIZED
819
814
  # minv_cpus: 1,
820
815
  # maxv_cpus: 1, # required
821
816
  # desiredv_cpus: 1,
822
817
  # instance_types: ["String"],
823
818
  # image_id: "String",
824
- # subnets: ["String"], # required
819
+ # subnets: ["String"],
825
820
  # security_group_ids: ["String"],
826
821
  # ec2_key_pair: "String",
827
822
  # instance_role: "String",
@@ -835,14 +830,28 @@ module Aws::Batch
835
830
  # launch_template_id: "String",
836
831
  # launch_template_name: "String",
837
832
  # version: "String",
833
+ # overrides: [
834
+ # {
835
+ # launch_template_id: "String",
836
+ # launch_template_name: "String",
837
+ # version: "String",
838
+ # target_instance_types: ["String"],
839
+ # userdata_type: "EKS_BOOTSTRAP_SH", # accepts EKS_BOOTSTRAP_SH, EKS_NODEADM
840
+ # },
841
+ # ],
842
+ # userdata_type: "EKS_BOOTSTRAP_SH", # accepts EKS_BOOTSTRAP_SH, EKS_NODEADM
838
843
  # },
839
844
  # ec2_configuration: [
840
845
  # {
841
846
  # image_type: "ImageType", # required
842
847
  # image_id_override: "ImageIdOverride",
848
+ # batch_image_status: "String",
843
849
  # image_kubernetes_version: "KubernetesVersion",
844
850
  # },
845
851
  # ],
852
+ # scaling_policy: {
853
+ # min_scale_down_delay_minutes: 1,
854
+ # },
846
855
  # },
847
856
  # service_role: "String",
848
857
  # tags: {
@@ -869,6 +878,84 @@ module Aws::Batch
869
878
  req.send_request(options)
870
879
  end
871
880
 
881
+ # Creates an Batch consumable resource.
882
+ #
883
+ # @option params [required, String] :consumable_resource_name
884
+ # The name of the consumable resource. Must be unique.
885
+ #
886
+ # @option params [Integer] :total_quantity
887
+ # The total amount of the consumable resource that is available. Must be
888
+ # non-negative.
889
+ #
890
+ # @option params [String] :resource_type
891
+ # Indicates whether the resource is available to be re-used after a job
892
+ # completes. Can be one of:
893
+ #
894
+ # * `REPLENISHABLE` (default)
895
+ #
896
+ # * `NON_REPLENISHABLE`
897
+ #
898
+ # @option params [Hash<String,String>] :tags
899
+ # The tags that you apply to the consumable resource to help you
900
+ # categorize and organize your resources. Each tag consists of a key and
901
+ # an optional value. For more information, see [Tagging your Batch
902
+ # resources][1].
903
+ #
904
+ #
905
+ #
906
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html
907
+ #
908
+ # @return [Types::CreateConsumableResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
909
+ #
910
+ # * {Types::CreateConsumableResourceResponse#consumable_resource_name #consumable_resource_name} => String
911
+ # * {Types::CreateConsumableResourceResponse#consumable_resource_arn #consumable_resource_arn} => String
912
+ #
913
+ #
914
+ # @example Example: To create a consumable resource
915
+ #
916
+ # # Creates a Batch consumable resource.
917
+ #
918
+ # resp = client.create_consumable_resource({
919
+ # consumable_resource_name: "myConsumableResource",
920
+ # resource_type: "REPLENISHABLE",
921
+ # tags: {
922
+ # "Department" => "Engineering",
923
+ # "User" => "JaneDoe",
924
+ # },
925
+ # total_quantity: 123,
926
+ # })
927
+ #
928
+ # resp.to_h outputs the following:
929
+ # {
930
+ # consumable_resource_arn: "arn:aws:batch:us-east-1:012345678910:consumable-resource/myConsumableResource",
931
+ # consumable_resource_name: "myConsumableResource",
932
+ # }
933
+ #
934
+ # @example Request syntax with placeholder values
935
+ #
936
+ # resp = client.create_consumable_resource({
937
+ # consumable_resource_name: "String", # required
938
+ # total_quantity: 1,
939
+ # resource_type: "String",
940
+ # tags: {
941
+ # "TagKey" => "TagValue",
942
+ # },
943
+ # })
944
+ #
945
+ # @example Response structure
946
+ #
947
+ # resp.consumable_resource_name #=> String
948
+ # resp.consumable_resource_arn #=> String
949
+ #
950
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateConsumableResource AWS API Documentation
951
+ #
952
+ # @overload create_consumable_resource(params = {})
953
+ # @param [Hash] params ({})
954
+ def create_consumable_resource(params = {}, options = {})
955
+ req = build_request(:create_consumable_resource, params)
956
+ req.send_request(options)
957
+ end
958
+
872
959
  # Creates an Batch job queue. When you create a job queue, you associate
873
960
  # one or more compute environments to the queue and assign an order of
874
961
  # preference for the compute environments.
@@ -891,16 +978,24 @@ module Aws::Batch
891
978
  # finish.
892
979
  #
893
980
  # @option params [String] :scheduling_policy_arn
894
- # The Amazon Resource Name (ARN) of the fair share scheduling policy. If
895
- # this parameter is specified, the job queue uses a fair share
896
- # scheduling policy. If this parameter isn't specified, the job queue
897
- # uses a first in, first out (FIFO) scheduling policy. After a job queue
898
- # is created, you can replace but can't remove the fair share
899
- # scheduling policy. The format is
900
- # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. An
901
- # example is
981
+ # The Amazon Resource Name (ARN) of the fair-share scheduling policy.
982
+ # Job queues that don't have a fair-share scheduling policy are
983
+ # scheduled in a first-in, first-out (FIFO) model. After a job queue has
984
+ # a fair-share scheduling policy, it can be replaced but can't be
985
+ # removed.
986
+ #
987
+ # The format is
988
+ # `aws:Partition:batch:Region:Account:scheduling-policy/Name `.
989
+ #
990
+ # An example is
902
991
  # `aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy`.
903
992
  #
993
+ # A job queue without a fair-share scheduling policy is scheduled as a
994
+ # FIFO job queue and can't have a fair-share scheduling policy added.
995
+ # Jobs queues with a fair-share scheduling policy can have a maximum of
996
+ # 500 active share identifiers. When the limit has been reached,
997
+ # submissions of any jobs that add a new share identifier fail.
998
+ #
904
999
  # @option params [required, Integer] :priority
905
1000
  # The priority of the job queue. Job queues with a higher priority (or a
906
1001
  # higher integer value for the `priority` parameter) are evaluated first
@@ -911,7 +1006,7 @@ module Aws::Batch
911
1006
  # either EC2 (`EC2` or `SPOT`) or Fargate (`FARGATE` or `FARGATE_SPOT`);
912
1007
  # EC2 and Fargate compute environments can't be mixed.
913
1008
  #
914
- # @option params [required, Array<Types::ComputeEnvironmentOrder>] :compute_environment_order
1009
+ # @option params [Array<Types::ComputeEnvironmentOrder>] :compute_environment_order
915
1010
  # The set of compute environments mapped to a job queue and their order
916
1011
  # relative to each other. The job scheduler uses this parameter to
917
1012
  # determine which compute environment runs a specific job. Compute
@@ -927,6 +1022,18 @@ module Aws::Batch
927
1022
  #
928
1023
  # </note>
929
1024
  #
1025
+ # @option params [Array<Types::ServiceEnvironmentOrder>] :service_environment_order
1026
+ # A list of service environments that this job queue can use to allocate
1027
+ # jobs. All serviceEnvironments must have the same type. A job queue
1028
+ # can't have both a serviceEnvironmentOrder and a
1029
+ # computeEnvironmentOrder field.
1030
+ #
1031
+ # @option params [String] :job_queue_type
1032
+ # The type of job queue. For service jobs that run on SageMaker
1033
+ # Training, this value is `SAGEMAKER_TRAINING`. For regular container
1034
+ # jobs, this value is `EKS`, `ECS`, or `ECS_FARGATE` depending on the
1035
+ # compute environment.
1036
+ #
930
1037
  # @option params [Hash<String,String>] :tags
931
1038
  # The tags that you apply to the job queue to help you categorize and
932
1039
  # organize your resources. Each tag consists of a key and an optional
@@ -941,6 +1048,8 @@ module Aws::Batch
941
1048
  # The set of actions that Batch performs on jobs that remain at the head
942
1049
  # of the job queue in the specified state longer than specified times.
943
1050
  # Batch will perform each action after `maxTimeSeconds` has passed.
1051
+ # (**Note**: The minimum value for maxTimeSeconds is 600 (10 minutes)
1052
+ # and its maximum value is 86,400 (24 hours).)
944
1053
  #
945
1054
  # @return [Types::CreateJobQueueResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
946
1055
  #
@@ -1004,12 +1113,19 @@ module Aws::Batch
1004
1113
  # state: "ENABLED", # accepts ENABLED, DISABLED
1005
1114
  # scheduling_policy_arn: "String",
1006
1115
  # priority: 1, # required
1007
- # compute_environment_order: [ # required
1116
+ # compute_environment_order: [
1008
1117
  # {
1009
1118
  # order: 1, # required
1010
1119
  # compute_environment: "String", # required
1011
1120
  # },
1012
1121
  # ],
1122
+ # service_environment_order: [
1123
+ # {
1124
+ # order: 1, # required
1125
+ # service_environment: "String", # required
1126
+ # },
1127
+ # ],
1128
+ # job_queue_type: "EKS", # accepts EKS, ECS, ECS_FARGATE, SAGEMAKER_TRAINING
1013
1129
  # tags: {
1014
1130
  # "TagKey" => "TagValue",
1015
1131
  # },
@@ -1018,7 +1134,7 @@ module Aws::Batch
1018
1134
  # reason: "String", # required
1019
1135
  # state: "RUNNABLE", # required, accepts RUNNABLE
1020
1136
  # max_time_seconds: 1, # required
1021
- # action: "CANCEL", # required, accepts CANCEL
1137
+ # action: "CANCEL", # required, accepts CANCEL, TERMINATE
1022
1138
  # },
1023
1139
  # ],
1024
1140
  # })
@@ -1037,15 +1153,106 @@ module Aws::Batch
1037
1153
  req.send_request(options)
1038
1154
  end
1039
1155
 
1156
+ # Creates an Batch quota share. Each quota share operates as a virtual
1157
+ # queue with a configured compute capacity, resource sharing strategy,
1158
+ # and borrow limits.
1159
+ #
1160
+ # @option params [required, String] :quota_share_name
1161
+ # The name of the quota share. It can be up to 128 characters long. It
1162
+ # can contain uppercase and lowercase letters, numbers, hyphens (-), and
1163
+ # underscores (\_).
1164
+ #
1165
+ # @option params [required, String] :job_queue
1166
+ # The Batch job queue associated with the quota share. This can be the
1167
+ # job queue name or ARN. A job queue must be in the `VALID` state before
1168
+ # you can associate it with a quota share.
1169
+ #
1170
+ # @option params [required, Array<Types::QuotaShareCapacityLimit>] :capacity_limits
1171
+ # A list that specifies the quantity and type of compute capacity
1172
+ # allocated to the quota share.
1173
+ #
1174
+ # @option params [required, Types::QuotaShareResourceSharingConfiguration] :resource_sharing_configuration
1175
+ # Specifies whether a quota share reserves, lends, or both lends and
1176
+ # borrows idle compute capacity.
1177
+ #
1178
+ # @option params [required, Types::QuotaSharePreemptionConfiguration] :preemption_configuration
1179
+ # Specifies the preemption behavior for jobs in a quota share.
1180
+ #
1181
+ # @option params [String] :state
1182
+ # The state of the quota share. If the quota share is `ENABLED`, it is
1183
+ # able to accept jobs. If the quota share is `DISABLED`, new jobs won't
1184
+ # be accepted but jobs already submitted can finish. The default state
1185
+ # is `ENABLED`.
1186
+ #
1187
+ # @option params [Hash<String,String>] :tags
1188
+ # The tags that you apply to the quota share to help you categorize and
1189
+ # organize your resources. Each tag consists of a key and an optional
1190
+ # value. For more information, see [Tagging your Batch resources][1] in
1191
+ # *Batch User Guide*.
1192
+ #
1193
+ #
1194
+ #
1195
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html
1196
+ #
1197
+ # @return [Types::CreateQuotaShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1198
+ #
1199
+ # * {Types::CreateQuotaShareResponse#quota_share_name #quota_share_name} => String
1200
+ # * {Types::CreateQuotaShareResponse#quota_share_arn #quota_share_arn} => String
1201
+ #
1202
+ # @example Request syntax with placeholder values
1203
+ #
1204
+ # resp = client.create_quota_share({
1205
+ # quota_share_name: "String", # required
1206
+ # job_queue: "String", # required
1207
+ # capacity_limits: [ # required
1208
+ # {
1209
+ # max_capacity: 1, # required
1210
+ # capacity_unit: "String", # required
1211
+ # },
1212
+ # ],
1213
+ # resource_sharing_configuration: { # required
1214
+ # strategy: "RESERVE", # required, accepts RESERVE, LEND, LEND_AND_BORROW
1215
+ # borrow_limit: 1,
1216
+ # },
1217
+ # preemption_configuration: { # required
1218
+ # in_share_preemption: "ENABLED", # required, accepts ENABLED, DISABLED
1219
+ # },
1220
+ # state: "ENABLED", # accepts ENABLED, DISABLED
1221
+ # tags: {
1222
+ # "TagKey" => "TagValue",
1223
+ # },
1224
+ # })
1225
+ #
1226
+ # @example Response structure
1227
+ #
1228
+ # resp.quota_share_name #=> String
1229
+ # resp.quota_share_arn #=> String
1230
+ #
1231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateQuotaShare AWS API Documentation
1232
+ #
1233
+ # @overload create_quota_share(params = {})
1234
+ # @param [Hash] params ({})
1235
+ def create_quota_share(params = {}, options = {})
1236
+ req = build_request(:create_quota_share, params)
1237
+ req.send_request(options)
1238
+ end
1239
+
1040
1240
  # Creates an Batch scheduling policy.
1041
1241
  #
1042
1242
  # @option params [required, String] :name
1043
- # The name of the scheduling policy. It can be up to 128 letters long.
1044
- # It can contain uppercase and lowercase letters, numbers, hyphens (-),
1045
- # and underscores (\_).
1243
+ # The name of the fair-share scheduling policy. It can be up to 128
1244
+ # letters long. It can contain uppercase and lowercase letters, numbers,
1245
+ # hyphens (-), and underscores (\_).
1246
+ #
1247
+ # @option params [Types::QuotaSharePolicy] :quota_share_policy
1248
+ # The quota share scheduling policy details. Only one of fairsharePolicy
1249
+ # or quotaSharePolicy can be set. Once set, this policy type cannot be
1250
+ # removed or changed to a fairSharePolicy.
1046
1251
  #
1047
1252
  # @option params [Types::FairsharePolicy] :fairshare_policy
1048
- # The fair share policy of the scheduling policy.
1253
+ # The fair-share scheduling policy details. Only one of fairsharePolicy
1254
+ # or quotaSharePolicy can be set. Once set, this policy type cannot be
1255
+ # removed or changed to a quotaSharePolicy.
1049
1256
  #
1050
1257
  # @option params [Hash<String,String>] :tags
1051
1258
  # The tags that you apply to the scheduling policy to help you
@@ -1071,6 +1278,9 @@ module Aws::Batch
1071
1278
  #
1072
1279
  # resp = client.create_scheduling_policy({
1073
1280
  # name: "String", # required
1281
+ # quota_share_policy: {
1282
+ # idle_resource_assignment_strategy: "FIFO", # required, accepts FIFO
1283
+ # },
1074
1284
  # fairshare_policy: {
1075
1285
  # share_decay_seconds: 1,
1076
1286
  # compute_reservation: 1,
@@ -1100,6 +1310,74 @@ module Aws::Batch
1100
1310
  req.send_request(options)
1101
1311
  end
1102
1312
 
1313
+ # Creates a service environment for running service jobs. Service
1314
+ # environments define capacity limits for specific service types such as
1315
+ # SageMaker Training jobs.
1316
+ #
1317
+ # @option params [required, String] :service_environment_name
1318
+ # The name for the service environment. It can be up to 128 characters
1319
+ # long and can contain letters, numbers, hyphens (-), and underscores
1320
+ # (\_).
1321
+ #
1322
+ # @option params [required, String] :service_environment_type
1323
+ # The type of service environment. For SageMaker Training jobs, specify
1324
+ # `SAGEMAKER_TRAINING`.
1325
+ #
1326
+ # @option params [String] :state
1327
+ # The state of the service environment. Valid values are `ENABLED` and
1328
+ # `DISABLED`. The default value is `ENABLED`.
1329
+ #
1330
+ # @option params [required, Array<Types::CapacityLimit>] :capacity_limits
1331
+ # The capacity limits for the service environment. The number of
1332
+ # instances a job consumes is the total number of instances requested in
1333
+ # the submit training job request resource configuration.
1334
+ #
1335
+ # @option params [Hash<String,String>] :tags
1336
+ # The tags that you apply to the service environment to help you
1337
+ # categorize and organize your resources. Each tag consists of a key and
1338
+ # an optional value. For more information, see [Tagging your Batch
1339
+ # resources][1].
1340
+ #
1341
+ #
1342
+ #
1343
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html
1344
+ #
1345
+ # @return [Types::CreateServiceEnvironmentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1346
+ #
1347
+ # * {Types::CreateServiceEnvironmentResponse#service_environment_name #service_environment_name} => String
1348
+ # * {Types::CreateServiceEnvironmentResponse#service_environment_arn #service_environment_arn} => String
1349
+ #
1350
+ # @example Request syntax with placeholder values
1351
+ #
1352
+ # resp = client.create_service_environment({
1353
+ # service_environment_name: "String", # required
1354
+ # service_environment_type: "SAGEMAKER_TRAINING", # required, accepts SAGEMAKER_TRAINING
1355
+ # state: "ENABLED", # accepts ENABLED, DISABLED
1356
+ # capacity_limits: [ # required
1357
+ # {
1358
+ # max_capacity: 1,
1359
+ # capacity_unit: "String",
1360
+ # },
1361
+ # ],
1362
+ # tags: {
1363
+ # "TagKey" => "TagValue",
1364
+ # },
1365
+ # })
1366
+ #
1367
+ # @example Response structure
1368
+ #
1369
+ # resp.service_environment_name #=> String
1370
+ # resp.service_environment_arn #=> String
1371
+ #
1372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateServiceEnvironment AWS API Documentation
1373
+ #
1374
+ # @overload create_service_environment(params = {})
1375
+ # @param [Hash] params ({})
1376
+ def create_service_environment(params = {}, options = {})
1377
+ req = build_request(:create_service_environment, params)
1378
+ req.send_request(options)
1379
+ end
1380
+
1103
1381
  # Deletes an Batch compute environment.
1104
1382
  #
1105
1383
  # Before you can delete a compute environment, you must set its state to
@@ -1144,10 +1422,44 @@ module Aws::Batch
1144
1422
  req.send_request(options)
1145
1423
  end
1146
1424
 
1425
+ # Deletes the specified consumable resource.
1426
+ #
1427
+ # @option params [required, String] :consumable_resource
1428
+ # The name or ARN of the consumable resource that will be deleted.
1429
+ #
1430
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1431
+ #
1432
+ #
1433
+ # @example Example: To delete a consumable resource
1434
+ #
1435
+ # # Deletes the specified consumable resource.
1436
+ #
1437
+ # resp = client.delete_consumable_resource({
1438
+ # consumable_resource: "myConsumableResource",
1439
+ # })
1440
+ #
1441
+ # resp.to_h outputs the following:
1442
+ # {
1443
+ # }
1444
+ #
1445
+ # @example Request syntax with placeholder values
1446
+ #
1447
+ # resp = client.delete_consumable_resource({
1448
+ # consumable_resource: "String", # required
1449
+ # })
1450
+ #
1451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteConsumableResource AWS API Documentation
1452
+ #
1453
+ # @overload delete_consumable_resource(params = {})
1454
+ # @param [Hash] params ({})
1455
+ def delete_consumable_resource(params = {}, options = {})
1456
+ req = build_request(:delete_consumable_resource, params)
1457
+ req.send_request(options)
1458
+ end
1459
+
1147
1460
  # Deletes the specified job queue. You must first disable submissions
1148
1461
  # for a queue with the UpdateJobQueue operation. All jobs in the queue
1149
- # are eventually terminated when you delete a job queue. The jobs are
1150
- # terminated at a rate of about 16 jobs each second.
1462
+ # are eventually terminated when you delete a job queue.
1151
1463
  #
1152
1464
  # It's not necessary to disassociate compute environments from a queue
1153
1465
  # before submitting a `DeleteJobQueue` request.
@@ -1186,6 +1498,31 @@ module Aws::Batch
1186
1498
  req.send_request(options)
1187
1499
  end
1188
1500
 
1501
+ # Deletes the specified quota share. You must first disable submissions
1502
+ # for the share by updating the state to `DISABLED` using the
1503
+ # UpdateQuotaShare operation. All jobs in the share are eventually
1504
+ # terminated when you delete a quota share.
1505
+ #
1506
+ # @option params [required, String] :quota_share_arn
1507
+ # The Amazon Resource Name (ARN) of the quota share.
1508
+ #
1509
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1510
+ #
1511
+ # @example Request syntax with placeholder values
1512
+ #
1513
+ # resp = client.delete_quota_share({
1514
+ # quota_share_arn: "String", # required
1515
+ # })
1516
+ #
1517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteQuotaShare AWS API Documentation
1518
+ #
1519
+ # @overload delete_quota_share(params = {})
1520
+ # @param [Hash] params ({})
1521
+ def delete_quota_share(params = {}, options = {})
1522
+ req = build_request(:delete_quota_share, params)
1523
+ req.send_request(options)
1524
+ end
1525
+
1189
1526
  # Deletes the specified scheduling policy.
1190
1527
  #
1191
1528
  # You can't delete a scheduling policy that's used in any job queues.
@@ -1210,6 +1547,31 @@ module Aws::Batch
1210
1547
  req.send_request(options)
1211
1548
  end
1212
1549
 
1550
+ # Deletes a Service environment. Before you can delete a service
1551
+ # environment, you must first set its state to `DISABLED` with the
1552
+ # `UpdateServiceEnvironment` API operation and disassociate it from any
1553
+ # job queues with the `UpdateJobQueue` API operation.
1554
+ #
1555
+ # @option params [required, String] :service_environment
1556
+ # The name or ARN of the service environment to delete.
1557
+ #
1558
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1559
+ #
1560
+ # @example Request syntax with placeholder values
1561
+ #
1562
+ # resp = client.delete_service_environment({
1563
+ # service_environment: "String", # required
1564
+ # })
1565
+ #
1566
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteServiceEnvironment AWS API Documentation
1567
+ #
1568
+ # @overload delete_service_environment(params = {})
1569
+ # @param [Hash] params ({})
1570
+ def delete_service_environment(params = {}, options = {})
1571
+ req = build_request(:delete_service_environment, params)
1572
+ req.send_request(options)
1573
+ end
1574
+
1213
1575
  # Deregisters an Batch job definition. Job definitions are permanently
1214
1576
  # deleted after 180 days.
1215
1577
  #
@@ -1359,7 +1721,7 @@ module Aws::Batch
1359
1721
  # resp.compute_environments[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "DELETED", "VALID", "INVALID"
1360
1722
  # resp.compute_environments[0].status_reason #=> String
1361
1723
  # resp.compute_environments[0].compute_resources.type #=> String, one of "EC2", "SPOT", "FARGATE", "FARGATE_SPOT"
1362
- # resp.compute_environments[0].compute_resources.allocation_strategy #=> String, one of "BEST_FIT", "BEST_FIT_PROGRESSIVE", "SPOT_CAPACITY_OPTIMIZED", "SPOT_PRICE_CAPACITY_OPTIMIZED"
1724
+ # resp.compute_environments[0].compute_resources.allocation_strategy #=> String, one of "BEST_FIT", "BEST_FIT_PROGRESSIVE", "BEST_FIT_PROGRESSIVE_ORDERED", "SPOT_CAPACITY_OPTIMIZED", "SPOT_PRICE_CAPACITY_OPTIMIZED", "SPOT_CAPACITY_OPTIMIZED_PRIORITIZED"
1363
1725
  # resp.compute_environments[0].compute_resources.minv_cpus #=> Integer
1364
1726
  # resp.compute_environments[0].compute_resources.maxv_cpus #=> Integer
1365
1727
  # resp.compute_environments[0].compute_resources.desiredv_cpus #=> Integer
@@ -1380,10 +1742,20 @@ module Aws::Batch
1380
1742
  # resp.compute_environments[0].compute_resources.launch_template.launch_template_id #=> String
1381
1743
  # resp.compute_environments[0].compute_resources.launch_template.launch_template_name #=> String
1382
1744
  # resp.compute_environments[0].compute_resources.launch_template.version #=> String
1745
+ # resp.compute_environments[0].compute_resources.launch_template.overrides #=> Array
1746
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].launch_template_id #=> String
1747
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].launch_template_name #=> String
1748
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].version #=> String
1749
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].target_instance_types #=> Array
1750
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].target_instance_types[0] #=> String
1751
+ # resp.compute_environments[0].compute_resources.launch_template.overrides[0].userdata_type #=> String, one of "EKS_BOOTSTRAP_SH", "EKS_NODEADM"
1752
+ # resp.compute_environments[0].compute_resources.launch_template.userdata_type #=> String, one of "EKS_BOOTSTRAP_SH", "EKS_NODEADM"
1383
1753
  # resp.compute_environments[0].compute_resources.ec2_configuration #=> Array
1384
1754
  # resp.compute_environments[0].compute_resources.ec2_configuration[0].image_type #=> String
1385
1755
  # resp.compute_environments[0].compute_resources.ec2_configuration[0].image_id_override #=> String
1756
+ # resp.compute_environments[0].compute_resources.ec2_configuration[0].batch_image_status #=> String
1386
1757
  # resp.compute_environments[0].compute_resources.ec2_configuration[0].image_kubernetes_version #=> String
1758
+ # resp.compute_environments[0].compute_resources.scaling_policy.min_scale_down_delay_minutes #=> Integer
1387
1759
  # resp.compute_environments[0].service_role #=> String
1388
1760
  # resp.compute_environments[0].update_policy.terminate_jobs_on_update #=> Boolean
1389
1761
  # resp.compute_environments[0].update_policy.job_execution_timeout_minutes #=> Integer
@@ -1403,39 +1775,106 @@ module Aws::Batch
1403
1775
  req.send_request(options)
1404
1776
  end
1405
1777
 
1406
- # Describes a list of job definitions. You can specify a `status` (such
1407
- # as `ACTIVE`) to only return job definitions that match that status.
1778
+ # Returns a description of the specified consumable resource.
1408
1779
  #
1409
- # @option params [Array<String>] :job_definitions
1410
- # A list of up to 100 job definitions. Each entry in the list can either
1411
- # be an ARN in the format
1412
- # `arn:aws:batch:$\{Region\}:$\{Account\}:job-definition/$\{JobDefinitionName\}:$\{Revision\}`
1413
- # or a short version using the form
1414
- # `$\{JobDefinitionName\}:$\{Revision\}`. This parameter can't be used
1415
- # with other parameters.
1780
+ # @option params [required, String] :consumable_resource
1781
+ # The name or ARN of the consumable resource whose description will be
1782
+ # returned.
1416
1783
  #
1417
- # @option params [Integer] :max_results
1418
- # The maximum number of results returned by `DescribeJobDefinitions` in
1419
- # paginated output. When this parameter is used,
1420
- # `DescribeJobDefinitions` only returns `maxResults` results in a single
1421
- # page and a `nextToken` response element. The remaining results of the
1422
- # initial request can be seen by sending another
1423
- # `DescribeJobDefinitions` request with the returned `nextToken` value.
1424
- # This value can be between 1 and 100. If this parameter isn't used,
1425
- # then `DescribeJobDefinitions` returns up to 100 results and a
1426
- # `nextToken` value if applicable.
1784
+ # @return [Types::DescribeConsumableResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1427
1785
  #
1428
- # @option params [String] :job_definition_name
1429
- # The name of the job definition to describe.
1786
+ # * {Types::DescribeConsumableResourceResponse#consumable_resource_name #consumable_resource_name} => String
1787
+ # * {Types::DescribeConsumableResourceResponse#consumable_resource_arn #consumable_resource_arn} => String
1788
+ # * {Types::DescribeConsumableResourceResponse#total_quantity #total_quantity} => Integer
1789
+ # * {Types::DescribeConsumableResourceResponse#in_use_quantity #in_use_quantity} => Integer
1790
+ # * {Types::DescribeConsumableResourceResponse#available_quantity #available_quantity} => Integer
1791
+ # * {Types::DescribeConsumableResourceResponse#resource_type #resource_type} => String
1792
+ # * {Types::DescribeConsumableResourceResponse#created_at #created_at} => Integer
1793
+ # * {Types::DescribeConsumableResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1430
1794
  #
1431
- # @option params [String] :status
1432
- # The status used to filter job definitions.
1433
1795
  #
1434
- # @option params [String] :next_token
1435
- # The `nextToken` value returned from a previous paginated
1436
- # `DescribeJobDefinitions` request where `maxResults` was used and the
1437
- # results exceeded the value of that parameter. Pagination continues
1438
- # from the end of the previous results that returned the `nextToken`
1796
+ # @example Example: To get a description of a consumable resource
1797
+ #
1798
+ # # Returns a description of the specified consumable resource.
1799
+ #
1800
+ # resp = client.describe_consumable_resource({
1801
+ # consumable_resource: "myConsumableResource",
1802
+ # })
1803
+ #
1804
+ # resp.to_h outputs the following:
1805
+ # {
1806
+ # available_quantity: 123,
1807
+ # consumable_resource_arn: "arn:aws:batch:us-east-1:012345678910:consumable-resource/myConsumableResource",
1808
+ # consumable_resource_name: "myConsumableResource",
1809
+ # created_at: 123,
1810
+ # in_use_quantity: 123,
1811
+ # resource_type: "REPLENISHABLE",
1812
+ # tags: {
1813
+ # "Department" => "Engineering",
1814
+ # "User" => "JaneDoe",
1815
+ # },
1816
+ # total_quantity: 123,
1817
+ # }
1818
+ #
1819
+ # @example Request syntax with placeholder values
1820
+ #
1821
+ # resp = client.describe_consumable_resource({
1822
+ # consumable_resource: "String", # required
1823
+ # })
1824
+ #
1825
+ # @example Response structure
1826
+ #
1827
+ # resp.consumable_resource_name #=> String
1828
+ # resp.consumable_resource_arn #=> String
1829
+ # resp.total_quantity #=> Integer
1830
+ # resp.in_use_quantity #=> Integer
1831
+ # resp.available_quantity #=> Integer
1832
+ # resp.resource_type #=> String
1833
+ # resp.created_at #=> Integer
1834
+ # resp.tags #=> Hash
1835
+ # resp.tags["TagKey"] #=> String
1836
+ #
1837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeConsumableResource AWS API Documentation
1838
+ #
1839
+ # @overload describe_consumable_resource(params = {})
1840
+ # @param [Hash] params ({})
1841
+ def describe_consumable_resource(params = {}, options = {})
1842
+ req = build_request(:describe_consumable_resource, params)
1843
+ req.send_request(options)
1844
+ end
1845
+
1846
+ # Describes a list of job definitions. You can specify a `status` (such
1847
+ # as `ACTIVE`) to only return job definitions that match that status.
1848
+ #
1849
+ # @option params [Array<String>] :job_definitions
1850
+ # A list of up to 100 job definitions. Each entry in the list can either
1851
+ # be an ARN in the format
1852
+ # `arn:aws:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision}`
1853
+ # or a short version using the form `${JobDefinitionName}:${Revision}`.
1854
+ # This parameter can't be used with other parameters.
1855
+ #
1856
+ # @option params [Integer] :max_results
1857
+ # The maximum number of results returned by `DescribeJobDefinitions` in
1858
+ # paginated output. When this parameter is used,
1859
+ # `DescribeJobDefinitions` only returns `maxResults` results in a single
1860
+ # page and a `nextToken` response element. The remaining results of the
1861
+ # initial request can be seen by sending another
1862
+ # `DescribeJobDefinitions` request with the returned `nextToken` value.
1863
+ # This value can be between 1 and 100. If this parameter isn't used,
1864
+ # then `DescribeJobDefinitions` returns up to 100 results and a
1865
+ # `nextToken` value if applicable.
1866
+ #
1867
+ # @option params [String] :job_definition_name
1868
+ # The name of the job definition to describe.
1869
+ #
1870
+ # @option params [String] :status
1871
+ # The status used to filter job definitions.
1872
+ #
1873
+ # @option params [String] :next_token
1874
+ # The `nextToken` value returned from a previous paginated
1875
+ # `DescribeJobDefinitions` request where `maxResults` was used and the
1876
+ # results exceeded the value of that parameter. Pagination continues
1877
+ # from the end of the previous results that returned the `nextToken`
1439
1878
  # value. This value is `null` when there are no more results to return.
1440
1879
  #
1441
1880
  # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
@@ -1540,6 +1979,10 @@ module Aws::Batch
1540
1979
  # resp.job_definitions[0].container_properties.volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
1541
1980
  # resp.job_definitions[0].container_properties.volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
1542
1981
  # resp.job_definitions[0].container_properties.volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
1982
+ # resp.job_definitions[0].container_properties.volumes[0].s3files_volume_configuration.file_system_arn #=> String
1983
+ # resp.job_definitions[0].container_properties.volumes[0].s3files_volume_configuration.root_directory #=> String
1984
+ # resp.job_definitions[0].container_properties.volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
1985
+ # resp.job_definitions[0].container_properties.volumes[0].s3files_volume_configuration.access_point_arn #=> String
1543
1986
  # resp.job_definitions[0].container_properties.environment #=> Array
1544
1987
  # resp.job_definitions[0].container_properties.environment[0].name #=> String
1545
1988
  # resp.job_definitions[0].container_properties.environment[0].value #=> String
@@ -1572,7 +2015,7 @@ module Aws::Batch
1572
2015
  # resp.job_definitions[0].container_properties.linux_parameters.tmpfs[0].mount_options[0] #=> String
1573
2016
  # resp.job_definitions[0].container_properties.linux_parameters.max_swap #=> Integer
1574
2017
  # resp.job_definitions[0].container_properties.linux_parameters.swappiness #=> Integer
1575
- # resp.job_definitions[0].container_properties.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2018
+ # resp.job_definitions[0].container_properties.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
1576
2019
  # resp.job_definitions[0].container_properties.log_configuration.options #=> Hash
1577
2020
  # resp.job_definitions[0].container_properties.log_configuration.options["String"] #=> String
1578
2021
  # resp.job_definitions[0].container_properties.log_configuration.secret_options #=> Array
@@ -1583,6 +2026,7 @@ module Aws::Batch
1583
2026
  # resp.job_definitions[0].container_properties.secrets[0].value_from #=> String
1584
2027
  # resp.job_definitions[0].container_properties.network_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
1585
2028
  # resp.job_definitions[0].container_properties.fargate_platform_configuration.platform_version #=> String
2029
+ # resp.job_definitions[0].container_properties.enable_execute_command #=> Boolean
1586
2030
  # resp.job_definitions[0].container_properties.ephemeral_storage.size_in_gi_b #=> Integer
1587
2031
  # resp.job_definitions[0].container_properties.runtime_platform.operating_system_family #=> String
1588
2032
  # resp.job_definitions[0].container_properties.runtime_platform.cpu_architecture #=> String
@@ -1608,6 +2052,10 @@ module Aws::Batch
1608
2052
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
1609
2053
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
1610
2054
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2055
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.file_system_arn #=> String
2056
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.root_directory #=> String
2057
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2058
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.access_point_arn #=> String
1611
2059
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.environment #=> Array
1612
2060
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.environment[0].name #=> String
1613
2061
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.environment[0].value #=> String
@@ -1640,7 +2088,7 @@ module Aws::Batch
1640
2088
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.linux_parameters.tmpfs[0].mount_options[0] #=> String
1641
2089
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.linux_parameters.max_swap #=> Integer
1642
2090
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.linux_parameters.swappiness #=> Integer
1643
- # resp.job_definitions[0].node_properties.node_range_properties[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2091
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
1644
2092
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.log_configuration.options #=> Hash
1645
2093
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.log_configuration.options["String"] #=> String
1646
2094
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.log_configuration.secret_options #=> Array
@@ -1651,6 +2099,7 @@ module Aws::Batch
1651
2099
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.secrets[0].value_from #=> String
1652
2100
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.network_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
1653
2101
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.fargate_platform_configuration.platform_version #=> String
2102
+ # resp.job_definitions[0].node_properties.node_range_properties[0].container.enable_execute_command #=> Boolean
1654
2103
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.ephemeral_storage.size_in_gi_b #=> Integer
1655
2104
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.runtime_platform.operating_system_family #=> String
1656
2105
  # resp.job_definitions[0].node_properties.node_range_properties[0].container.runtime_platform.cpu_architecture #=> String
@@ -1668,6 +2117,9 @@ module Aws::Batch
1668
2117
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].environment[0].name #=> String
1669
2118
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].environment[0].value #=> String
1670
2119
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].essential #=> Boolean
2120
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.type #=> String, one of "fluentd", "fluentbit"
2121
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options #=> Hash
2122
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options["String"] #=> String
1671
2123
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].image #=> String
1672
2124
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices #=> Array
1673
2125
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices[0].host_path #=> String
@@ -1683,7 +2135,7 @@ module Aws::Batch
1683
2135
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.tmpfs[0].mount_options[0] #=> String
1684
2136
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.max_swap #=> Integer
1685
2137
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.swappiness #=> Integer
1686
- # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2138
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
1687
2139
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.options #=> Hash
1688
2140
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.options["String"] #=> String
1689
2141
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.secret_options #=> Array
@@ -1708,6 +2160,8 @@ module Aws::Batch
1708
2160
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].ulimits[0].name #=> String
1709
2161
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].ulimits[0].soft_limit #=> Integer
1710
2162
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].user #=> String
2163
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].start_timeout #=> Integer
2164
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].stop_timeout #=> Integer
1711
2165
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].ephemeral_storage.size_in_gi_b #=> Integer
1712
2166
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].execution_role_arn #=> String
1713
2167
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].platform_version #=> String
@@ -1726,6 +2180,11 @@ module Aws::Batch
1726
2180
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
1727
2181
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
1728
2182
  # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2183
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.file_system_arn #=> String
2184
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.root_directory #=> String
2185
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2186
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.access_point_arn #=> String
2187
+ # resp.job_definitions[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].enable_execute_command #=> Boolean
1729
2188
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.service_account_name #=> String
1730
2189
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.host_network #=> Boolean
1731
2190
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.dns_policy #=> String
@@ -1749,6 +2208,7 @@ module Aws::Batch
1749
2208
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts #=> Array
1750
2209
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].name #=> String
1751
2210
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].mount_path #=> String
2211
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].sub_path #=> String
1752
2212
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].read_only #=> Boolean
1753
2213
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].security_context.run_as_user #=> Integer
1754
2214
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].security_context.run_as_group #=> Integer
@@ -1774,6 +2234,7 @@ module Aws::Batch
1774
2234
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts #=> Array
1775
2235
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].name #=> String
1776
2236
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].mount_path #=> String
2237
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].sub_path #=> String
1777
2238
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].read_only #=> Boolean
1778
2239
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_user #=> Integer
1779
2240
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_group #=> Integer
@@ -1788,9 +2249,17 @@ module Aws::Batch
1788
2249
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].empty_dir.size_limit #=> String
1789
2250
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].secret.secret_name #=> String
1790
2251
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].secret.optional #=> Boolean
2252
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.claim_name #=> String
2253
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.read_only #=> Boolean
1791
2254
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.labels #=> Hash
1792
2255
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.labels["String"] #=> String
2256
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.annotations #=> Hash
2257
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.annotations["String"] #=> String
2258
+ # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.namespace #=> String
1793
2259
  # resp.job_definitions[0].node_properties.node_range_properties[0].eks_properties.pod_properties.share_process_namespace #=> Boolean
2260
+ # resp.job_definitions[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list #=> Array
2261
+ # resp.job_definitions[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list[0].consumable_resource #=> String
2262
+ # resp.job_definitions[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list[0].quantity #=> Integer
1794
2263
  # resp.job_definitions[0].tags #=> Hash
1795
2264
  # resp.job_definitions[0].tags["TagKey"] #=> String
1796
2265
  # resp.job_definitions[0].propagate_tags #=> Boolean
@@ -1807,6 +2276,9 @@ module Aws::Batch
1807
2276
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].environment[0].name #=> String
1808
2277
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].environment[0].value #=> String
1809
2278
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].essential #=> Boolean
2279
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.type #=> String, one of "fluentd", "fluentbit"
2280
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options #=> Hash
2281
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options["String"] #=> String
1810
2282
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].image #=> String
1811
2283
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices #=> Array
1812
2284
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices[0].host_path #=> String
@@ -1822,7 +2294,7 @@ module Aws::Batch
1822
2294
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].linux_parameters.tmpfs[0].mount_options[0] #=> String
1823
2295
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].linux_parameters.max_swap #=> Integer
1824
2296
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].linux_parameters.swappiness #=> Integer
1825
- # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2297
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
1826
2298
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].log_configuration.options #=> Hash
1827
2299
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].log_configuration.options["String"] #=> String
1828
2300
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].log_configuration.secret_options #=> Array
@@ -1847,6 +2319,8 @@ module Aws::Batch
1847
2319
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].ulimits[0].name #=> String
1848
2320
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].ulimits[0].soft_limit #=> Integer
1849
2321
  # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].user #=> String
2322
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].start_timeout #=> Integer
2323
+ # resp.job_definitions[0].ecs_properties.task_properties[0].containers[0].stop_timeout #=> Integer
1850
2324
  # resp.job_definitions[0].ecs_properties.task_properties[0].ephemeral_storage.size_in_gi_b #=> Integer
1851
2325
  # resp.job_definitions[0].ecs_properties.task_properties[0].execution_role_arn #=> String
1852
2326
  # resp.job_definitions[0].ecs_properties.task_properties[0].platform_version #=> String
@@ -1865,6 +2339,11 @@ module Aws::Batch
1865
2339
  # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
1866
2340
  # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
1867
2341
  # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2342
+ # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.file_system_arn #=> String
2343
+ # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.root_directory #=> String
2344
+ # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2345
+ # resp.job_definitions[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.access_point_arn #=> String
2346
+ # resp.job_definitions[0].ecs_properties.task_properties[0].enable_execute_command #=> Boolean
1868
2347
  # resp.job_definitions[0].eks_properties.pod_properties.service_account_name #=> String
1869
2348
  # resp.job_definitions[0].eks_properties.pod_properties.host_network #=> Boolean
1870
2349
  # resp.job_definitions[0].eks_properties.pod_properties.dns_policy #=> String
@@ -1888,6 +2367,7 @@ module Aws::Batch
1888
2367
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].volume_mounts #=> Array
1889
2368
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].volume_mounts[0].name #=> String
1890
2369
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].volume_mounts[0].mount_path #=> String
2370
+ # resp.job_definitions[0].eks_properties.pod_properties.containers[0].volume_mounts[0].sub_path #=> String
1891
2371
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].volume_mounts[0].read_only #=> Boolean
1892
2372
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].security_context.run_as_user #=> Integer
1893
2373
  # resp.job_definitions[0].eks_properties.pod_properties.containers[0].security_context.run_as_group #=> Integer
@@ -1913,6 +2393,7 @@ module Aws::Batch
1913
2393
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].volume_mounts #=> Array
1914
2394
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].name #=> String
1915
2395
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].mount_path #=> String
2396
+ # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].sub_path #=> String
1916
2397
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].read_only #=> Boolean
1917
2398
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_user #=> Integer
1918
2399
  # resp.job_definitions[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_group #=> Integer
@@ -1927,10 +2408,18 @@ module Aws::Batch
1927
2408
  # resp.job_definitions[0].eks_properties.pod_properties.volumes[0].empty_dir.size_limit #=> String
1928
2409
  # resp.job_definitions[0].eks_properties.pod_properties.volumes[0].secret.secret_name #=> String
1929
2410
  # resp.job_definitions[0].eks_properties.pod_properties.volumes[0].secret.optional #=> Boolean
2411
+ # resp.job_definitions[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.claim_name #=> String
2412
+ # resp.job_definitions[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.read_only #=> Boolean
1930
2413
  # resp.job_definitions[0].eks_properties.pod_properties.metadata.labels #=> Hash
1931
2414
  # resp.job_definitions[0].eks_properties.pod_properties.metadata.labels["String"] #=> String
2415
+ # resp.job_definitions[0].eks_properties.pod_properties.metadata.annotations #=> Hash
2416
+ # resp.job_definitions[0].eks_properties.pod_properties.metadata.annotations["String"] #=> String
2417
+ # resp.job_definitions[0].eks_properties.pod_properties.metadata.namespace #=> String
1932
2418
  # resp.job_definitions[0].eks_properties.pod_properties.share_process_namespace #=> Boolean
1933
2419
  # resp.job_definitions[0].container_orchestration_type #=> String, one of "ECS", "EKS"
2420
+ # resp.job_definitions[0].consumable_resource_properties.consumable_resource_list #=> Array
2421
+ # resp.job_definitions[0].consumable_resource_properties.consumable_resource_list[0].consumable_resource #=> String
2422
+ # resp.job_definitions[0].consumable_resource_properties.consumable_resource_list[0].quantity #=> Integer
1934
2423
  # resp.next_token #=> String
1935
2424
  #
1936
2425
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeJobDefinitions AWS API Documentation
@@ -2029,13 +2518,17 @@ module Aws::Batch
2029
2518
  # resp.job_queues[0].compute_environment_order #=> Array
2030
2519
  # resp.job_queues[0].compute_environment_order[0].order #=> Integer
2031
2520
  # resp.job_queues[0].compute_environment_order[0].compute_environment #=> String
2521
+ # resp.job_queues[0].service_environment_order #=> Array
2522
+ # resp.job_queues[0].service_environment_order[0].order #=> Integer
2523
+ # resp.job_queues[0].service_environment_order[0].service_environment #=> String
2524
+ # resp.job_queues[0].job_queue_type #=> String, one of "EKS", "ECS", "ECS_FARGATE", "SAGEMAKER_TRAINING"
2032
2525
  # resp.job_queues[0].tags #=> Hash
2033
2526
  # resp.job_queues[0].tags["TagKey"] #=> String
2034
2527
  # resp.job_queues[0].job_state_time_limit_actions #=> Array
2035
2528
  # resp.job_queues[0].job_state_time_limit_actions[0].reason #=> String
2036
2529
  # resp.job_queues[0].job_state_time_limit_actions[0].state #=> String, one of "RUNNABLE"
2037
2530
  # resp.job_queues[0].job_state_time_limit_actions[0].max_time_seconds #=> Integer
2038
- # resp.job_queues[0].job_state_time_limit_actions[0].action #=> String, one of "CANCEL"
2531
+ # resp.job_queues[0].job_state_time_limit_actions[0].action #=> String, one of "CANCEL", "TERMINATE"
2039
2532
  # resp.next_token #=> String
2040
2533
  #
2041
2534
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeJobQueues AWS API Documentation
@@ -2179,6 +2672,10 @@ module Aws::Batch
2179
2672
  # resp.jobs[0].container.volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
2180
2673
  # resp.jobs[0].container.volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
2181
2674
  # resp.jobs[0].container.volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2675
+ # resp.jobs[0].container.volumes[0].s3files_volume_configuration.file_system_arn #=> String
2676
+ # resp.jobs[0].container.volumes[0].s3files_volume_configuration.root_directory #=> String
2677
+ # resp.jobs[0].container.volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2678
+ # resp.jobs[0].container.volumes[0].s3files_volume_configuration.access_point_arn #=> String
2182
2679
  # resp.jobs[0].container.environment #=> Array
2183
2680
  # resp.jobs[0].container.environment[0].name #=> String
2184
2681
  # resp.jobs[0].container.environment[0].value #=> String
@@ -2220,7 +2717,7 @@ module Aws::Batch
2220
2717
  # resp.jobs[0].container.linux_parameters.tmpfs[0].mount_options[0] #=> String
2221
2718
  # resp.jobs[0].container.linux_parameters.max_swap #=> Integer
2222
2719
  # resp.jobs[0].container.linux_parameters.swappiness #=> Integer
2223
- # resp.jobs[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2720
+ # resp.jobs[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
2224
2721
  # resp.jobs[0].container.log_configuration.options #=> Hash
2225
2722
  # resp.jobs[0].container.log_configuration.options["String"] #=> String
2226
2723
  # resp.jobs[0].container.log_configuration.secret_options #=> Array
@@ -2235,6 +2732,7 @@ module Aws::Batch
2235
2732
  # resp.jobs[0].container.runtime_platform.operating_system_family #=> String
2236
2733
  # resp.jobs[0].container.runtime_platform.cpu_architecture #=> String
2237
2734
  # resp.jobs[0].container.repository_credentials.credentials_parameter #=> String
2735
+ # resp.jobs[0].container.enable_execute_command #=> Boolean
2238
2736
  # resp.jobs[0].node_details.node_index #=> Integer
2239
2737
  # resp.jobs[0].node_details.is_main_node #=> Boolean
2240
2738
  # resp.jobs[0].node_properties.num_nodes #=> Integer
@@ -2257,6 +2755,10 @@ module Aws::Batch
2257
2755
  # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
2258
2756
  # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
2259
2757
  # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2758
+ # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.file_system_arn #=> String
2759
+ # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.root_directory #=> String
2760
+ # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2761
+ # resp.jobs[0].node_properties.node_range_properties[0].container.volumes[0].s3files_volume_configuration.access_point_arn #=> String
2260
2762
  # resp.jobs[0].node_properties.node_range_properties[0].container.environment #=> Array
2261
2763
  # resp.jobs[0].node_properties.node_range_properties[0].container.environment[0].name #=> String
2262
2764
  # resp.jobs[0].node_properties.node_range_properties[0].container.environment[0].value #=> String
@@ -2289,7 +2791,7 @@ module Aws::Batch
2289
2791
  # resp.jobs[0].node_properties.node_range_properties[0].container.linux_parameters.tmpfs[0].mount_options[0] #=> String
2290
2792
  # resp.jobs[0].node_properties.node_range_properties[0].container.linux_parameters.max_swap #=> Integer
2291
2793
  # resp.jobs[0].node_properties.node_range_properties[0].container.linux_parameters.swappiness #=> Integer
2292
- # resp.jobs[0].node_properties.node_range_properties[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2794
+ # resp.jobs[0].node_properties.node_range_properties[0].container.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
2293
2795
  # resp.jobs[0].node_properties.node_range_properties[0].container.log_configuration.options #=> Hash
2294
2796
  # resp.jobs[0].node_properties.node_range_properties[0].container.log_configuration.options["String"] #=> String
2295
2797
  # resp.jobs[0].node_properties.node_range_properties[0].container.log_configuration.secret_options #=> Array
@@ -2300,6 +2802,7 @@ module Aws::Batch
2300
2802
  # resp.jobs[0].node_properties.node_range_properties[0].container.secrets[0].value_from #=> String
2301
2803
  # resp.jobs[0].node_properties.node_range_properties[0].container.network_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
2302
2804
  # resp.jobs[0].node_properties.node_range_properties[0].container.fargate_platform_configuration.platform_version #=> String
2805
+ # resp.jobs[0].node_properties.node_range_properties[0].container.enable_execute_command #=> Boolean
2303
2806
  # resp.jobs[0].node_properties.node_range_properties[0].container.ephemeral_storage.size_in_gi_b #=> Integer
2304
2807
  # resp.jobs[0].node_properties.node_range_properties[0].container.runtime_platform.operating_system_family #=> String
2305
2808
  # resp.jobs[0].node_properties.node_range_properties[0].container.runtime_platform.cpu_architecture #=> String
@@ -2317,6 +2820,9 @@ module Aws::Batch
2317
2820
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].environment[0].name #=> String
2318
2821
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].environment[0].value #=> String
2319
2822
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].essential #=> Boolean
2823
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.type #=> String, one of "fluentd", "fluentbit"
2824
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options #=> Hash
2825
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options["String"] #=> String
2320
2826
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].image #=> String
2321
2827
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices #=> Array
2322
2828
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices[0].host_path #=> String
@@ -2332,7 +2838,7 @@ module Aws::Batch
2332
2838
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.tmpfs[0].mount_options[0] #=> String
2333
2839
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.max_swap #=> Integer
2334
2840
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].linux_parameters.swappiness #=> Integer
2335
- # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
2841
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
2336
2842
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.options #=> Hash
2337
2843
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.options["String"] #=> String
2338
2844
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].log_configuration.secret_options #=> Array
@@ -2357,6 +2863,8 @@ module Aws::Batch
2357
2863
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].ulimits[0].name #=> String
2358
2864
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].ulimits[0].soft_limit #=> Integer
2359
2865
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].user #=> String
2866
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].start_timeout #=> Integer
2867
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].containers[0].stop_timeout #=> Integer
2360
2868
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].ephemeral_storage.size_in_gi_b #=> Integer
2361
2869
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].execution_role_arn #=> String
2362
2870
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].platform_version #=> String
@@ -2375,6 +2883,11 @@ module Aws::Batch
2375
2883
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
2376
2884
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
2377
2885
  # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
2886
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.file_system_arn #=> String
2887
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.root_directory #=> String
2888
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
2889
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.access_point_arn #=> String
2890
+ # resp.jobs[0].node_properties.node_range_properties[0].ecs_properties.task_properties[0].enable_execute_command #=> Boolean
2378
2891
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.service_account_name #=> String
2379
2892
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.host_network #=> Boolean
2380
2893
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.dns_policy #=> String
@@ -2398,6 +2911,7 @@ module Aws::Batch
2398
2911
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts #=> Array
2399
2912
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].name #=> String
2400
2913
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].mount_path #=> String
2914
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].sub_path #=> String
2401
2915
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].volume_mounts[0].read_only #=> Boolean
2402
2916
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].security_context.run_as_user #=> Integer
2403
2917
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.containers[0].security_context.run_as_group #=> Integer
@@ -2423,6 +2937,7 @@ module Aws::Batch
2423
2937
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts #=> Array
2424
2938
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].name #=> String
2425
2939
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].mount_path #=> String
2940
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].sub_path #=> String
2426
2941
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].read_only #=> Boolean
2427
2942
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_user #=> Integer
2428
2943
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_group #=> Integer
@@ -2437,11 +2952,20 @@ module Aws::Batch
2437
2952
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].empty_dir.size_limit #=> String
2438
2953
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].secret.secret_name #=> String
2439
2954
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].secret.optional #=> Boolean
2955
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.claim_name #=> String
2956
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.read_only #=> Boolean
2440
2957
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.labels #=> Hash
2441
2958
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.labels["String"] #=> String
2959
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.annotations #=> Hash
2960
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.annotations["String"] #=> String
2961
+ # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.metadata.namespace #=> String
2442
2962
  # resp.jobs[0].node_properties.node_range_properties[0].eks_properties.pod_properties.share_process_namespace #=> Boolean
2963
+ # resp.jobs[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list #=> Array
2964
+ # resp.jobs[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list[0].consumable_resource #=> String
2965
+ # resp.jobs[0].node_properties.node_range_properties[0].consumable_resource_properties.consumable_resource_list[0].quantity #=> Integer
2443
2966
  # resp.jobs[0].array_properties.status_summary #=> Hash
2444
2967
  # resp.jobs[0].array_properties.status_summary["String"] #=> Integer
2968
+ # resp.jobs[0].array_properties.status_summary_last_updated_at #=> Integer
2445
2969
  # resp.jobs[0].array_properties.size #=> Integer
2446
2970
  # resp.jobs[0].array_properties.index #=> Integer
2447
2971
  # resp.jobs[0].timeout.attempt_duration_seconds #=> Integer
@@ -2475,6 +2999,7 @@ module Aws::Batch
2475
2999
  # resp.jobs[0].eks_properties.pod_properties.containers[0].volume_mounts #=> Array
2476
3000
  # resp.jobs[0].eks_properties.pod_properties.containers[0].volume_mounts[0].name #=> String
2477
3001
  # resp.jobs[0].eks_properties.pod_properties.containers[0].volume_mounts[0].mount_path #=> String
3002
+ # resp.jobs[0].eks_properties.pod_properties.containers[0].volume_mounts[0].sub_path #=> String
2478
3003
  # resp.jobs[0].eks_properties.pod_properties.containers[0].volume_mounts[0].read_only #=> Boolean
2479
3004
  # resp.jobs[0].eks_properties.pod_properties.containers[0].security_context.run_as_user #=> Integer
2480
3005
  # resp.jobs[0].eks_properties.pod_properties.containers[0].security_context.run_as_group #=> Integer
@@ -2502,6 +3027,7 @@ module Aws::Batch
2502
3027
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].volume_mounts #=> Array
2503
3028
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].name #=> String
2504
3029
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].mount_path #=> String
3030
+ # resp.jobs[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].sub_path #=> String
2505
3031
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].volume_mounts[0].read_only #=> Boolean
2506
3032
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_user #=> Integer
2507
3033
  # resp.jobs[0].eks_properties.pod_properties.init_containers[0].security_context.run_as_group #=> Integer
@@ -2516,22 +3042,30 @@ module Aws::Batch
2516
3042
  # resp.jobs[0].eks_properties.pod_properties.volumes[0].empty_dir.size_limit #=> String
2517
3043
  # resp.jobs[0].eks_properties.pod_properties.volumes[0].secret.secret_name #=> String
2518
3044
  # resp.jobs[0].eks_properties.pod_properties.volumes[0].secret.optional #=> Boolean
3045
+ # resp.jobs[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.claim_name #=> String
3046
+ # resp.jobs[0].eks_properties.pod_properties.volumes[0].persistent_volume_claim.read_only #=> Boolean
2519
3047
  # resp.jobs[0].eks_properties.pod_properties.pod_name #=> String
2520
3048
  # resp.jobs[0].eks_properties.pod_properties.node_name #=> String
2521
3049
  # resp.jobs[0].eks_properties.pod_properties.metadata.labels #=> Hash
2522
3050
  # resp.jobs[0].eks_properties.pod_properties.metadata.labels["String"] #=> String
3051
+ # resp.jobs[0].eks_properties.pod_properties.metadata.annotations #=> Hash
3052
+ # resp.jobs[0].eks_properties.pod_properties.metadata.annotations["String"] #=> String
3053
+ # resp.jobs[0].eks_properties.pod_properties.metadata.namespace #=> String
2523
3054
  # resp.jobs[0].eks_properties.pod_properties.share_process_namespace #=> Boolean
2524
3055
  # resp.jobs[0].eks_attempts #=> Array
2525
3056
  # resp.jobs[0].eks_attempts[0].containers #=> Array
2526
3057
  # resp.jobs[0].eks_attempts[0].containers[0].name #=> String
3058
+ # resp.jobs[0].eks_attempts[0].containers[0].container_id #=> String
2527
3059
  # resp.jobs[0].eks_attempts[0].containers[0].exit_code #=> Integer
2528
3060
  # resp.jobs[0].eks_attempts[0].containers[0].reason #=> String
2529
3061
  # resp.jobs[0].eks_attempts[0].init_containers #=> Array
2530
3062
  # resp.jobs[0].eks_attempts[0].init_containers[0].name #=> String
3063
+ # resp.jobs[0].eks_attempts[0].init_containers[0].container_id #=> String
2531
3064
  # resp.jobs[0].eks_attempts[0].init_containers[0].exit_code #=> Integer
2532
3065
  # resp.jobs[0].eks_attempts[0].init_containers[0].reason #=> String
2533
3066
  # resp.jobs[0].eks_attempts[0].eks_cluster_arn #=> String
2534
3067
  # resp.jobs[0].eks_attempts[0].pod_name #=> String
3068
+ # resp.jobs[0].eks_attempts[0].pod_namespace #=> String
2535
3069
  # resp.jobs[0].eks_attempts[0].node_name #=> String
2536
3070
  # resp.jobs[0].eks_attempts[0].started_at #=> Integer
2537
3071
  # resp.jobs[0].eks_attempts[0].stopped_at #=> Integer
@@ -2547,6 +3081,9 @@ module Aws::Batch
2547
3081
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].environment[0].name #=> String
2548
3082
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].environment[0].value #=> String
2549
3083
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].essential #=> Boolean
3084
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.type #=> String, one of "fluentd", "fluentbit"
3085
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options #=> Hash
3086
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].firelens_configuration.options["String"] #=> String
2550
3087
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].image #=> String
2551
3088
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices #=> Array
2552
3089
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].linux_parameters.devices[0].host_path #=> String
@@ -2562,7 +3099,7 @@ module Aws::Batch
2562
3099
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].linux_parameters.tmpfs[0].mount_options[0] #=> String
2563
3100
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].linux_parameters.max_swap #=> Integer
2564
3101
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].linux_parameters.swappiness #=> Integer
2565
- # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk"
3102
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
2566
3103
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_configuration.options #=> Hash
2567
3104
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_configuration.options["String"] #=> String
2568
3105
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_configuration.secret_options #=> Array
@@ -2587,6 +3124,8 @@ module Aws::Batch
2587
3124
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].ulimits[0].name #=> String
2588
3125
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].ulimits[0].soft_limit #=> Integer
2589
3126
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].user #=> String
3127
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].start_timeout #=> Integer
3128
+ # resp.jobs[0].ecs_properties.task_properties[0].containers[0].stop_timeout #=> Integer
2590
3129
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].exit_code #=> Integer
2591
3130
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].reason #=> String
2592
3131
  # resp.jobs[0].ecs_properties.task_properties[0].containers[0].log_stream_name #=> String
@@ -2614,8 +3153,16 @@ module Aws::Batch
2614
3153
  # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.transit_encryption_port #=> Integer
2615
3154
  # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.access_point_id #=> String
2616
3155
  # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].efs_volume_configuration.authorization_config.iam #=> String, one of "ENABLED", "DISABLED"
3156
+ # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.file_system_arn #=> String
3157
+ # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.root_directory #=> String
3158
+ # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.transit_encryption_port #=> Integer
3159
+ # resp.jobs[0].ecs_properties.task_properties[0].volumes[0].s3files_volume_configuration.access_point_arn #=> String
3160
+ # resp.jobs[0].ecs_properties.task_properties[0].enable_execute_command #=> Boolean
2617
3161
  # resp.jobs[0].is_cancelled #=> Boolean
2618
3162
  # resp.jobs[0].is_terminated #=> Boolean
3163
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list #=> Array
3164
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list[0].consumable_resource #=> String
3165
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list[0].quantity #=> Integer
2619
3166
  #
2620
3167
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeJobs AWS API Documentation
2621
3168
  #
@@ -2626,6 +3173,54 @@ module Aws::Batch
2626
3173
  req.send_request(options)
2627
3174
  end
2628
3175
 
3176
+ # Returns a description of the specified quota share.
3177
+ #
3178
+ # @option params [required, String] :quota_share_arn
3179
+ # The Amazon Resource Name (ARN) of the quota share.
3180
+ #
3181
+ # @return [Types::DescribeQuotaShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3182
+ #
3183
+ # * {Types::DescribeQuotaShareResponse#quota_share_name #quota_share_name} => String
3184
+ # * {Types::DescribeQuotaShareResponse#quota_share_arn #quota_share_arn} => String
3185
+ # * {Types::DescribeQuotaShareResponse#job_queue_arn #job_queue_arn} => String
3186
+ # * {Types::DescribeQuotaShareResponse#capacity_limits #capacity_limits} => Array&lt;Types::QuotaShareCapacityLimit&gt;
3187
+ # * {Types::DescribeQuotaShareResponse#resource_sharing_configuration #resource_sharing_configuration} => Types::QuotaShareResourceSharingConfiguration
3188
+ # * {Types::DescribeQuotaShareResponse#preemption_configuration #preemption_configuration} => Types::QuotaSharePreemptionConfiguration
3189
+ # * {Types::DescribeQuotaShareResponse#state #state} => String
3190
+ # * {Types::DescribeQuotaShareResponse#status #status} => String
3191
+ # * {Types::DescribeQuotaShareResponse#tags #tags} => Hash&lt;String,String&gt;
3192
+ #
3193
+ # @example Request syntax with placeholder values
3194
+ #
3195
+ # resp = client.describe_quota_share({
3196
+ # quota_share_arn: "String", # required
3197
+ # })
3198
+ #
3199
+ # @example Response structure
3200
+ #
3201
+ # resp.quota_share_name #=> String
3202
+ # resp.quota_share_arn #=> String
3203
+ # resp.job_queue_arn #=> String
3204
+ # resp.capacity_limits #=> Array
3205
+ # resp.capacity_limits[0].max_capacity #=> Integer
3206
+ # resp.capacity_limits[0].capacity_unit #=> String
3207
+ # resp.resource_sharing_configuration.strategy #=> String, one of "RESERVE", "LEND", "LEND_AND_BORROW"
3208
+ # resp.resource_sharing_configuration.borrow_limit #=> Integer
3209
+ # resp.preemption_configuration.in_share_preemption #=> String, one of "ENABLED", "DISABLED"
3210
+ # resp.state #=> String, one of "ENABLED", "DISABLED"
3211
+ # resp.status #=> String, one of "CREATING", "VALID", "INVALID", "UPDATING", "DELETING"
3212
+ # resp.tags #=> Hash
3213
+ # resp.tags["TagKey"] #=> String
3214
+ #
3215
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeQuotaShare AWS API Documentation
3216
+ #
3217
+ # @overload describe_quota_share(params = {})
3218
+ # @param [Hash] params ({})
3219
+ def describe_quota_share(params = {}, options = {})
3220
+ req = build_request(:describe_quota_share, params)
3221
+ req.send_request(options)
3222
+ end
3223
+
2629
3224
  # Describes one or more of your scheduling policies.
2630
3225
  #
2631
3226
  # @option params [required, Array<String>] :arns
@@ -2647,6 +3242,7 @@ module Aws::Batch
2647
3242
  # resp.scheduling_policies #=> Array
2648
3243
  # resp.scheduling_policies[0].name #=> String
2649
3244
  # resp.scheduling_policies[0].arn #=> String
3245
+ # resp.scheduling_policies[0].quota_share_policy.idle_resource_assignment_strategy #=> String, one of "FIFO"
2650
3246
  # resp.scheduling_policies[0].fairshare_policy.share_decay_seconds #=> Integer
2651
3247
  # resp.scheduling_policies[0].fairshare_policy.compute_reservation #=> Integer
2652
3248
  # resp.scheduling_policies[0].fairshare_policy.share_distribution #=> Array
@@ -2664,8 +3260,173 @@ module Aws::Batch
2664
3260
  req.send_request(options)
2665
3261
  end
2666
3262
 
2667
- # Provides a list of the first 100 `RUNNABLE` jobs associated to a
2668
- # single job queue.
3263
+ # Describes one or more of your service environments.
3264
+ #
3265
+ # @option params [Array<String>] :service_environments
3266
+ # An array of service environment names or ARN entries.
3267
+ #
3268
+ # @option params [Integer] :max_results
3269
+ # The maximum number of results returned by
3270
+ # `DescribeServiceEnvironments` in paginated output. When this parameter
3271
+ # is used, `DescribeServiceEnvironments` only returns `maxResults`
3272
+ # results in a single page and a `nextToken` response element. The
3273
+ # remaining results of the initial request can be seen by sending
3274
+ # another `DescribeServiceEnvironments` request with the returned
3275
+ # `nextToken` value. This value can be between 1 and 100. If this
3276
+ # parameter isn't used, then `DescribeServiceEnvironments` returns up
3277
+ # to 100 results and a `nextToken` value if applicable.
3278
+ #
3279
+ # @option params [String] :next_token
3280
+ # The `nextToken` value returned from a previous paginated
3281
+ # `DescribeServiceEnvironments` request where `maxResults` was used and
3282
+ # the results exceeded the value of that parameter. Pagination continues
3283
+ # from the end of the previous results that returned the `nextToken`
3284
+ # value. This value is `null` when there are no more results to return.
3285
+ #
3286
+ # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
3287
+ # the next items in a list and not for other programmatic purposes.
3288
+ #
3289
+ # </note>
3290
+ #
3291
+ # @return [Types::DescribeServiceEnvironmentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3292
+ #
3293
+ # * {Types::DescribeServiceEnvironmentsResponse#service_environments #service_environments} => Array&lt;Types::ServiceEnvironmentDetail&gt;
3294
+ # * {Types::DescribeServiceEnvironmentsResponse#next_token #next_token} => String
3295
+ #
3296
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3297
+ #
3298
+ # @example Request syntax with placeholder values
3299
+ #
3300
+ # resp = client.describe_service_environments({
3301
+ # service_environments: ["String"],
3302
+ # max_results: 1,
3303
+ # next_token: "String",
3304
+ # })
3305
+ #
3306
+ # @example Response structure
3307
+ #
3308
+ # resp.service_environments #=> Array
3309
+ # resp.service_environments[0].service_environment_name #=> String
3310
+ # resp.service_environments[0].service_environment_arn #=> String
3311
+ # resp.service_environments[0].service_environment_type #=> String, one of "SAGEMAKER_TRAINING"
3312
+ # resp.service_environments[0].state #=> String, one of "ENABLED", "DISABLED"
3313
+ # resp.service_environments[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "DELETED", "VALID", "INVALID"
3314
+ # resp.service_environments[0].capacity_limits #=> Array
3315
+ # resp.service_environments[0].capacity_limits[0].max_capacity #=> Integer
3316
+ # resp.service_environments[0].capacity_limits[0].capacity_unit #=> String
3317
+ # resp.service_environments[0].tags #=> Hash
3318
+ # resp.service_environments[0].tags["TagKey"] #=> String
3319
+ # resp.next_token #=> String
3320
+ #
3321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeServiceEnvironments AWS API Documentation
3322
+ #
3323
+ # @overload describe_service_environments(params = {})
3324
+ # @param [Hash] params ({})
3325
+ def describe_service_environments(params = {}, options = {})
3326
+ req = build_request(:describe_service_environments, params)
3327
+ req.send_request(options)
3328
+ end
3329
+
3330
+ # The details of a service job.
3331
+ #
3332
+ # @option params [required, String] :job_id
3333
+ # The job ID for the service job to describe.
3334
+ #
3335
+ # @return [Types::DescribeServiceJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3336
+ #
3337
+ # * {Types::DescribeServiceJobResponse#attempts #attempts} => Array&lt;Types::ServiceJobAttemptDetail&gt;
3338
+ # * {Types::DescribeServiceJobResponse#capacity_usage #capacity_usage} => Array&lt;Types::ServiceJobCapacityUsageDetail&gt;
3339
+ # * {Types::DescribeServiceJobResponse#created_at #created_at} => Integer
3340
+ # * {Types::DescribeServiceJobResponse#is_terminated #is_terminated} => Boolean
3341
+ # * {Types::DescribeServiceJobResponse#job_arn #job_arn} => String
3342
+ # * {Types::DescribeServiceJobResponse#job_id #job_id} => String
3343
+ # * {Types::DescribeServiceJobResponse#job_name #job_name} => String
3344
+ # * {Types::DescribeServiceJobResponse#job_queue #job_queue} => String
3345
+ # * {Types::DescribeServiceJobResponse#latest_attempt #latest_attempt} => Types::LatestServiceJobAttempt
3346
+ # * {Types::DescribeServiceJobResponse#retry_strategy #retry_strategy} => Types::ServiceJobRetryStrategy
3347
+ # * {Types::DescribeServiceJobResponse#scheduled_at #scheduled_at} => Integer
3348
+ # * {Types::DescribeServiceJobResponse#scheduling_priority #scheduling_priority} => Integer
3349
+ # * {Types::DescribeServiceJobResponse#service_request_payload #service_request_payload} => String
3350
+ # * {Types::DescribeServiceJobResponse#service_job_type #service_job_type} => String
3351
+ # * {Types::DescribeServiceJobResponse#share_identifier #share_identifier} => String
3352
+ # * {Types::DescribeServiceJobResponse#quota_share_name #quota_share_name} => String
3353
+ # * {Types::DescribeServiceJobResponse#preemption_configuration #preemption_configuration} => Types::ServiceJobPreemptionConfiguration
3354
+ # * {Types::DescribeServiceJobResponse#preemption_summary #preemption_summary} => Types::ServiceJobPreemptionSummary
3355
+ # * {Types::DescribeServiceJobResponse#started_at #started_at} => Integer
3356
+ # * {Types::DescribeServiceJobResponse#status #status} => String
3357
+ # * {Types::DescribeServiceJobResponse#status_reason #status_reason} => String
3358
+ # * {Types::DescribeServiceJobResponse#stopped_at #stopped_at} => Integer
3359
+ # * {Types::DescribeServiceJobResponse#tags #tags} => Hash&lt;String,String&gt;
3360
+ # * {Types::DescribeServiceJobResponse#timeout_config #timeout_config} => Types::ServiceJobTimeout
3361
+ #
3362
+ # @example Request syntax with placeholder values
3363
+ #
3364
+ # resp = client.describe_service_job({
3365
+ # job_id: "String", # required
3366
+ # })
3367
+ #
3368
+ # @example Response structure
3369
+ #
3370
+ # resp.attempts #=> Array
3371
+ # resp.attempts[0].service_resource_id.name #=> String, one of "TrainingJobArn"
3372
+ # resp.attempts[0].service_resource_id.value #=> String
3373
+ # resp.attempts[0].started_at #=> Integer
3374
+ # resp.attempts[0].stopped_at #=> Integer
3375
+ # resp.attempts[0].status_reason #=> String
3376
+ # resp.capacity_usage #=> Array
3377
+ # resp.capacity_usage[0].capacity_unit #=> String
3378
+ # resp.capacity_usage[0].quantity #=> Float
3379
+ # resp.created_at #=> Integer
3380
+ # resp.is_terminated #=> Boolean
3381
+ # resp.job_arn #=> String
3382
+ # resp.job_id #=> String
3383
+ # resp.job_name #=> String
3384
+ # resp.job_queue #=> String
3385
+ # resp.latest_attempt.service_resource_id.name #=> String, one of "TrainingJobArn"
3386
+ # resp.latest_attempt.service_resource_id.value #=> String
3387
+ # resp.retry_strategy.attempts #=> Integer
3388
+ # resp.retry_strategy.evaluate_on_exit #=> Array
3389
+ # resp.retry_strategy.evaluate_on_exit[0].action #=> String, one of "RETRY", "EXIT"
3390
+ # resp.retry_strategy.evaluate_on_exit[0].on_status_reason #=> String
3391
+ # resp.scheduled_at #=> Integer
3392
+ # resp.scheduling_priority #=> Integer
3393
+ # resp.service_request_payload #=> String
3394
+ # resp.service_job_type #=> String, one of "SAGEMAKER_TRAINING"
3395
+ # resp.share_identifier #=> String
3396
+ # resp.quota_share_name #=> String
3397
+ # resp.preemption_configuration.preemption_retries_before_termination #=> Integer
3398
+ # resp.preemption_summary.preempted_attempt_count #=> Integer
3399
+ # resp.preemption_summary.recent_preempted_attempts #=> Array
3400
+ # resp.preemption_summary.recent_preempted_attempts[0].service_resource_id.name #=> String, one of "TrainingJobArn"
3401
+ # resp.preemption_summary.recent_preempted_attempts[0].service_resource_id.value #=> String
3402
+ # resp.preemption_summary.recent_preempted_attempts[0].started_at #=> Integer
3403
+ # resp.preemption_summary.recent_preempted_attempts[0].stopped_at #=> Integer
3404
+ # resp.preemption_summary.recent_preempted_attempts[0].status_reason #=> String
3405
+ # resp.started_at #=> Integer
3406
+ # resp.status #=> String, one of "SUBMITTED", "PENDING", "RUNNABLE", "SCHEDULED", "STARTING", "RUNNING", "SUCCEEDED", "FAILED"
3407
+ # resp.status_reason #=> String
3408
+ # resp.stopped_at #=> Integer
3409
+ # resp.tags #=> Hash
3410
+ # resp.tags["TagKey"] #=> String
3411
+ # resp.timeout_config.attempt_duration_seconds #=> Integer
3412
+ #
3413
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeServiceJob AWS API Documentation
3414
+ #
3415
+ # @overload describe_service_job(params = {})
3416
+ # @param [Hash] params ({})
3417
+ def describe_service_job(params = {}, options = {})
3418
+ req = build_request(:describe_service_job, params)
3419
+ req.send_request(options)
3420
+ end
3421
+
3422
+ # Provides a snapshot of job queue state, including ordering of
3423
+ # `RUNNABLE` jobs, as well as capacity utilization for already
3424
+ # dispatched jobs. The first 100 `RUNNABLE` jobs in the job queue are
3425
+ # listed in order of dispatch. For job queues with an attached
3426
+ # quota-share policy, the first `RUNNABLE` job in each quota share is
3427
+ # also listed. Capacity utilization for the job queue is provided, as
3428
+ # well as break downs by share for job queues with attached fair-share
3429
+ # or quota-share scheduling policies.
2669
3430
  #
2670
3431
  # @option params [required, String] :job_queue
2671
3432
  # The job queue’s name or full queue Amazon Resource Name (ARN).
@@ -2673,6 +3434,8 @@ module Aws::Batch
2673
3434
  # @return [Types::GetJobQueueSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2674
3435
  #
2675
3436
  # * {Types::GetJobQueueSnapshotResponse#front_of_queue #front_of_queue} => Types::FrontOfQueueDetail
3437
+ # * {Types::GetJobQueueSnapshotResponse#front_of_quota_shares #front_of_quota_shares} => Types::FrontOfQuotaSharesDetail
3438
+ # * {Types::GetJobQueueSnapshotResponse#queue_utilization #queue_utilization} => Types::QueueSnapshotUtilizationDetail
2676
3439
  #
2677
3440
  # @example Request syntax with placeholder values
2678
3441
  #
@@ -2686,6 +3449,26 @@ module Aws::Batch
2686
3449
  # resp.front_of_queue.jobs[0].job_arn #=> String
2687
3450
  # resp.front_of_queue.jobs[0].earliest_time_at_position #=> Integer
2688
3451
  # resp.front_of_queue.last_updated_at #=> Integer
3452
+ # resp.front_of_quota_shares.quota_shares #=> Hash
3453
+ # resp.front_of_quota_shares.quota_shares["String"] #=> Array
3454
+ # resp.front_of_quota_shares.quota_shares["String"][0].job_arn #=> String
3455
+ # resp.front_of_quota_shares.quota_shares["String"][0].earliest_time_at_position #=> Integer
3456
+ # resp.front_of_quota_shares.last_updated_at #=> Integer
3457
+ # resp.queue_utilization.total_capacity_usage #=> Array
3458
+ # resp.queue_utilization.total_capacity_usage[0].capacity_unit #=> String
3459
+ # resp.queue_utilization.total_capacity_usage[0].quantity #=> Float
3460
+ # resp.queue_utilization.fairshare_utilization.active_share_count #=> Integer
3461
+ # resp.queue_utilization.fairshare_utilization.top_capacity_utilization #=> Array
3462
+ # resp.queue_utilization.fairshare_utilization.top_capacity_utilization[0].share_identifier #=> String
3463
+ # resp.queue_utilization.fairshare_utilization.top_capacity_utilization[0].capacity_usage #=> Array
3464
+ # resp.queue_utilization.fairshare_utilization.top_capacity_utilization[0].capacity_usage[0].capacity_unit #=> String
3465
+ # resp.queue_utilization.fairshare_utilization.top_capacity_utilization[0].capacity_usage[0].quantity #=> Float
3466
+ # resp.queue_utilization.quota_share_utilization.top_capacity_utilization #=> Array
3467
+ # resp.queue_utilization.quota_share_utilization.top_capacity_utilization[0].quota_share_name #=> String
3468
+ # resp.queue_utilization.quota_share_utilization.top_capacity_utilization[0].capacity_usage #=> Array
3469
+ # resp.queue_utilization.quota_share_utilization.top_capacity_utilization[0].capacity_usage[0].capacity_unit #=> String
3470
+ # resp.queue_utilization.quota_share_utilization.top_capacity_utilization[0].capacity_usage[0].quantity #=> Float
3471
+ # resp.queue_utilization.last_updated_at #=> Integer
2689
3472
  #
2690
3473
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/GetJobQueueSnapshot AWS API Documentation
2691
3474
  #
@@ -2696,6 +3479,112 @@ module Aws::Batch
2696
3479
  req.send_request(options)
2697
3480
  end
2698
3481
 
3482
+ # Returns a list of Batch consumable resources.
3483
+ #
3484
+ # @option params [Array<Types::KeyValuesPair>] :filters
3485
+ # The filters to apply to the consumable resource list query. If used,
3486
+ # only those consumable resources that match the filter are listed.
3487
+ # Filter names and values can be:
3488
+ #
3489
+ # * name: `CONSUMABLE_RESOURCE_NAME `
3490
+ #
3491
+ # values: case-insensitive matches for the consumable resource name.
3492
+ # If a filter value ends with an asterisk (*), it matches any
3493
+ # consumable resource name that begins with the string before the
3494
+ # '*'.
3495
+ #
3496
+ # @option params [Integer] :max_results
3497
+ # The maximum number of results returned by `ListConsumableResources` in
3498
+ # paginated output. When this parameter is used,
3499
+ # `ListConsumableResources` only returns `maxResults` results in a
3500
+ # single page and a `nextToken` response element. The remaining results
3501
+ # of the initial request can be seen by sending another
3502
+ # `ListConsumableResources` request with the returned `nextToken` value.
3503
+ # This value can be between 1 and 100. If this parameter isn't used,
3504
+ # then `ListConsumableResources` returns up to 100 results and a
3505
+ # `nextToken` value if applicable.
3506
+ #
3507
+ # @option params [String] :next_token
3508
+ # The `nextToken` value returned from a previous paginated
3509
+ # `ListConsumableResources` request where `maxResults` was used and the
3510
+ # results exceeded the value of that parameter. Pagination continues
3511
+ # from the end of the previous results that returned the `nextToken`
3512
+ # value. This value is `null` when there are no more results to return.
3513
+ #
3514
+ # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
3515
+ # the next items in a list and not for other programmatic purposes.
3516
+ #
3517
+ # </note>
3518
+ #
3519
+ # @return [Types::ListConsumableResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3520
+ #
3521
+ # * {Types::ListConsumableResourcesResponse#consumable_resources #consumable_resources} => Array&lt;Types::ConsumableResourceSummary&gt;
3522
+ # * {Types::ListConsumableResourcesResponse#next_token #next_token} => String
3523
+ #
3524
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3525
+ #
3526
+ #
3527
+ # @example Example: To get a list of a consumable resources
3528
+ #
3529
+ # # Returns a list of the consumable resources for your account.
3530
+ #
3531
+ # resp = client.list_consumable_resources({
3532
+ # filters: [
3533
+ # {
3534
+ # name: "CONSUMABLE_RESOURCE_NAME",
3535
+ # values: [
3536
+ # "my*",
3537
+ # ],
3538
+ # },
3539
+ # ],
3540
+ # max_results: 123,
3541
+ # })
3542
+ #
3543
+ # resp.to_h outputs the following:
3544
+ # {
3545
+ # consumable_resources: [
3546
+ # {
3547
+ # consumable_resource_arn: "arn:aws:batch:us-east-1:012345678910:consumable-resource/myConsumableResource",
3548
+ # consumable_resource_name: "myConsumableResource",
3549
+ # in_use_quantity: 12,
3550
+ # resource_type: "REPLENISHABLE",
3551
+ # total_quantity: 123,
3552
+ # },
3553
+ # ],
3554
+ # }
3555
+ #
3556
+ # @example Request syntax with placeholder values
3557
+ #
3558
+ # resp = client.list_consumable_resources({
3559
+ # filters: [
3560
+ # {
3561
+ # name: "String",
3562
+ # values: ["String"],
3563
+ # },
3564
+ # ],
3565
+ # max_results: 1,
3566
+ # next_token: "String",
3567
+ # })
3568
+ #
3569
+ # @example Response structure
3570
+ #
3571
+ # resp.consumable_resources #=> Array
3572
+ # resp.consumable_resources[0].consumable_resource_arn #=> String
3573
+ # resp.consumable_resources[0].consumable_resource_name #=> String
3574
+ # resp.consumable_resources[0].total_quantity #=> Integer
3575
+ # resp.consumable_resources[0].in_use_quantity #=> Integer
3576
+ # resp.consumable_resources[0].resource_type #=> String
3577
+ # resp.next_token #=> String
3578
+ #
3579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListConsumableResources AWS API Documentation
3580
+ #
3581
+ # @overload list_consumable_resources(params = {})
3582
+ # @param [Hash] params ({})
3583
+ def list_consumable_resources(params = {}, options = {})
3584
+ req = build_request(:list_consumable_resources, params)
3585
+ req.send_request(options)
3586
+ end
3587
+
2699
3588
  # Returns a list of Batch jobs.
2700
3589
  #
2701
3590
  # You must specify only one of the following items:
@@ -2706,10 +3595,6 @@ module Aws::Batch
2706
3595
  #
2707
3596
  # * An array job ID to return a list of the children for that job
2708
3597
  #
2709
- # You can filter the results by job status with the `jobStatus`
2710
- # parameter. If you don't specify a status, only `RUNNING` jobs are
2711
- # returned.
2712
- #
2713
3598
  # @option params [String] :job_queue
2714
3599
  # The name or full Amazon Resource Name (ARN) of the job queue used to
2715
3600
  # list jobs.
@@ -2726,8 +3611,16 @@ module Aws::Batch
2726
3611
  # @option params [String] :job_status
2727
3612
  # The job status used to filter jobs in the specified queue. If the
2728
3613
  # `filters` parameter is specified, the `jobStatus` parameter is ignored
2729
- # and jobs with any status are returned. If you don't specify a status,
2730
- # only `RUNNING` jobs are returned.
3614
+ # and jobs with any status are returned. The exception is the
3615
+ # `SHARE_IDENTIFIER` filter and `jobStatus` can be used together. If you
3616
+ # don't specify a status, only `RUNNING` jobs are returned.
3617
+ #
3618
+ # <note markdown="1"> Array job parents are updated to `PENDING` when any child job is
3619
+ # updated to `RUNNABLE` and remain in `PENDING` status while child jobs
3620
+ # are running. To view these jobs, filter by `PENDING` status until all
3621
+ # child jobs reach a terminal state.
3622
+ #
3623
+ # </note>
2731
3624
  #
2732
3625
  # @option params [Integer] :max_results
2733
3626
  # The maximum number of results returned by `ListJobs` in a paginated
@@ -2763,10 +3656,16 @@ module Aws::Batch
2763
3656
  #
2764
3657
  # @option params [Array<Types::KeyValuesPair>] :filters
2765
3658
  # The filter to apply to the query. Only one filter can be used at a
2766
- # time. When the filter is used, `jobStatus` is ignored. The filter
2767
- # doesn't apply to child jobs in an array or multi-node parallel (MNP)
2768
- # jobs. The results are sorted by the `createdAt` field, with the most
2769
- # recent jobs being first.
3659
+ # time. When the filter is used, `jobStatus` is ignored with the
3660
+ # exception that `SHARE_IDENTIFIER` and `jobStatus` can be used
3661
+ # together. The filter doesn't apply to child jobs in an array or
3662
+ # multi-node parallel (MNP) jobs. The results are sorted by the
3663
+ # `createdAt` field, with the most recent jobs being first.
3664
+ #
3665
+ # <note markdown="1"> The `SHARE_IDENTIFIER` filter and the `jobStatus` field can be used
3666
+ # together to filter results.
3667
+ #
3668
+ # </note>
2770
3669
  #
2771
3670
  # JOB\_NAME
2772
3671
  #
@@ -2791,7 +3690,7 @@ module Aws::Batch
2791
3690
  # the job definition that's used doesn't affect the sort order. When
2792
3691
  # the `JOB_DEFINITION` filter is used and the ARN is used (which is in
2793
3692
  # the form
2794
- # `arn:$\{Partition\}:batch:$\{Region\}:$\{Account\}:job-definition/$\{JobDefinitionName\}:$\{Revision\}`),
3693
+ # `arn:${Partition}:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision}`),
2795
3694
  # the results include jobs that used the specified revision of the job
2796
3695
  # definition. Asterisk (*) isn't supported when the ARN is used.
2797
3696
  #
@@ -2809,6 +3708,11 @@ module Aws::Batch
2809
3708
  # string representation of the number of milliseconds since 00:00:00
2810
3709
  # UTC (midnight) on January 1, 1970.
2811
3710
  #
3711
+ # SHARE\_IDENTIFIER
3712
+ #
3713
+ # : The value for the filter is the fairshare scheduling share
3714
+ # identifier.
3715
+ #
2812
3716
  # @return [Types::ListJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2813
3717
  #
2814
3718
  # * {Types::ListJobsResponse#job_summary_list #job_summary_list} => Array&lt;Types::JobSummary&gt;
@@ -2877,7 +3781,12 @@ module Aws::Batch
2877
3781
  # resp.job_summary_list[0].job_arn #=> String
2878
3782
  # resp.job_summary_list[0].job_id #=> String
2879
3783
  # resp.job_summary_list[0].job_name #=> String
3784
+ # resp.job_summary_list[0].capacity_usage #=> Array
3785
+ # resp.job_summary_list[0].capacity_usage[0].capacity_unit #=> String
3786
+ # resp.job_summary_list[0].capacity_usage[0].quantity #=> Float
2880
3787
  # resp.job_summary_list[0].created_at #=> Integer
3788
+ # resp.job_summary_list[0].scheduled_at #=> Integer
3789
+ # resp.job_summary_list[0].share_identifier #=> String
2881
3790
  # resp.job_summary_list[0].status #=> String, one of "SUBMITTED", "PENDING", "RUNNABLE", "STARTING", "RUNNING", "SUCCEEDED", "FAILED"
2882
3791
  # resp.job_summary_list[0].status_reason #=> String
2883
3792
  # resp.job_summary_list[0].started_at #=> Integer
@@ -2886,6 +3795,9 @@ module Aws::Batch
2886
3795
  # resp.job_summary_list[0].container.reason #=> String
2887
3796
  # resp.job_summary_list[0].array_properties.size #=> Integer
2888
3797
  # resp.job_summary_list[0].array_properties.index #=> Integer
3798
+ # resp.job_summary_list[0].array_properties.status_summary #=> Hash
3799
+ # resp.job_summary_list[0].array_properties.status_summary["String"] #=> Integer
3800
+ # resp.job_summary_list[0].array_properties.status_summary_last_updated_at #=> Integer
2889
3801
  # resp.job_summary_list[0].node_properties.is_main_node #=> Boolean
2890
3802
  # resp.job_summary_list[0].node_properties.num_nodes #=> Integer
2891
3803
  # resp.job_summary_list[0].node_properties.node_index #=> Integer
@@ -2901,6 +3813,209 @@ module Aws::Batch
2901
3813
  req.send_request(options)
2902
3814
  end
2903
3815
 
3816
+ # Returns a list of Batch jobs that require a specific consumable
3817
+ # resource.
3818
+ #
3819
+ # @option params [required, String] :consumable_resource
3820
+ # The name or ARN of the consumable resource.
3821
+ #
3822
+ # @option params [Array<Types::KeyValuesPair>] :filters
3823
+ # The filters to apply to the job list query. If used, only those jobs
3824
+ # requiring the specified consumable resource (`consumableResource`) and
3825
+ # that match the value of the filters are listed. The filter names and
3826
+ # values can be:
3827
+ #
3828
+ # * name: `JOB_STATUS`
3829
+ #
3830
+ # values: `SUBMITTED | PENDING | RUNNABLE | STARTING | RUNNING |
3831
+ # SUCCEEDED | FAILED`
3832
+ #
3833
+ # * name: `JOB_NAME `
3834
+ #
3835
+ # The values are case-insensitive matches for the job name. If a
3836
+ # filter value ends with an asterisk (*), it matches any job name
3837
+ # that begins with the string before the '*'.
3838
+ #
3839
+ # @option params [Integer] :max_results
3840
+ # The maximum number of results returned by
3841
+ # `ListJobsByConsumableResource` in paginated output. When this
3842
+ # parameter is used, `ListJobsByConsumableResource` only returns
3843
+ # `maxResults` results in a single page and a `nextToken` response
3844
+ # element. The remaining results of the initial request can be seen by
3845
+ # sending another `ListJobsByConsumableResource` request with the
3846
+ # returned `nextToken` value. This value can be between 1 and 100. If
3847
+ # this parameter isn't used, then `ListJobsByConsumableResource`
3848
+ # returns up to 100 results and a `nextToken` value if applicable.
3849
+ #
3850
+ # @option params [String] :next_token
3851
+ # The `nextToken` value returned from a previous paginated
3852
+ # `ListJobsByConsumableResource` request where `maxResults` was used and
3853
+ # the results exceeded the value of that parameter. Pagination continues
3854
+ # from the end of the previous results that returned the `nextToken`
3855
+ # value. This value is `null` when there are no more results to return.
3856
+ #
3857
+ # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
3858
+ # the next items in a list and not for other programmatic purposes.
3859
+ #
3860
+ # </note>
3861
+ #
3862
+ # @return [Types::ListJobsByConsumableResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3863
+ #
3864
+ # * {Types::ListJobsByConsumableResourceResponse#jobs #jobs} => Array&lt;Types::ListJobsByConsumableResourceSummary&gt;
3865
+ # * {Types::ListJobsByConsumableResourceResponse#next_token #next_token} => String
3866
+ #
3867
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3868
+ #
3869
+ #
3870
+ # @example Example: To get a list of Batch jobs by consumable resource
3871
+ #
3872
+ # # Returns a list of Batch jobs that require a specific consumable resource.
3873
+ #
3874
+ # resp = client.list_jobs_by_consumable_resource({
3875
+ # consumable_resource: "myConsumableResource",
3876
+ # filters: [
3877
+ # {
3878
+ # name: "CONSUMABLE_RESOURCE_NAME",
3879
+ # values: [
3880
+ # "my*",
3881
+ # ],
3882
+ # },
3883
+ # ],
3884
+ # max_results: 123,
3885
+ # })
3886
+ #
3887
+ # resp.to_h outputs the following:
3888
+ # {
3889
+ # jobs: [
3890
+ # {
3891
+ # consumable_resource_properties: {
3892
+ # consumable_resource_list: [
3893
+ # {
3894
+ # consumable_resource: "myConsumableResource",
3895
+ # quantity: 123,
3896
+ # },
3897
+ # ],
3898
+ # },
3899
+ # created_at: 1480460782010,
3900
+ # job_arn: "arn:aws:batch:us-east-1:012345678910:job/myJob",
3901
+ # job_definition_arn: "arn:aws:batch:us-east-1:012345678910:job-definition/myJobDef",
3902
+ # job_name: "myJob",
3903
+ # job_queue_arn: "arn:aws:batch:us-east-1:012345678910:job-queue/myJobQueue",
3904
+ # job_status: "PENDING",
3905
+ # quantity: 123,
3906
+ # },
3907
+ # ],
3908
+ # }
3909
+ #
3910
+ # @example Request syntax with placeholder values
3911
+ #
3912
+ # resp = client.list_jobs_by_consumable_resource({
3913
+ # consumable_resource: "String", # required
3914
+ # filters: [
3915
+ # {
3916
+ # name: "String",
3917
+ # values: ["String"],
3918
+ # },
3919
+ # ],
3920
+ # max_results: 1,
3921
+ # next_token: "String",
3922
+ # })
3923
+ #
3924
+ # @example Response structure
3925
+ #
3926
+ # resp.jobs #=> Array
3927
+ # resp.jobs[0].job_arn #=> String
3928
+ # resp.jobs[0].job_queue_arn #=> String
3929
+ # resp.jobs[0].job_name #=> String
3930
+ # resp.jobs[0].job_definition_arn #=> String
3931
+ # resp.jobs[0].share_identifier #=> String
3932
+ # resp.jobs[0].job_status #=> String
3933
+ # resp.jobs[0].quantity #=> Integer
3934
+ # resp.jobs[0].status_reason #=> String
3935
+ # resp.jobs[0].started_at #=> Integer
3936
+ # resp.jobs[0].created_at #=> Integer
3937
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list #=> Array
3938
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list[0].consumable_resource #=> String
3939
+ # resp.jobs[0].consumable_resource_properties.consumable_resource_list[0].quantity #=> Integer
3940
+ # resp.next_token #=> String
3941
+ #
3942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListJobsByConsumableResource AWS API Documentation
3943
+ #
3944
+ # @overload list_jobs_by_consumable_resource(params = {})
3945
+ # @param [Hash] params ({})
3946
+ def list_jobs_by_consumable_resource(params = {}, options = {})
3947
+ req = build_request(:list_jobs_by_consumable_resource, params)
3948
+ req.send_request(options)
3949
+ end
3950
+
3951
+ # Returns a list of Batch quota shares associated with a job queue.
3952
+ #
3953
+ # @option params [required, String] :job_queue
3954
+ # The name or full Amazon Resource Name (ARN) of the job queue used to
3955
+ # list quota shares.
3956
+ #
3957
+ # @option params [Integer] :max_results
3958
+ # The maximum number of results returned by `ListQuotaShares` in
3959
+ # paginated output. When this parameter is used, `ListQuotaShares` only
3960
+ # returns `maxResults` results in a single page and a `nextToken`
3961
+ # response element. You can see the remaining results of the initial
3962
+ # request by sending another `ListQuotaShares` request with the returned
3963
+ # `nextToken` value. This value can be between 1 and 100. If this
3964
+ # parameter isn't used, `ListQuotaShares` returns up to 100 results and
3965
+ # a `nextToken` value if applicable.
3966
+ #
3967
+ # @option params [String] :next_token
3968
+ # The `nextToken` value that's returned from a previous paginated
3969
+ # `ListQuotaShares` request where `maxResults` was used and the results
3970
+ # exceeded the value of that parameter. Pagination continues from the
3971
+ # end of the previous results that returned the `nextToken` value. This
3972
+ # value is `null` when there are no more results to return.
3973
+ #
3974
+ # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
3975
+ # the next items in a list and not for other programmatic purposes.
3976
+ #
3977
+ # </note>
3978
+ #
3979
+ # @return [Types::ListQuotaSharesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3980
+ #
3981
+ # * {Types::ListQuotaSharesResponse#quota_shares #quota_shares} => Array&lt;Types::QuotaShareDetail&gt;
3982
+ # * {Types::ListQuotaSharesResponse#next_token #next_token} => String
3983
+ #
3984
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3985
+ #
3986
+ # @example Request syntax with placeholder values
3987
+ #
3988
+ # resp = client.list_quota_shares({
3989
+ # job_queue: "String", # required
3990
+ # max_results: 1,
3991
+ # next_token: "String",
3992
+ # })
3993
+ #
3994
+ # @example Response structure
3995
+ #
3996
+ # resp.quota_shares #=> Array
3997
+ # resp.quota_shares[0].quota_share_name #=> String
3998
+ # resp.quota_shares[0].quota_share_arn #=> String
3999
+ # resp.quota_shares[0].job_queue_arn #=> String
4000
+ # resp.quota_shares[0].capacity_limits #=> Array
4001
+ # resp.quota_shares[0].capacity_limits[0].max_capacity #=> Integer
4002
+ # resp.quota_shares[0].capacity_limits[0].capacity_unit #=> String
4003
+ # resp.quota_shares[0].resource_sharing_configuration.strategy #=> String, one of "RESERVE", "LEND", "LEND_AND_BORROW"
4004
+ # resp.quota_shares[0].resource_sharing_configuration.borrow_limit #=> Integer
4005
+ # resp.quota_shares[0].preemption_configuration.in_share_preemption #=> String, one of "ENABLED", "DISABLED"
4006
+ # resp.quota_shares[0].state #=> String, one of "ENABLED", "DISABLED"
4007
+ # resp.quota_shares[0].status #=> String, one of "CREATING", "VALID", "INVALID", "UPDATING", "DELETING"
4008
+ # resp.next_token #=> String
4009
+ #
4010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListQuotaShares AWS API Documentation
4011
+ #
4012
+ # @overload list_quota_shares(params = {})
4013
+ # @param [Hash] params ({})
4014
+ def list_quota_shares(params = {}, options = {})
4015
+ req = build_request(:list_quota_shares, params)
4016
+ req.send_request(options)
4017
+ end
4018
+
2904
4019
  # Returns a list of Batch scheduling policies.
2905
4020
  #
2906
4021
  # @option params [Integer] :max_results
@@ -2948,10 +4063,148 @@ module Aws::Batch
2948
4063
  #
2949
4064
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListSchedulingPolicies AWS API Documentation
2950
4065
  #
2951
- # @overload list_scheduling_policies(params = {})
4066
+ # @overload list_scheduling_policies(params = {})
4067
+ # @param [Hash] params ({})
4068
+ def list_scheduling_policies(params = {}, options = {})
4069
+ req = build_request(:list_scheduling_policies, params)
4070
+ req.send_request(options)
4071
+ end
4072
+
4073
+ # Returns a list of service jobs for a specified job queue.
4074
+ #
4075
+ # @option params [String] :job_queue
4076
+ # The name or ARN of the job queue with which to list service jobs.
4077
+ #
4078
+ # @option params [String] :job_status
4079
+ # The job status used to filter service jobs in the specified queue. If
4080
+ # the `filters` parameter is specified, the `jobStatus` parameter is
4081
+ # ignored and jobs with any status are returned. The exceptions are the
4082
+ # `SHARE_IDENTIFIER` filter and `QUOTA_SHARE_NAME` filter, which can be
4083
+ # used with `jobStatus`. If you don't specify a status, only `RUNNING`
4084
+ # jobs are returned.
4085
+ #
4086
+ # <note markdown="1"> The `SHARE_IDENTIFIER` filter or `QUOTA_SHARE_NAME` filter can be used
4087
+ # with the `jobStatus` field to filter results.
4088
+ #
4089
+ # </note>
4090
+ #
4091
+ # @option params [Integer] :max_results
4092
+ # The maximum number of results returned by `ListServiceJobs` in
4093
+ # paginated output. When this parameter is used, `ListServiceJobs` only
4094
+ # returns `maxResults` results in a single page and a `nextToken`
4095
+ # response element. The remaining results of the initial request can be
4096
+ # seen by sending another `ListServiceJobs` request with the returned
4097
+ # `nextToken` value. This value can be between 1 and 100. If this
4098
+ # parameter isn't used, then `ListServiceJobs` returns up to 100
4099
+ # results and a `nextToken` value if applicable.
4100
+ #
4101
+ # @option params [String] :next_token
4102
+ # The `nextToken` value returned from a previous paginated
4103
+ # `ListServiceJobs` request where `maxResults` was used and the results
4104
+ # exceeded the value of that parameter. Pagination continues from the
4105
+ # end of the previous results that returned the `nextToken` value. This
4106
+ # value is `null` when there are no more results to return.
4107
+ #
4108
+ # <note markdown="1"> Treat this token as an opaque identifier that's only used to retrieve
4109
+ # the next items in a list and not for other programmatic purposes.
4110
+ #
4111
+ # </note>
4112
+ #
4113
+ # @option params [Array<Types::KeyValuesPair>] :filters
4114
+ # The filter to apply to the query. Only one filter can be used at a
4115
+ # time. When the filter is used, `jobStatus` is ignored with the
4116
+ # exception that `SHARE_IDENTIFIER` or `QUOTA_SHARE_NAME` and
4117
+ # `jobStatus` can be used together. The results are sorted by the
4118
+ # `createdAt` field, with the most recent jobs being first.
4119
+ #
4120
+ # <note markdown="1"> The `SHARE_IDENTIFIER` or `QUOTA_SHARE_NAME` filter and the
4121
+ # `jobStatus` field can be used together to filter results.
4122
+ #
4123
+ # </note>
4124
+ #
4125
+ # JOB\_NAME
4126
+ #
4127
+ # : The value of the filter is a case-insensitive match for the job
4128
+ # name. If the value ends with an asterisk (*), the filter matches
4129
+ # any job name that begins with the string before the '*'. This
4130
+ # corresponds to the `jobName` value. For example, `test1` matches
4131
+ # both `Test1` and `test1`, and `test1*` matches both `test1` and
4132
+ # `Test10`. When the `JOB_NAME` filter is used, the results are
4133
+ # grouped by the job name and version.
4134
+ #
4135
+ # BEFORE\_CREATED\_AT
4136
+ #
4137
+ # : The value for the filter is the time that's before the job was
4138
+ # created. This corresponds to the `createdAt` value. The value is a
4139
+ # string representation of the number of milliseconds since 00:00:00
4140
+ # UTC (midnight) on January 1, 1970.
4141
+ #
4142
+ # AFTER\_CREATED\_AT
4143
+ #
4144
+ # : The value for the filter is the time that's after the job was
4145
+ # created. This corresponds to the `createdAt` value. The value is a
4146
+ # string representation of the number of milliseconds since 00:00:00
4147
+ # UTC (midnight) on January 1, 1970.
4148
+ #
4149
+ # SHARE\_IDENTIFIER
4150
+ #
4151
+ # : The value for the filter is the fairshare scheduling share
4152
+ # identifier.
4153
+ #
4154
+ # QUOTA\_SHARE\_NAME
4155
+ #
4156
+ # : The value for the filter is the quota management share name.
4157
+ #
4158
+ # @return [Types::ListServiceJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4159
+ #
4160
+ # * {Types::ListServiceJobsResponse#job_summary_list #job_summary_list} => Array&lt;Types::ServiceJobSummary&gt;
4161
+ # * {Types::ListServiceJobsResponse#next_token #next_token} => String
4162
+ #
4163
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4164
+ #
4165
+ # @example Request syntax with placeholder values
4166
+ #
4167
+ # resp = client.list_service_jobs({
4168
+ # job_queue: "String",
4169
+ # job_status: "SUBMITTED", # accepts SUBMITTED, PENDING, RUNNABLE, SCHEDULED, STARTING, RUNNING, SUCCEEDED, FAILED
4170
+ # max_results: 1,
4171
+ # next_token: "String",
4172
+ # filters: [
4173
+ # {
4174
+ # name: "String",
4175
+ # values: ["String"],
4176
+ # },
4177
+ # ],
4178
+ # })
4179
+ #
4180
+ # @example Response structure
4181
+ #
4182
+ # resp.job_summary_list #=> Array
4183
+ # resp.job_summary_list[0].latest_attempt.service_resource_id.name #=> String, one of "TrainingJobArn"
4184
+ # resp.job_summary_list[0].latest_attempt.service_resource_id.value #=> String
4185
+ # resp.job_summary_list[0].capacity_usage #=> Array
4186
+ # resp.job_summary_list[0].capacity_usage[0].capacity_unit #=> String
4187
+ # resp.job_summary_list[0].capacity_usage[0].quantity #=> Float
4188
+ # resp.job_summary_list[0].created_at #=> Integer
4189
+ # resp.job_summary_list[0].job_arn #=> String
4190
+ # resp.job_summary_list[0].job_id #=> String
4191
+ # resp.job_summary_list[0].job_name #=> String
4192
+ # resp.job_summary_list[0].scheduled_at #=> Integer
4193
+ # resp.job_summary_list[0].service_job_type #=> String, one of "SAGEMAKER_TRAINING"
4194
+ # resp.job_summary_list[0].share_identifier #=> String
4195
+ # resp.job_summary_list[0].quota_share_name #=> String
4196
+ # resp.job_summary_list[0].status #=> String, one of "SUBMITTED", "PENDING", "RUNNABLE", "SCHEDULED", "STARTING", "RUNNING", "SUCCEEDED", "FAILED"
4197
+ # resp.job_summary_list[0].status_reason #=> String
4198
+ # resp.job_summary_list[0].started_at #=> Integer
4199
+ # resp.job_summary_list[0].stopped_at #=> Integer
4200
+ # resp.next_token #=> String
4201
+ #
4202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListServiceJobs AWS API Documentation
4203
+ #
4204
+ # @overload list_service_jobs(params = {})
2952
4205
  # @param [Hash] params ({})
2953
- def list_scheduling_policies(params = {}, options = {})
2954
- req = build_request(:list_scheduling_policies, params)
4206
+ def list_service_jobs(params = {}, options = {})
4207
+ req = build_request(:list_service_jobs, params)
2955
4208
  req.send_request(options)
2956
4209
  end
2957
4210
 
@@ -3043,7 +4296,7 @@ module Aws::Batch
3043
4296
  #
3044
4297
  # @option params [Integer] :scheduling_priority
3045
4298
  # The scheduling priority for jobs that are submitted with this job
3046
- # definition. This only affects jobs in job queues with a fair share
4299
+ # definition. This only affects jobs in job queues with a fair-share
3047
4300
  # policy. Jobs with a higher scheduling priority are scheduled before
3048
4301
  # jobs with a lower scheduling priority.
3049
4302
  #
@@ -3143,6 +4396,9 @@ module Aws::Batch
3143
4396
  # An object with properties that are specific to Amazon ECS-based jobs.
3144
4397
  # This must not be specified for Amazon EKS-based job definitions.
3145
4398
  #
4399
+ # @option params [Types::ConsumableResourceProperties] :consumable_resource_properties
4400
+ # Contains a list of consumable resources required by the job.
4401
+ #
3146
4402
  # @return [Types::RegisterJobDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3147
4403
  #
3148
4404
  # * {Types::RegisterJobDefinitionResponse#job_definition_name #job_definition_name} => String
@@ -3252,6 +4508,12 @@ module Aws::Batch
3252
4508
  # iam: "ENABLED", # accepts ENABLED, DISABLED
3253
4509
  # },
3254
4510
  # },
4511
+ # s3files_volume_configuration: {
4512
+ # file_system_arn: "String", # required
4513
+ # root_directory: "String",
4514
+ # transit_encryption_port: 1,
4515
+ # access_point_arn: "String",
4516
+ # },
3255
4517
  # },
3256
4518
  # ],
3257
4519
  # environment: [
@@ -3305,7 +4567,7 @@ module Aws::Batch
3305
4567
  # swappiness: 1,
3306
4568
  # },
3307
4569
  # log_configuration: {
3308
- # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk
4570
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
3309
4571
  # options: {
3310
4572
  # "String" => "String",
3311
4573
  # },
@@ -3328,6 +4590,7 @@ module Aws::Batch
3328
4590
  # fargate_platform_configuration: {
3329
4591
  # platform_version: "String",
3330
4592
  # },
4593
+ # enable_execute_command: false,
3331
4594
  # ephemeral_storage: {
3332
4595
  # size_in_gi_b: 1, # required
3333
4596
  # },
@@ -3368,6 +4631,12 @@ module Aws::Batch
3368
4631
  # iam: "ENABLED", # accepts ENABLED, DISABLED
3369
4632
  # },
3370
4633
  # },
4634
+ # s3files_volume_configuration: {
4635
+ # file_system_arn: "String", # required
4636
+ # root_directory: "String",
4637
+ # transit_encryption_port: 1,
4638
+ # access_point_arn: "String",
4639
+ # },
3371
4640
  # },
3372
4641
  # ],
3373
4642
  # environment: [
@@ -3421,7 +4690,7 @@ module Aws::Batch
3421
4690
  # swappiness: 1,
3422
4691
  # },
3423
4692
  # log_configuration: {
3424
- # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk
4693
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
3425
4694
  # options: {
3426
4695
  # "String" => "String",
3427
4696
  # },
@@ -3444,6 +4713,7 @@ module Aws::Batch
3444
4713
  # fargate_platform_configuration: {
3445
4714
  # platform_version: "String",
3446
4715
  # },
4716
+ # enable_execute_command: false,
3447
4717
  # ephemeral_storage: {
3448
4718
  # size_in_gi_b: 1, # required
3449
4719
  # },
@@ -3475,6 +4745,12 @@ module Aws::Batch
3475
4745
  # },
3476
4746
  # ],
3477
4747
  # essential: false,
4748
+ # firelens_configuration: {
4749
+ # type: "fluentd", # required, accepts fluentd, fluentbit
4750
+ # options: {
4751
+ # "String" => "String",
4752
+ # },
4753
+ # },
3478
4754
  # image: "String", # required
3479
4755
  # linux_parameters: {
3480
4756
  # devices: [
@@ -3497,7 +4773,7 @@ module Aws::Batch
3497
4773
  # swappiness: 1,
3498
4774
  # },
3499
4775
  # log_configuration: {
3500
- # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk
4776
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
3501
4777
  # options: {
3502
4778
  # "String" => "String",
3503
4779
  # },
@@ -3541,6 +4817,8 @@ module Aws::Batch
3541
4817
  # },
3542
4818
  # ],
3543
4819
  # user: "String",
4820
+ # start_timeout: 1,
4821
+ # stop_timeout: 1,
3544
4822
  # },
3545
4823
  # ],
3546
4824
  # ephemeral_storage: {
@@ -3574,8 +4852,15 @@ module Aws::Batch
3574
4852
  # iam: "ENABLED", # accepts ENABLED, DISABLED
3575
4853
  # },
3576
4854
  # },
4855
+ # s3files_volume_configuration: {
4856
+ # file_system_arn: "String", # required
4857
+ # root_directory: "String",
4858
+ # transit_encryption_port: 1,
4859
+ # access_point_arn: "String",
4860
+ # },
3577
4861
  # },
3578
4862
  # ],
4863
+ # enable_execute_command: false,
3579
4864
  # },
3580
4865
  # ],
3581
4866
  # },
@@ -3614,6 +4899,7 @@ module Aws::Batch
3614
4899
  # {
3615
4900
  # name: "String",
3616
4901
  # mount_path: "String",
4902
+ # sub_path: "String",
3617
4903
  # read_only: false,
3618
4904
  # },
3619
4905
  # ],
@@ -3652,6 +4938,7 @@ module Aws::Batch
3652
4938
  # {
3653
4939
  # name: "String",
3654
4940
  # mount_path: "String",
4941
+ # sub_path: "String",
3655
4942
  # read_only: false,
3656
4943
  # },
3657
4944
  # ],
@@ -3679,16 +4966,32 @@ module Aws::Batch
3679
4966
  # secret_name: "String", # required
3680
4967
  # optional: false,
3681
4968
  # },
4969
+ # persistent_volume_claim: {
4970
+ # claim_name: "String", # required
4971
+ # read_only: false,
4972
+ # },
3682
4973
  # },
3683
4974
  # ],
3684
4975
  # metadata: {
3685
4976
  # labels: {
3686
4977
  # "String" => "String",
3687
4978
  # },
4979
+ # annotations: {
4980
+ # "String" => "String",
4981
+ # },
4982
+ # namespace: "String",
3688
4983
  # },
3689
4984
  # share_process_namespace: false,
3690
4985
  # },
3691
4986
  # },
4987
+ # consumable_resource_properties: {
4988
+ # consumable_resource_list: [
4989
+ # {
4990
+ # consumable_resource: "String",
4991
+ # quantity: 1,
4992
+ # },
4993
+ # ],
4994
+ # },
3692
4995
  # },
3693
4996
  # ],
3694
4997
  # },
@@ -3746,6 +5049,7 @@ module Aws::Batch
3746
5049
  # {
3747
5050
  # name: "String",
3748
5051
  # mount_path: "String",
5052
+ # sub_path: "String",
3749
5053
  # read_only: false,
3750
5054
  # },
3751
5055
  # ],
@@ -3784,6 +5088,7 @@ module Aws::Batch
3784
5088
  # {
3785
5089
  # name: "String",
3786
5090
  # mount_path: "String",
5091
+ # sub_path: "String",
3787
5092
  # read_only: false,
3788
5093
  # },
3789
5094
  # ],
@@ -3811,12 +5116,20 @@ module Aws::Batch
3811
5116
  # secret_name: "String", # required
3812
5117
  # optional: false,
3813
5118
  # },
5119
+ # persistent_volume_claim: {
5120
+ # claim_name: "String", # required
5121
+ # read_only: false,
5122
+ # },
3814
5123
  # },
3815
5124
  # ],
3816
5125
  # metadata: {
3817
5126
  # labels: {
3818
5127
  # "String" => "String",
3819
5128
  # },
5129
+ # annotations: {
5130
+ # "String" => "String",
5131
+ # },
5132
+ # namespace: "String",
3820
5133
  # },
3821
5134
  # share_process_namespace: false,
3822
5135
  # },
@@ -3840,6 +5153,12 @@ module Aws::Batch
3840
5153
  # },
3841
5154
  # ],
3842
5155
  # essential: false,
5156
+ # firelens_configuration: {
5157
+ # type: "fluentd", # required, accepts fluentd, fluentbit
5158
+ # options: {
5159
+ # "String" => "String",
5160
+ # },
5161
+ # },
3843
5162
  # image: "String", # required
3844
5163
  # linux_parameters: {
3845
5164
  # devices: [
@@ -3862,7 +5181,7 @@ module Aws::Batch
3862
5181
  # swappiness: 1,
3863
5182
  # },
3864
5183
  # log_configuration: {
3865
- # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk
5184
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
3866
5185
  # options: {
3867
5186
  # "String" => "String",
3868
5187
  # },
@@ -3906,6 +5225,8 @@ module Aws::Batch
3906
5225
  # },
3907
5226
  # ],
3908
5227
  # user: "String",
5228
+ # start_timeout: 1,
5229
+ # stop_timeout: 1,
3909
5230
  # },
3910
5231
  # ],
3911
5232
  # ephemeral_storage: {
@@ -3939,8 +5260,23 @@ module Aws::Batch
3939
5260
  # iam: "ENABLED", # accepts ENABLED, DISABLED
3940
5261
  # },
3941
5262
  # },
5263
+ # s3files_volume_configuration: {
5264
+ # file_system_arn: "String", # required
5265
+ # root_directory: "String",
5266
+ # transit_encryption_port: 1,
5267
+ # access_point_arn: "String",
5268
+ # },
3942
5269
  # },
3943
5270
  # ],
5271
+ # enable_execute_command: false,
5272
+ # },
5273
+ # ],
5274
+ # },
5275
+ # consumable_resource_properties: {
5276
+ # consumable_resource_list: [
5277
+ # {
5278
+ # consumable_resource: "String",
5279
+ # quantity: 1,
3944
5280
  # },
3945
5281
  # ],
3946
5282
  # },
@@ -3970,8 +5306,8 @@ module Aws::Batch
3970
5306
  # parameters in a `resourceRequirements` object that's included in the
3971
5307
  # `containerOverrides` parameter.
3972
5308
  #
3973
- # <note markdown="1"> Job queues with a scheduling policy are limited to 500 active fair
3974
- # share identifiers at a time.
5309
+ # <note markdown="1"> Job queues with a scheduling policy are limited to 500 active share
5310
+ # identifiers at a time.
3975
5311
  #
3976
5312
  # </note>
3977
5313
  #
@@ -3990,15 +5326,16 @@ module Aws::Batch
3990
5326
  #
3991
5327
  # @option params [String] :share_identifier
3992
5328
  # The share identifier for the job. Don't specify this parameter if the
3993
- # job queue doesn't have a scheduling policy. If the job queue has a
3994
- # scheduling policy, then this parameter must be specified.
5329
+ # job queue doesn't have a fair-share scheduling policy. If the job
5330
+ # queue has a fair-share scheduling policy, then this parameter must be
5331
+ # specified.
3995
5332
  #
3996
5333
  # This string is limited to 255 alphanumeric characters, and can be
3997
5334
  # followed by an asterisk (*).
3998
5335
  #
3999
5336
  # @option params [Integer] :scheduling_priority_override
4000
5337
  # The scheduling priority for the job. This only affects jobs in job
4001
- # queues with a fair share policy. Jobs with a higher scheduling
5338
+ # queues with a fair-share policy. Jobs with a higher scheduling
4002
5339
  # priority are scheduled before jobs with a lower scheduling priority.
4003
5340
  # This overrides any scheduling priority in the job definition and works
4004
5341
  # only within a single share identifier.
@@ -4110,6 +5447,10 @@ module Aws::Batch
4110
5447
  # definition, can only be specified for jobs that are run on Amazon ECS
4111
5448
  # resources.
4112
5449
  #
5450
+ # @option params [Types::ConsumableResourceProperties] :consumable_resource_properties_override
5451
+ # An object that contains overrides for the consumable resources of a
5452
+ # job.
5453
+ #
4113
5454
  # @return [Types::SubmitJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4114
5455
  #
4115
5456
  # * {Types::SubmitJobResponse#job_arn #job_arn} => String
@@ -4269,9 +5610,21 @@ module Aws::Batch
4269
5610
  # labels: {
4270
5611
  # "String" => "String",
4271
5612
  # },
5613
+ # annotations: {
5614
+ # "String" => "String",
5615
+ # },
5616
+ # namespace: "String",
4272
5617
  # },
4273
5618
  # },
4274
5619
  # },
5620
+ # consumable_resource_properties_override: {
5621
+ # consumable_resource_list: [
5622
+ # {
5623
+ # consumable_resource: "String",
5624
+ # quantity: 1,
5625
+ # },
5626
+ # ],
5627
+ # },
4275
5628
  # },
4276
5629
  # ],
4277
5630
  # },
@@ -4343,6 +5696,10 @@ module Aws::Batch
4343
5696
  # labels: {
4344
5697
  # "String" => "String",
4345
5698
  # },
5699
+ # annotations: {
5700
+ # "String" => "String",
5701
+ # },
5702
+ # namespace: "String",
4346
5703
  # },
4347
5704
  # },
4348
5705
  # },
@@ -4370,6 +5727,14 @@ module Aws::Batch
4370
5727
  # },
4371
5728
  # ],
4372
5729
  # },
5730
+ # consumable_resource_properties_override: {
5731
+ # consumable_resource_list: [
5732
+ # {
5733
+ # consumable_resource: "String",
5734
+ # quantity: 1,
5735
+ # },
5736
+ # ],
5737
+ # },
4373
5738
  # })
4374
5739
  #
4375
5740
  # @example Response structure
@@ -4387,6 +5752,127 @@ module Aws::Batch
4387
5752
  req.send_request(options)
4388
5753
  end
4389
5754
 
5755
+ # Submits a service job to a specified job queue to run on SageMaker AI.
5756
+ # A service job is a unit of work that you submit to Batch for execution
5757
+ # on SageMaker AI.
5758
+ #
5759
+ # @option params [required, String] :job_name
5760
+ # The name of the service job. It can be up to 128 characters long. It
5761
+ # can contain uppercase and lowercase letters, numbers, hyphens (-), and
5762
+ # underscores (\_).
5763
+ #
5764
+ # @option params [required, String] :job_queue
5765
+ # The job queue into which the service job is submitted. You can specify
5766
+ # either the name or the ARN of the queue. The job queue must have the
5767
+ # type `SAGEMAKER_TRAINING`.
5768
+ #
5769
+ # @option params [Types::ServiceJobRetryStrategy] :retry_strategy
5770
+ # The retry strategy to use for failed service jobs that are submitted
5771
+ # with this service job request.
5772
+ #
5773
+ # @option params [Integer] :scheduling_priority
5774
+ # The scheduling priority of the service job. Valid values are integers
5775
+ # between 0 and 9999.
5776
+ #
5777
+ # @option params [required, String] :service_request_payload
5778
+ # The request, in JSON, for the service that the SubmitServiceJob
5779
+ # operation is queueing.
5780
+ #
5781
+ # @option params [required, String] :service_job_type
5782
+ # The type of service job. For SageMaker Training jobs, specify
5783
+ # `SAGEMAKER_TRAINING`.
5784
+ #
5785
+ # @option params [String] :share_identifier
5786
+ # The share identifier for the service job. Don't specify this
5787
+ # parameter if the job queue doesn't have a fair-share scheduling
5788
+ # policy. If the job queue has a fair-share scheduling policy, then this
5789
+ # parameter must be specified.
5790
+ #
5791
+ # @option params [String] :quota_share_name
5792
+ # The quota share for the service job. Don't specify this parameter if
5793
+ # the job queue doesn't have a quota share scheduling policy. If the
5794
+ # job queue has a quota share scheduling policy, then this parameter
5795
+ # must be specified.
5796
+ #
5797
+ # @option params [Types::ServiceJobPreemptionConfiguration] :preemption_configuration
5798
+ # Specifies the service job behavior when preempted.
5799
+ #
5800
+ # @option params [Types::ServiceJobTimeout] :timeout_config
5801
+ # The timeout configuration for the service job. If none is specified,
5802
+ # Batch defers to the default timeout of the underlying service handling
5803
+ # the job.
5804
+ #
5805
+ # @option params [Hash<String,String>] :tags
5806
+ # The tags that you apply to the service job request. Each tag consists
5807
+ # of a key and an optional value. For more information, see [Tagging
5808
+ # your Batch resources][1].
5809
+ #
5810
+ #
5811
+ #
5812
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html
5813
+ #
5814
+ # @option params [String] :client_token
5815
+ # A unique identifier for the request. This token is used to ensure
5816
+ # idempotency of requests. If this parameter is specified and two submit
5817
+ # requests with identical payloads and `clientToken`s are received,
5818
+ # these requests are considered the same request and the second request
5819
+ # is rejected.
5820
+ #
5821
+ # **A suitable default value is auto-generated.** You should normally
5822
+ # not need to pass this option.**
5823
+ #
5824
+ # @return [Types::SubmitServiceJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5825
+ #
5826
+ # * {Types::SubmitServiceJobResponse#job_arn #job_arn} => String
5827
+ # * {Types::SubmitServiceJobResponse#job_name #job_name} => String
5828
+ # * {Types::SubmitServiceJobResponse#job_id #job_id} => String
5829
+ #
5830
+ # @example Request syntax with placeholder values
5831
+ #
5832
+ # resp = client.submit_service_job({
5833
+ # job_name: "String", # required
5834
+ # job_queue: "String", # required
5835
+ # retry_strategy: {
5836
+ # attempts: 1, # required
5837
+ # evaluate_on_exit: [
5838
+ # {
5839
+ # action: "RETRY", # accepts RETRY, EXIT
5840
+ # on_status_reason: "String",
5841
+ # },
5842
+ # ],
5843
+ # },
5844
+ # scheduling_priority: 1,
5845
+ # service_request_payload: "String", # required
5846
+ # service_job_type: "SAGEMAKER_TRAINING", # required, accepts SAGEMAKER_TRAINING
5847
+ # share_identifier: "String",
5848
+ # quota_share_name: "String",
5849
+ # preemption_configuration: {
5850
+ # preemption_retries_before_termination: 1,
5851
+ # },
5852
+ # timeout_config: {
5853
+ # attempt_duration_seconds: 1,
5854
+ # },
5855
+ # tags: {
5856
+ # "TagKey" => "TagValue",
5857
+ # },
5858
+ # client_token: "ClientRequestToken",
5859
+ # })
5860
+ #
5861
+ # @example Response structure
5862
+ #
5863
+ # resp.job_arn #=> String
5864
+ # resp.job_name #=> String
5865
+ # resp.job_id #=> String
5866
+ #
5867
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/SubmitServiceJob AWS API Documentation
5868
+ #
5869
+ # @overload submit_service_job(params = {})
5870
+ # @param [Hash] params ({})
5871
+ def submit_service_job(params = {}, options = {})
5872
+ req = build_request(:submit_service_job, params)
5873
+ req.send_request(options)
5874
+ end
5875
+
4390
5876
  # Associates the specified tags to a resource with the specified
4391
5877
  # `resourceArn`. If existing tags on a resource aren't specified in the
4392
5878
  # request parameters, they aren't changed. When a resource is deleted,
@@ -4458,7 +5944,9 @@ module Aws::Batch
4458
5944
  # @option params [required, String] :reason
4459
5945
  # A message to attach to the job that explains the reason for canceling
4460
5946
  # it. This message is returned by future DescribeJobs operations on the
4461
- # job. This message is also recorded in the Batch activity logs.
5947
+ # job. It is also recorded in the Batch activity logs.
5948
+ #
5949
+ # This parameter has as limit of 1024 characters.
4462
5950
  #
4463
5951
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4464
5952
  #
@@ -4492,6 +5980,34 @@ module Aws::Batch
4492
5980
  req.send_request(options)
4493
5981
  end
4494
5982
 
5983
+ # Terminates a service job in a job queue.
5984
+ #
5985
+ # @option params [required, String] :job_id
5986
+ # The service job ID of the service job to terminate.
5987
+ #
5988
+ # @option params [required, String] :reason
5989
+ # A message to attach to the service job that explains the reason for
5990
+ # canceling it. This message is returned by `DescribeServiceJob`
5991
+ # operations on the service job.
5992
+ #
5993
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5994
+ #
5995
+ # @example Request syntax with placeholder values
5996
+ #
5997
+ # resp = client.terminate_service_job({
5998
+ # job_id: "String", # required
5999
+ # reason: "String", # required
6000
+ # })
6001
+ #
6002
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/TerminateServiceJob AWS API Documentation
6003
+ #
6004
+ # @overload terminate_service_job(params = {})
6005
+ # @param [Hash] params ({})
6006
+ def terminate_service_job(params = {}, options = {})
6007
+ req = build_request(:terminate_service_job, params)
6008
+ req.send_request(options)
6009
+ end
6010
+
4495
6011
  # Deletes specified tags from an Batch resource.
4496
6012
  #
4497
6013
  # @option params [required, String] :resource_arn
@@ -4561,9 +6077,10 @@ module Aws::Batch
4561
6077
  # environments in the `DISABLED` state don't scale out.
4562
6078
  #
4563
6079
  # <note markdown="1"> Compute environments in a `DISABLED` state may continue to incur
4564
- # billing charges. To prevent additional charges, turn off and then
4565
- # delete the compute environment. For more information, see [State][1]
4566
- # in the *Batch User Guide*.
6080
+ # billing charges, for example, if they have running instances due to
6081
+ # jobs that are still executing or a non-zero `minvCpus` setting. To
6082
+ # prevent additional charges, disable and delete the compute
6083
+ # environment.
4567
6084
  #
4568
6085
  # </note>
4569
6086
  #
@@ -4573,16 +6090,12 @@ module Aws::Batch
4573
6090
  # `desiredvCpus` value of `36`. This instance doesn't scale down to a
4574
6091
  # `c5.large` instance.
4575
6092
  #
4576
- #
4577
- #
4578
- # [1]: https://docs.aws.amazon.com/batch/latest/userguide/compute_environment_parameters.html#compute_environment_state
4579
- #
4580
6093
  # @option params [Integer] :unmanagedv_cpus
4581
6094
  # The maximum number of vCPUs expected to be used for an unmanaged
4582
6095
  # compute environment. Don't specify this parameter for a managed
4583
- # compute environment. This parameter is only used for fair share
6096
+ # compute environment. This parameter is only used for fair-share
4584
6097
  # scheduling to reserve vCPU capacity for new share identifiers. If this
4585
- # parameter isn't provided for a fair share job queue, no vCPU capacity
6098
+ # parameter isn't provided for a fair-share job queue, no vCPU capacity
4586
6099
  # is reserved.
4587
6100
  #
4588
6101
  # @option params [Types::ComputeResourceUpdate] :compute_resources
@@ -4672,7 +6185,7 @@ module Aws::Batch
4672
6185
  # desiredv_cpus: 1,
4673
6186
  # subnets: ["String"],
4674
6187
  # security_group_ids: ["String"],
4675
- # allocation_strategy: "BEST_FIT_PROGRESSIVE", # accepts BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED, SPOT_PRICE_CAPACITY_OPTIMIZED
6188
+ # allocation_strategy: "BEST_FIT_PROGRESSIVE", # accepts BEST_FIT_PROGRESSIVE, BEST_FIT_PROGRESSIVE_ORDERED, SPOT_CAPACITY_OPTIMIZED, SPOT_PRICE_CAPACITY_OPTIMIZED, SPOT_CAPACITY_OPTIMIZED_PRIORITIZED
4676
6189
  # instance_types: ["String"],
4677
6190
  # ec2_key_pair: "String",
4678
6191
  # instance_role: "String",
@@ -4685,17 +6198,31 @@ module Aws::Batch
4685
6198
  # launch_template_id: "String",
4686
6199
  # launch_template_name: "String",
4687
6200
  # version: "String",
6201
+ # overrides: [
6202
+ # {
6203
+ # launch_template_id: "String",
6204
+ # launch_template_name: "String",
6205
+ # version: "String",
6206
+ # target_instance_types: ["String"],
6207
+ # userdata_type: "EKS_BOOTSTRAP_SH", # accepts EKS_BOOTSTRAP_SH, EKS_NODEADM
6208
+ # },
6209
+ # ],
6210
+ # userdata_type: "EKS_BOOTSTRAP_SH", # accepts EKS_BOOTSTRAP_SH, EKS_NODEADM
4688
6211
  # },
4689
6212
  # ec2_configuration: [
4690
6213
  # {
4691
6214
  # image_type: "ImageType", # required
4692
6215
  # image_id_override: "ImageIdOverride",
6216
+ # batch_image_status: "String",
4693
6217
  # image_kubernetes_version: "KubernetesVersion",
4694
6218
  # },
4695
6219
  # ],
4696
6220
  # update_to_latest_image_version: false,
4697
6221
  # type: "EC2", # accepts EC2, SPOT, FARGATE, FARGATE_SPOT
4698
6222
  # image_id: "String",
6223
+ # scaling_policy: {
6224
+ # min_scale_down_delay_minutes: 1,
6225
+ # },
4699
6226
  # },
4700
6227
  # service_role: "String",
4701
6228
  # update_policy: {
@@ -4719,6 +6246,93 @@ module Aws::Batch
4719
6246
  req.send_request(options)
4720
6247
  end
4721
6248
 
6249
+ # Updates a consumable resource.
6250
+ #
6251
+ # @option params [required, String] :consumable_resource
6252
+ # The name or ARN of the consumable resource to be updated.
6253
+ #
6254
+ # @option params [String] :operation
6255
+ # Indicates how the quantity of the consumable resource will be updated.
6256
+ # Must be one of:
6257
+ #
6258
+ # * `SET`
6259
+ #
6260
+ # Sets the quantity of the resource to the value specified by the
6261
+ # `quantity` parameter.
6262
+ #
6263
+ # * `ADD`
6264
+ #
6265
+ # Increases the quantity of the resource by the value specified by the
6266
+ # `quantity` parameter.
6267
+ #
6268
+ # * `REMOVE`
6269
+ #
6270
+ # Reduces the quantity of the resource by the value specified by the
6271
+ # `quantity` parameter.
6272
+ #
6273
+ # @option params [Integer] :quantity
6274
+ # The change in the total quantity of the consumable resource. The
6275
+ # `operation` parameter determines whether the value specified here will
6276
+ # be the new total quantity, or the amount by which the total quantity
6277
+ # will be increased or reduced. Must be a non-negative value.
6278
+ #
6279
+ # @option params [String] :client_token
6280
+ # If this parameter is specified and two update requests with identical
6281
+ # payloads and `clientToken`s are received, these requests are
6282
+ # considered the same request. Both requests will succeed, but the
6283
+ # update will only happen once. A `clientToken` is valid for 8 hours.
6284
+ #
6285
+ # **A suitable default value is auto-generated.** You should normally
6286
+ # not need to pass this option.**
6287
+ #
6288
+ # @return [Types::UpdateConsumableResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6289
+ #
6290
+ # * {Types::UpdateConsumableResourceResponse#consumable_resource_name #consumable_resource_name} => String
6291
+ # * {Types::UpdateConsumableResourceResponse#consumable_resource_arn #consumable_resource_arn} => String
6292
+ # * {Types::UpdateConsumableResourceResponse#total_quantity #total_quantity} => Integer
6293
+ #
6294
+ #
6295
+ # @example Example: To update a consumable resource
6296
+ #
6297
+ # # Updates a consumable resource.
6298
+ #
6299
+ # resp = client.update_consumable_resource({
6300
+ # consumable_resource: "myConsumableResource",
6301
+ # operation: "ADD",
6302
+ # quantity: 12,
6303
+ # })
6304
+ #
6305
+ # resp.to_h outputs the following:
6306
+ # {
6307
+ # consumable_resource_arn: "arn:aws:batch:us-east-1:012345678910:consumable-resource/myConsumableResource",
6308
+ # consumable_resource_name: "myConsumableResource",
6309
+ # total_quantity: 135,
6310
+ # }
6311
+ #
6312
+ # @example Request syntax with placeholder values
6313
+ #
6314
+ # resp = client.update_consumable_resource({
6315
+ # consumable_resource: "String", # required
6316
+ # operation: "String",
6317
+ # quantity: 1,
6318
+ # client_token: "ClientRequestToken",
6319
+ # })
6320
+ #
6321
+ # @example Response structure
6322
+ #
6323
+ # resp.consumable_resource_name #=> String
6324
+ # resp.consumable_resource_arn #=> String
6325
+ # resp.total_quantity #=> Integer
6326
+ #
6327
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateConsumableResource AWS API Documentation
6328
+ #
6329
+ # @overload update_consumable_resource(params = {})
6330
+ # @param [Hash] params ({})
6331
+ def update_consumable_resource(params = {}, options = {})
6332
+ req = build_request(:update_consumable_resource, params)
6333
+ req.send_request(options)
6334
+ end
6335
+
4722
6336
  # Updates a job queue.
4723
6337
  #
4724
6338
  # @option params [required, String] :job_queue
@@ -4731,8 +6345,8 @@ module Aws::Batch
4731
6345
  # the queue can finish.
4732
6346
  #
4733
6347
  # @option params [String] :scheduling_policy_arn
4734
- # Amazon Resource Name (ARN) of the fair share scheduling policy. Once a
4735
- # job queue is created, the fair share scheduling policy can be replaced
6348
+ # Amazon Resource Name (ARN) of the fair-share scheduling policy. Once a
6349
+ # job queue is created, the fair-share scheduling policy can be replaced
4736
6350
  # but not removed. The format is
4737
6351
  # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. For
4738
6352
  # example,
@@ -4764,10 +6378,17 @@ module Aws::Batch
4764
6378
  #
4765
6379
  # </note>
4766
6380
  #
6381
+ # @option params [Array<Types::ServiceEnvironmentOrder>] :service_environment_order
6382
+ # The order of the service environment associated with the job queue.
6383
+ # Job queues with a higher priority are evaluated first when associated
6384
+ # with the same service environment.
6385
+ #
4767
6386
  # @option params [Array<Types::JobStateTimeLimitAction>] :job_state_time_limit_actions
4768
6387
  # The set of actions that Batch perform on jobs that remain at the head
4769
6388
  # of the job queue in the specified state longer than specified times.
4770
6389
  # Batch will perform each action after `maxTimeSeconds` has passed.
6390
+ # (**Note**: The minimum value for maxTimeSeconds is 600 (10 minutes)
6391
+ # and its maximum value is 86,400 (24 hours).)
4771
6392
  #
4772
6393
  # @return [Types::UpdateJobQueueResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4773
6394
  #
@@ -4803,12 +6424,18 @@ module Aws::Batch
4803
6424
  # compute_environment: "String", # required
4804
6425
  # },
4805
6426
  # ],
6427
+ # service_environment_order: [
6428
+ # {
6429
+ # order: 1, # required
6430
+ # service_environment: "String", # required
6431
+ # },
6432
+ # ],
4806
6433
  # job_state_time_limit_actions: [
4807
6434
  # {
4808
6435
  # reason: "String", # required
4809
6436
  # state: "RUNNABLE", # required, accepts RUNNABLE
4810
6437
  # max_time_seconds: 1, # required
4811
- # action: "CANCEL", # required, accepts CANCEL
6438
+ # action: "CANCEL", # required, accepts CANCEL, TERMINATE
4812
6439
  # },
4813
6440
  # ],
4814
6441
  # })
@@ -4827,13 +6454,78 @@ module Aws::Batch
4827
6454
  req.send_request(options)
4828
6455
  end
4829
6456
 
6457
+ # Updates a quota share.
6458
+ #
6459
+ # @option params [required, String] :quota_share_arn
6460
+ # The Amazon Resource Name (ARN) of the quota share to update.
6461
+ #
6462
+ # @option params [Array<Types::QuotaShareCapacityLimit>] :capacity_limits
6463
+ # A list that specifies the quantity and type of compute capacity
6464
+ # allocated to the quota share.
6465
+ #
6466
+ # @option params [Types::QuotaShareResourceSharingConfiguration] :resource_sharing_configuration
6467
+ # Specifies whether a quota share reserves, lends, or both lends and
6468
+ # borrows idle compute capacity.
6469
+ #
6470
+ # @option params [Types::QuotaSharePreemptionConfiguration] :preemption_configuration
6471
+ # Specifies the preemption behavior for jobs in a quota share.
6472
+ #
6473
+ # @option params [String] :state
6474
+ # The state of the quota share. If the quota share is `ENABLED`, it is
6475
+ # able to accept jobs. If the quota share is `DISABLED`, new jobs won't
6476
+ # be accepted but jobs already submitted can finish.
6477
+ #
6478
+ # @return [Types::UpdateQuotaShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6479
+ #
6480
+ # * {Types::UpdateQuotaShareResponse#quota_share_name #quota_share_name} => String
6481
+ # * {Types::UpdateQuotaShareResponse#quota_share_arn #quota_share_arn} => String
6482
+ #
6483
+ # @example Request syntax with placeholder values
6484
+ #
6485
+ # resp = client.update_quota_share({
6486
+ # quota_share_arn: "String", # required
6487
+ # capacity_limits: [
6488
+ # {
6489
+ # max_capacity: 1, # required
6490
+ # capacity_unit: "String", # required
6491
+ # },
6492
+ # ],
6493
+ # resource_sharing_configuration: {
6494
+ # strategy: "RESERVE", # required, accepts RESERVE, LEND, LEND_AND_BORROW
6495
+ # borrow_limit: 1,
6496
+ # },
6497
+ # preemption_configuration: {
6498
+ # in_share_preemption: "ENABLED", # required, accepts ENABLED, DISABLED
6499
+ # },
6500
+ # state: "ENABLED", # accepts ENABLED, DISABLED
6501
+ # })
6502
+ #
6503
+ # @example Response structure
6504
+ #
6505
+ # resp.quota_share_name #=> String
6506
+ # resp.quota_share_arn #=> String
6507
+ #
6508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateQuotaShare AWS API Documentation
6509
+ #
6510
+ # @overload update_quota_share(params = {})
6511
+ # @param [Hash] params ({})
6512
+ def update_quota_share(params = {}, options = {})
6513
+ req = build_request(:update_quota_share, params)
6514
+ req.send_request(options)
6515
+ end
6516
+
4830
6517
  # Updates a scheduling policy.
4831
6518
  #
4832
6519
  # @option params [required, String] :arn
4833
6520
  # The Amazon Resource Name (ARN) of the scheduling policy to update.
4834
6521
  #
6522
+ # @option params [Types::QuotaSharePolicy] :quota_share_policy
6523
+ # The quota share scheduling policy details. Once set during creation, a
6524
+ # quotaSharePolicy cannot be removed or changed to a fairsharePolicy.
6525
+ #
4835
6526
  # @option params [Types::FairsharePolicy] :fairshare_policy
4836
- # The fair share policy.
6527
+ # The fair-share policy scheduling details. Once set during creation, a
6528
+ # fairsharePolicy cannot be removed or changed to a quotaSharePolicy.
4837
6529
  #
4838
6530
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4839
6531
  #
@@ -4841,6 +6533,9 @@ module Aws::Batch
4841
6533
  #
4842
6534
  # resp = client.update_scheduling_policy({
4843
6535
  # arn: "String", # required
6536
+ # quota_share_policy: {
6537
+ # idle_resource_assignment_strategy: "FIFO", # required, accepts FIFO
6538
+ # },
4844
6539
  # fairshare_policy: {
4845
6540
  # share_decay_seconds: 1,
4846
6541
  # compute_reservation: 1,
@@ -4862,20 +6557,114 @@ module Aws::Batch
4862
6557
  req.send_request(options)
4863
6558
  end
4864
6559
 
6560
+ # Updates a service environment. You can update the state of a service
6561
+ # environment from `ENABLED` to `DISABLED` to prevent new service jobs
6562
+ # from being placed in the service environment.
6563
+ #
6564
+ # @option params [required, String] :service_environment
6565
+ # The name or ARN of the service environment to update.
6566
+ #
6567
+ # @option params [String] :state
6568
+ # The state of the service environment.
6569
+ #
6570
+ # @option params [Array<Types::CapacityLimit>] :capacity_limits
6571
+ # The capacity limits for the service environment. This defines the
6572
+ # maximum resources that can be used by service jobs in this
6573
+ # environment.
6574
+ #
6575
+ # @return [Types::UpdateServiceEnvironmentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6576
+ #
6577
+ # * {Types::UpdateServiceEnvironmentResponse#service_environment_name #service_environment_name} => String
6578
+ # * {Types::UpdateServiceEnvironmentResponse#service_environment_arn #service_environment_arn} => String
6579
+ #
6580
+ # @example Request syntax with placeholder values
6581
+ #
6582
+ # resp = client.update_service_environment({
6583
+ # service_environment: "String", # required
6584
+ # state: "ENABLED", # accepts ENABLED, DISABLED
6585
+ # capacity_limits: [
6586
+ # {
6587
+ # max_capacity: 1,
6588
+ # capacity_unit: "String",
6589
+ # },
6590
+ # ],
6591
+ # })
6592
+ #
6593
+ # @example Response structure
6594
+ #
6595
+ # resp.service_environment_name #=> String
6596
+ # resp.service_environment_arn #=> String
6597
+ #
6598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateServiceEnvironment AWS API Documentation
6599
+ #
6600
+ # @overload update_service_environment(params = {})
6601
+ # @param [Hash] params ({})
6602
+ def update_service_environment(params = {}, options = {})
6603
+ req = build_request(:update_service_environment, params)
6604
+ req.send_request(options)
6605
+ end
6606
+
6607
+ # Updates the priority of a specified service job in an Batch job queue.
6608
+ #
6609
+ # @option params [required, String] :job_id
6610
+ # The Batch job ID of the job to update.
6611
+ #
6612
+ # @option params [required, Integer] :scheduling_priority
6613
+ # The scheduling priority for the job. This only affects jobs in job
6614
+ # queues with a quota-share or fair-share scheduling policy. Jobs with a
6615
+ # higher scheduling priority are scheduled before jobs with a lower
6616
+ # scheduling priority within a share.
6617
+ #
6618
+ # The minimum supported value is 0 and the maximum supported value is
6619
+ # 9999.
6620
+ #
6621
+ # @return [Types::UpdateServiceJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6622
+ #
6623
+ # * {Types::UpdateServiceJobResponse#job_arn #job_arn} => String
6624
+ # * {Types::UpdateServiceJobResponse#job_name #job_name} => String
6625
+ # * {Types::UpdateServiceJobResponse#job_id #job_id} => String
6626
+ #
6627
+ # @example Request syntax with placeholder values
6628
+ #
6629
+ # resp = client.update_service_job({
6630
+ # job_id: "String", # required
6631
+ # scheduling_priority: 1, # required
6632
+ # })
6633
+ #
6634
+ # @example Response structure
6635
+ #
6636
+ # resp.job_arn #=> String
6637
+ # resp.job_name #=> String
6638
+ # resp.job_id #=> String
6639
+ #
6640
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateServiceJob AWS API Documentation
6641
+ #
6642
+ # @overload update_service_job(params = {})
6643
+ # @param [Hash] params ({})
6644
+ def update_service_job(params = {}, options = {})
6645
+ req = build_request(:update_service_job, params)
6646
+ req.send_request(options)
6647
+ end
6648
+
4865
6649
  # @!endgroup
4866
6650
 
4867
6651
  # @param params ({})
4868
6652
  # @api private
4869
6653
  def build_request(operation_name, params = {})
4870
6654
  handlers = @handlers.for(operation_name)
6655
+ tracer = config.telemetry_provider.tracer_provider.tracer(
6656
+ Aws::Telemetry.module_to_tracer_name('Aws::Batch')
6657
+ )
4871
6658
  context = Seahorse::Client::RequestContext.new(
4872
6659
  operation_name: operation_name,
4873
6660
  operation: config.api.operation(operation_name),
4874
6661
  client: self,
4875
6662
  params: params,
4876
- config: config)
6663
+ config: config,
6664
+ tracer: tracer
6665
+ )
4877
6666
  context[:gem_name] = 'aws-sdk-batch'
4878
- context[:gem_version] = '1.95.0'
6667
+ context[:gem_version] = '1.147.0'
4879
6668
  Seahorse::Client::Request.new(handlers, context)
4880
6669
  end
4881
6670