aws-sdk-batch 1.51.0 → 1.55.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.
@@ -275,6 +275,15 @@ module Aws::Batch
275
275
  # ** Please note ** When response stubbing is enabled, no HTTP
276
276
  # requests are made, and retries are disabled.
277
277
  #
278
+ # @option options [Boolean] :use_dualstack_endpoint
279
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
280
+ # will be used if available.
281
+ #
282
+ # @option options [Boolean] :use_fips_endpoint
283
+ # When set to `true`, fips compatible endpoints will be used if available.
284
+ # When a `fips` region is used, the region is normalized and this config
285
+ # is set to `true`.
286
+ #
278
287
  # @option options [Boolean] :validate_params (true)
279
288
  # When `true`, request parameters are validated before
280
289
  # sending the request.
@@ -430,8 +439,9 @@ module Aws::Batch
430
439
  # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html
431
440
  #
432
441
  # @option params [required, String] :compute_environment_name
433
- # The name for your compute environment. Up to 128 letters (uppercase
434
- # and lowercase), numbers, hyphens, and underscores are allowed.
442
+ # The name for your compute environment. It can be up to 128 letters
443
+ # long. It can contain uppercase and lowercase letters, numbers, hyphens
444
+ # (-), and underscores (\_).
435
445
  #
436
446
  # @option params [required, String] :type
437
447
  # The type of the compute environment: `MANAGED` or `UNMANAGED`. For
@@ -459,6 +469,17 @@ module Aws::Batch
459
469
  # environments in the `DISABLED` state don't scale out. However, they
460
470
  # scale in to `minvCpus` value after instances become idle.
461
471
  #
472
+ # @option params [Integer] :unmanagedv_cpus
473
+ # The maximum number of vCPUs for an unmanaged compute environment. This
474
+ # parameter is only used for fair share scheduling to reserve vCPU
475
+ # capacity for new share identifiers. If this parameter isn't provided
476
+ # for a fair share job queue, no vCPU capacity is reserved.
477
+ #
478
+ # <note markdown="1"> This parameter is only supported when the `type` parameter is set to
479
+ # `UNMANAGED`/
480
+ #
481
+ # </note>
482
+ #
462
483
  # @option params [Types::ComputeResource] :compute_resources
463
484
  # Details about the compute resources managed by the compute
464
485
  # environment. This parameter is required for managed compute
@@ -617,6 +638,7 @@ module Aws::Batch
617
638
  # compute_environment_name: "String", # required
618
639
  # type: "MANAGED", # required, accepts MANAGED, UNMANAGED
619
640
  # state: "ENABLED", # accepts ENABLED, DISABLED
641
+ # unmanagedv_cpus: 1,
620
642
  # compute_resources: {
621
643
  # type: "EC2", # required, accepts EC2, SPOT, FARGATE, FARGATE_SPOT
622
644
  # allocation_strategy: "BEST_FIT", # accepts BEST_FIT, BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED
@@ -678,8 +700,9 @@ module Aws::Batch
678
700
  # preference for scheduling jobs to that compute environment.
679
701
  #
680
702
  # @option params [required, String] :job_queue_name
681
- # The name of the job queue. Up to 128 letters (uppercase and
682
- # lowercase), numbers, and underscores are allowed.
703
+ # The name of the job queue. It can be up to 128 letters long. It can
704
+ # contain uppercase and lowercase letters, numbers, hyphens (-), and
705
+ # underscores (\_).
683
706
  #
684
707
  # @option params [String] :state
685
708
  # The state of the job queue. If the job queue state is `ENABLED`, it is
@@ -687,6 +710,17 @@ module Aws::Batch
687
710
  # can't be added to the queue, but jobs already in the queue can
688
711
  # finish.
689
712
  #
713
+ # @option params [String] :scheduling_policy_arn
714
+ # The Amazon Resource Name (ARN) of the fair share scheduling policy. If
715
+ # this parameter is specified, the job queue uses a fair share
716
+ # scheduling policy. If this parameter isn't specified, the job queue
717
+ # uses a first in, first out (FIFO) scheduling policy. After a job queue
718
+ # is created, you can replace but can't remove the fair share
719
+ # scheduling policy. The format is
720
+ # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. An
721
+ # example is
722
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
723
+ #
690
724
  # @option params [required, Integer] :priority
691
725
  # The priority of the job queue. Job queues with a higher priority (or a
692
726
  # higher integer value for the `priority` parameter) are evaluated first
@@ -783,6 +817,7 @@ module Aws::Batch
783
817
  # resp = client.create_job_queue({
784
818
  # job_queue_name: "String", # required
785
819
  # state: "ENABLED", # accepts ENABLED, DISABLED
820
+ # scheduling_policy_arn: "String",
786
821
  # priority: 1, # required
787
822
  # compute_environment_order: [ # required
788
823
  # {
@@ -809,6 +844,69 @@ module Aws::Batch
809
844
  req.send_request(options)
810
845
  end
811
846
 
847
+ # Creates an Batch scheduling policy.
848
+ #
849
+ # @option params [required, String] :name
850
+ # The name of the scheduling policy. It can be up to 128 letters long.
851
+ # It can contain uppercase and lowercase letters, numbers, hyphens (-),
852
+ # and underscores (\_).
853
+ #
854
+ # @option params [Types::FairsharePolicy] :fairshare_policy
855
+ # The fair share policy of the scheduling policy.
856
+ #
857
+ # @option params [Hash<String,String>] :tags
858
+ # The tags that you apply to the scheduling policy to help you
859
+ # categorize and organize your resources. Each tag consists of a key and
860
+ # an optional value. For more information, see [Tagging Amazon Web
861
+ # Services Resources][1] in *Amazon Web Services General Reference*.
862
+ #
863
+ # These tags can be updated or removed using the [TagResource][2] and
864
+ # [UntagResource][3] API operations.
865
+ #
866
+ #
867
+ #
868
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
869
+ # [2]: https://docs.aws.amazon.com/batch/latest/APIReference/API_TagResource.html
870
+ # [3]: https://docs.aws.amazon.com/batch/latest/APIReference/API_UntagResource.html
871
+ #
872
+ # @return [Types::CreateSchedulingPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
873
+ #
874
+ # * {Types::CreateSchedulingPolicyResponse#name #name} => String
875
+ # * {Types::CreateSchedulingPolicyResponse#arn #arn} => String
876
+ #
877
+ # @example Request syntax with placeholder values
878
+ #
879
+ # resp = client.create_scheduling_policy({
880
+ # name: "String", # required
881
+ # fairshare_policy: {
882
+ # share_decay_seconds: 1,
883
+ # compute_reservation: 1,
884
+ # share_distribution: [
885
+ # {
886
+ # share_identifier: "String", # required
887
+ # weight_factor: 1.0,
888
+ # },
889
+ # ],
890
+ # },
891
+ # tags: {
892
+ # "TagKey" => "TagValue",
893
+ # },
894
+ # })
895
+ #
896
+ # @example Response structure
897
+ #
898
+ # resp.name #=> String
899
+ # resp.arn #=> String
900
+ #
901
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateSchedulingPolicy AWS API Documentation
902
+ #
903
+ # @overload create_scheduling_policy(params = {})
904
+ # @param [Hash] params ({})
905
+ def create_scheduling_policy(params = {}, options = {})
906
+ req = build_request(:create_scheduling_policy, params)
907
+ req.send_request(options)
908
+ end
909
+
812
910
  # Deletes an Batch compute environment.
813
911
  #
814
912
  # Before you can delete a compute environment, you must set its state to
@@ -895,6 +993,30 @@ module Aws::Batch
895
993
  req.send_request(options)
896
994
  end
897
995
 
996
+ # Deletes the specified scheduling policy.
997
+ #
998
+ # You can't delete a scheduling policy that's used in any job queues.
999
+ #
1000
+ # @option params [required, String] :arn
1001
+ # The Amazon Resource Name (ARN) of the scheduling policy to delete.
1002
+ #
1003
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1004
+ #
1005
+ # @example Request syntax with placeholder values
1006
+ #
1007
+ # resp = client.delete_scheduling_policy({
1008
+ # arn: "String", # required
1009
+ # })
1010
+ #
1011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteSchedulingPolicy AWS API Documentation
1012
+ #
1013
+ # @overload delete_scheduling_policy(params = {})
1014
+ # @param [Hash] params ({})
1015
+ def delete_scheduling_policy(params = {}, options = {})
1016
+ req = build_request(:delete_scheduling_policy, params)
1017
+ req.send_request(options)
1018
+ end
1019
+
898
1020
  # Deregisters an Batch job definition. Job definitions are permanently
899
1021
  # deleted after 180 days.
900
1022
  #
@@ -1036,6 +1158,7 @@ module Aws::Batch
1036
1158
  # resp.compute_environments #=> Array
1037
1159
  # resp.compute_environments[0].compute_environment_name #=> String
1038
1160
  # resp.compute_environments[0].compute_environment_arn #=> String
1161
+ # resp.compute_environments[0].unmanagedv_cpus #=> Integer
1039
1162
  # resp.compute_environments[0].ecs_cluster_arn #=> String
1040
1163
  # resp.compute_environments[0].tags #=> Hash
1041
1164
  # resp.compute_environments[0].tags["TagKey"] #=> String
@@ -1085,7 +1208,7 @@ module Aws::Batch
1085
1208
  #
1086
1209
  # @option params [Array<String>] :job_definitions
1087
1210
  # A list of up to 100 job definitions. Each entry in the list can either
1088
- # be an ARN of the form
1211
+ # be an ARN in the format
1089
1212
  # `arn:aws:batch:$\{Region\}:$\{Account\}:job-definition/$\{JobDefinitionName\}:$\{Revision\}`
1090
1213
  # or a short version using the form
1091
1214
  # `$\{JobDefinitionName\}:$\{Revision\}`.
@@ -1149,12 +1272,20 @@ module Aws::Batch
1149
1272
  # environment: [
1150
1273
  # ],
1151
1274
  # image: "busybox",
1152
- # memory: 128,
1153
1275
  # mount_points: [
1154
1276
  # ],
1277
+ # resource_requirements: [
1278
+ # {
1279
+ # type: "MEMORY",
1280
+ # value: "128",
1281
+ # },
1282
+ # {
1283
+ # type: "VCPU",
1284
+ # value: "1",
1285
+ # },
1286
+ # ],
1155
1287
  # ulimits: [
1156
1288
  # ],
1157
- # vcpus: 1,
1158
1289
  # volumes: [
1159
1290
  # ],
1160
1291
  # },
@@ -1184,6 +1315,7 @@ module Aws::Batch
1184
1315
  # resp.job_definitions[0].revision #=> Integer
1185
1316
  # resp.job_definitions[0].status #=> String
1186
1317
  # resp.job_definitions[0].type #=> String
1318
+ # resp.job_definitions[0].scheduling_priority #=> Integer
1187
1319
  # resp.job_definitions[0].parameters #=> Hash
1188
1320
  # resp.job_definitions[0].parameters["String"] #=> String
1189
1321
  # resp.job_definitions[0].retry_strategy.attempts #=> Integer
@@ -1412,6 +1544,7 @@ module Aws::Batch
1412
1544
  # resp.job_queues[0].job_queue_name #=> String
1413
1545
  # resp.job_queues[0].job_queue_arn #=> String
1414
1546
  # resp.job_queues[0].state #=> String, one of "ENABLED", "DISABLED"
1547
+ # resp.job_queues[0].scheduling_policy_arn #=> String
1415
1548
  # resp.job_queues[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "DELETED", "VALID", "INVALID"
1416
1549
  # resp.job_queues[0].status_reason #=> String
1417
1550
  # resp.job_queues[0].priority #=> Integer
@@ -1504,6 +1637,8 @@ module Aws::Batch
1504
1637
  # resp.jobs[0].job_id #=> String
1505
1638
  # resp.jobs[0].job_queue #=> String
1506
1639
  # resp.jobs[0].status #=> String, one of "SUBMITTED", "PENDING", "RUNNABLE", "STARTING", "RUNNING", "SUCCEEDED", "FAILED"
1640
+ # resp.jobs[0].share_identifier #=> String
1641
+ # resp.jobs[0].scheduling_priority #=> Integer
1507
1642
  # resp.jobs[0].attempts #=> Array
1508
1643
  # resp.jobs[0].attempts[0].container.container_instance_arn #=> String
1509
1644
  # resp.jobs[0].attempts[0].container.task_arn #=> String
@@ -1686,6 +1821,44 @@ module Aws::Batch
1686
1821
  req.send_request(options)
1687
1822
  end
1688
1823
 
1824
+ # Describes one or more of your scheduling policies.
1825
+ #
1826
+ # @option params [required, Array<String>] :arns
1827
+ # A list of up to 100 scheduling policy Amazon Resource Name (ARN)
1828
+ # entries.
1829
+ #
1830
+ # @return [Types::DescribeSchedulingPoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1831
+ #
1832
+ # * {Types::DescribeSchedulingPoliciesResponse#scheduling_policies #scheduling_policies} => Array&lt;Types::SchedulingPolicyDetail&gt;
1833
+ #
1834
+ # @example Request syntax with placeholder values
1835
+ #
1836
+ # resp = client.describe_scheduling_policies({
1837
+ # arns: ["String"], # required
1838
+ # })
1839
+ #
1840
+ # @example Response structure
1841
+ #
1842
+ # resp.scheduling_policies #=> Array
1843
+ # resp.scheduling_policies[0].name #=> String
1844
+ # resp.scheduling_policies[0].arn #=> String
1845
+ # resp.scheduling_policies[0].fairshare_policy.share_decay_seconds #=> Integer
1846
+ # resp.scheduling_policies[0].fairshare_policy.compute_reservation #=> Integer
1847
+ # resp.scheduling_policies[0].fairshare_policy.share_distribution #=> Array
1848
+ # resp.scheduling_policies[0].fairshare_policy.share_distribution[0].share_identifier #=> String
1849
+ # resp.scheduling_policies[0].fairshare_policy.share_distribution[0].weight_factor #=> Float
1850
+ # resp.scheduling_policies[0].tags #=> Hash
1851
+ # resp.scheduling_policies[0].tags["TagKey"] #=> String
1852
+ #
1853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeSchedulingPolicies AWS API Documentation
1854
+ #
1855
+ # @overload describe_scheduling_policies(params = {})
1856
+ # @param [Hash] params ({})
1857
+ def describe_scheduling_policies(params = {}, options = {})
1858
+ req = build_request(:describe_scheduling_policies, params)
1859
+ req.send_request(options)
1860
+ end
1861
+
1689
1862
  # Returns a list of Batch jobs.
1690
1863
  #
1691
1864
  # You must specify only one of the following items:
@@ -1780,15 +1953,15 @@ module Aws::Batch
1780
1953
  #
1781
1954
  # : The value for the filter is the time that's before the job was
1782
1955
  # created. This corresponds to the `createdAt` value. The value is a
1783
- # string representation of the number of seconds since 00:00:00 UTC
1784
- # (midnight) on January 1, 1970.
1956
+ # string representation of the number of milliseconds since 00:00:00
1957
+ # UTC (midnight) on January 1, 1970.
1785
1958
  #
1786
1959
  # AFTER\_CREATED\_AT
1787
1960
  #
1788
1961
  # : The value for the filter is the time that's after the job was
1789
1962
  # created. This corresponds to the `createdAt` value. The value is a
1790
- # string representation of the number of seconds since 00:00:00 UTC
1791
- # (midnight) on January 1, 1970.
1963
+ # string representation of the number of milliseconds since 00:00:00
1964
+ # UTC (midnight) on January 1, 1970.
1792
1965
  #
1793
1966
  # @return [Types::ListJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1794
1967
  #
@@ -1882,16 +2055,72 @@ module Aws::Batch
1882
2055
  req.send_request(options)
1883
2056
  end
1884
2057
 
2058
+ # Returns a list of Batch scheduling policies.
2059
+ #
2060
+ # @option params [Integer] :max_results
2061
+ # The maximum number of results that's returned by
2062
+ # `ListSchedulingPolicies` in paginated output. When this parameter is
2063
+ # used, `ListSchedulingPolicies` only returns `maxResults` results in a
2064
+ # single page and a `nextToken` response element. You can see the
2065
+ # remaining results of the initial request by sending another
2066
+ # `ListSchedulingPolicies` request with the returned `nextToken` value.
2067
+ # This value can be between 1 and 100. If this parameter isn't used,
2068
+ # `ListSchedulingPolicies` returns up to 100 results and a `nextToken`
2069
+ # value if applicable.
2070
+ #
2071
+ # @option params [String] :next_token
2072
+ # The `nextToken` value that's returned from a previous paginated
2073
+ # `ListSchedulingPolicies` request where `maxResults` was used and the
2074
+ # results exceeded the value of that parameter. Pagination continues
2075
+ # from the end of the previous results that returned the `nextToken`
2076
+ # value. This value is `null` when there are no more results to return.
2077
+ #
2078
+ # <note markdown="1"> This token should be treated as an opaque identifier that's only used
2079
+ # to retrieve the next items in a list and not for other programmatic
2080
+ # purposes.
2081
+ #
2082
+ # </note>
2083
+ #
2084
+ # @return [Types::ListSchedulingPoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2085
+ #
2086
+ # * {Types::ListSchedulingPoliciesResponse#scheduling_policies #scheduling_policies} => Array&lt;Types::SchedulingPolicyListingDetail&gt;
2087
+ # * {Types::ListSchedulingPoliciesResponse#next_token #next_token} => String
2088
+ #
2089
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2090
+ #
2091
+ # @example Request syntax with placeholder values
2092
+ #
2093
+ # resp = client.list_scheduling_policies({
2094
+ # max_results: 1,
2095
+ # next_token: "String",
2096
+ # })
2097
+ #
2098
+ # @example Response structure
2099
+ #
2100
+ # resp.scheduling_policies #=> Array
2101
+ # resp.scheduling_policies[0].arn #=> String
2102
+ # resp.next_token #=> String
2103
+ #
2104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListSchedulingPolicies AWS API Documentation
2105
+ #
2106
+ # @overload list_scheduling_policies(params = {})
2107
+ # @param [Hash] params ({})
2108
+ def list_scheduling_policies(params = {}, options = {})
2109
+ req = build_request(:list_scheduling_policies, params)
2110
+ req.send_request(options)
2111
+ end
2112
+
1885
2113
  # Lists the tags for an Batch resource. Batch resources that support
1886
- # tags are compute environments, jobs, job definitions, and job queues.
1887
- # ARNs for child jobs of array and multi-node parallel (MNP) jobs are
1888
- # not supported.
2114
+ # tags are compute environments, jobs, job definitions, job queues, and
2115
+ # scheduling policies. ARNs for child jobs of array and multi-node
2116
+ # parallel (MNP) jobs are not supported.
1889
2117
  #
1890
2118
  # @option params [required, String] :resource_arn
1891
2119
  # The Amazon Resource Name (ARN) that identifies the resource that tags
1892
2120
  # are listed for. Batch resources that support tags are compute
1893
- # environments, jobs, job definitions, and job queues. ARNs for child
1894
- # jobs of array and multi-node parallel (MNP) jobs are not supported.
2121
+ # environments, jobs, job definitions, job queues, and scheduling
2122
+ # policies. ARNs for child jobs of array and multi-node parallel (MNP)
2123
+ # jobs are not supported.
1895
2124
  #
1896
2125
  # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1897
2126
  #
@@ -1938,9 +2167,9 @@ module Aws::Batch
1938
2167
  # Registers an Batch job definition.
1939
2168
  #
1940
2169
  # @option params [required, String] :job_definition_name
1941
- # The name of the job definition to register. Up to 128 letters
1942
- # (uppercase and lowercase), numbers, hyphens, and underscores are
1943
- # allowed.
2170
+ # The name of the job definition to register. It can be up to 128
2171
+ # letters long. It can contain uppercase and lowercase letters, numbers,
2172
+ # hyphens (-), and underscores (\_).
1944
2173
  #
1945
2174
  # @option params [required, String] :type
1946
2175
  # The type of job definition. For more information about multi-node
@@ -1962,6 +2191,15 @@ module Aws::Batch
1962
2191
  # Parameters in a `SubmitJob` request override any corresponding
1963
2192
  # parameter defaults from the job definition.
1964
2193
  #
2194
+ # @option params [Integer] :scheduling_priority
2195
+ # The scheduling priority for jobs that are submitted with this job
2196
+ # definition. This will only affect jobs in job queues with a fair share
2197
+ # policy. Jobs with a higher scheduling priority will be scheduled
2198
+ # before jobs with a lower scheduling priority.
2199
+ #
2200
+ # The minimum supported value is 0 and the maximum supported value is
2201
+ # 9999.
2202
+ #
1965
2203
  # @option params [Types::ContainerProperties] :container_properties
1966
2204
  # An object with various properties specific to single-node
1967
2205
  # container-based jobs. If the job definition's `type` parameter is
@@ -2052,8 +2290,16 @@ module Aws::Batch
2052
2290
  # "10",
2053
2291
  # ],
2054
2292
  # image: "busybox",
2055
- # memory: 128,
2056
- # vcpus: 1,
2293
+ # resource_requirements: [
2294
+ # {
2295
+ # type: "MEMORY",
2296
+ # value: "128",
2297
+ # },
2298
+ # {
2299
+ # type: "VCPU",
2300
+ # value: "1",
2301
+ # },
2302
+ # ],
2057
2303
  # },
2058
2304
  # job_definition_name: "sleep10",
2059
2305
  # })
@@ -2077,8 +2323,16 @@ module Aws::Batch
2077
2323
  # "30",
2078
2324
  # ],
2079
2325
  # image: "busybox",
2080
- # memory: 128,
2081
- # vcpus: 1,
2326
+ # resource_requirements: [
2327
+ # {
2328
+ # type: "MEMORY",
2329
+ # value: "128",
2330
+ # },
2331
+ # {
2332
+ # type: "VCPU",
2333
+ # value: "1",
2334
+ # },
2335
+ # ],
2082
2336
  # },
2083
2337
  # job_definition_name: "sleep30",
2084
2338
  # tags: {
@@ -2102,6 +2356,7 @@ module Aws::Batch
2102
2356
  # parameters: {
2103
2357
  # "String" => "String",
2104
2358
  # },
2359
+ # scheduling_priority: 1,
2105
2360
  # container_properties: {
2106
2361
  # image: "String",
2107
2362
  # vcpus: 1,
@@ -2350,25 +2605,43 @@ module Aws::Batch
2350
2605
  # Submits an Batch job from a job definition. Parameters that are
2351
2606
  # specified during SubmitJob override parameters defined in the job
2352
2607
  # definition. vCPU and memory requirements that are specified in the
2353
- # `ResourceRequirements` objects in the job definition are the
2608
+ # `resourceRequirements` objects in the job definition are the
2354
2609
  # exception. They can't be overridden this way using the `memory` and
2355
2610
  # `vcpus` parameters. Rather, you must specify updates to job definition
2356
2611
  # parameters in a `ResourceRequirements` object that's included in the
2357
2612
  # `containerOverrides` parameter.
2358
2613
  #
2614
+ # <note markdown="1"> Job queues with a scheduling policy are limited to 500 active fair
2615
+ # share identifiers at a time.
2616
+ #
2617
+ # </note>
2618
+ #
2359
2619
  # Jobs that run on Fargate resources can't be guaranteed to run for
2360
2620
  # more than 14 days. This is because, after 14 days, Fargate resources
2361
2621
  # might become unavailable and job might be terminated.
2362
2622
  #
2363
2623
  # @option params [required, String] :job_name
2364
- # The name of the job. The first character must be alphanumeric, and up
2365
- # to 128 letters (uppercase and lowercase), numbers, hyphens, and
2366
- # underscores are allowed.
2624
+ # The name of the job. It can be up to 128 letters long. The first
2625
+ # character must be alphanumeric, can contain uppercase and lowercase
2626
+ # letters, numbers, hyphens (-), and underscores (\_).
2367
2627
  #
2368
2628
  # @option params [required, String] :job_queue
2369
2629
  # The job queue where the job is submitted. You can specify either the
2370
2630
  # name or the Amazon Resource Name (ARN) of the queue.
2371
2631
  #
2632
+ # @option params [String] :share_identifier
2633
+ # The share identifier for the job.
2634
+ #
2635
+ # @option params [Integer] :scheduling_priority_override
2636
+ # The scheduling priority for the job. This will only affect jobs in job
2637
+ # queues with a fair share policy. Jobs with a higher scheduling
2638
+ # priority will be scheduled before jobs with a lower scheduling
2639
+ # priority. This will override any scheduling priority in the job
2640
+ # definition.
2641
+ #
2642
+ # The minimum supported value is 0 and the maximum supported value is
2643
+ # 9999.
2644
+ #
2372
2645
  # @option params [Types::ArrayProperties] :array_properties
2373
2646
  # The array properties for the submitted job, such as the size of the
2374
2647
  # array. The array size can be between 2 and 10,000. If you specify
@@ -2487,6 +2760,8 @@ module Aws::Batch
2487
2760
  # resp = client.submit_job({
2488
2761
  # job_name: "String", # required
2489
2762
  # job_queue: "String", # required
2763
+ # share_identifier: "String",
2764
+ # scheduling_priority_override: 1,
2490
2765
  # array_properties: {
2491
2766
  # size: 1,
2492
2767
  # },
@@ -2584,14 +2859,14 @@ module Aws::Batch
2584
2859
  # request parameters, they aren't changed. When a resource is deleted,
2585
2860
  # the tags that are associated with that resource are deleted as well.
2586
2861
  # Batch resources that support tags are compute environments, jobs, job
2587
- # definitions, and job queues. ARNs for child jobs of array and
2588
- # multi-node parallel (MNP) jobs are not supported.
2862
+ # definitions, job queues, and scheduling policies. ARNs for child jobs
2863
+ # of array and multi-node parallel (MNP) jobs are not supported.
2589
2864
  #
2590
2865
  # @option params [required, String] :resource_arn
2591
2866
  # The Amazon Resource Name (ARN) of the resource that tags are added to.
2592
2867
  # Batch resources that support tags are compute environments, jobs, job
2593
- # definitions, and job queues. ARNs for child jobs of array and
2594
- # multi-node parallel (MNP) jobs are not supported.
2868
+ # definitions, job queues, and scheduling policies. ARNs for child jobs
2869
+ # of array and multi-node parallel (MNP) jobs are not supported.
2595
2870
  #
2596
2871
  # @option params [required, Hash<String,String>] :tags
2597
2872
  # The tags that you apply to the resource to help you categorize and
@@ -2689,8 +2964,9 @@ module Aws::Batch
2689
2964
  # @option params [required, String] :resource_arn
2690
2965
  # The Amazon Resource Name (ARN) of the resource from which to delete
2691
2966
  # tags. Batch resources that support tags are compute environments,
2692
- # jobs, job definitions, and job queues. ARNs for child jobs of array
2693
- # and multi-node parallel (MNP) jobs are not supported.
2967
+ # jobs, job definitions, job queues, and scheduling policies. ARNs for
2968
+ # child jobs of array and multi-node parallel (MNP) jobs are not
2969
+ # supported.
2694
2970
  #
2695
2971
  # @option params [required, Array<String>] :tag_keys
2696
2972
  # The keys of the tags to be removed.
@@ -2752,6 +3028,14 @@ module Aws::Batch
2752
3028
  # environments in the `DISABLED` state don't scale out. However, they
2753
3029
  # scale in to `minvCpus` value after instances become idle.
2754
3030
  #
3031
+ # @option params [Integer] :unmanagedv_cpus
3032
+ # The maximum number of vCPUs expected to be used for an unmanaged
3033
+ # compute environment. This parameter should not be specified for a
3034
+ # managed compute environment. This parameter is only used for fair
3035
+ # share scheduling to reserve vCPU capacity for new share identifiers.
3036
+ # If this parameter is not provided for a fair share job queue, no vCPU
3037
+ # capacity will be reserved.
3038
+ #
2755
3039
  # @option params [Types::ComputeResourceUpdate] :compute_resources
2756
3040
  # Details of the compute resources managed by the compute environment.
2757
3041
  # Required for a managed compute environment. For more information, see
@@ -2815,6 +3099,7 @@ module Aws::Batch
2815
3099
  # resp = client.update_compute_environment({
2816
3100
  # compute_environment: "String", # required
2817
3101
  # state: "ENABLED", # accepts ENABLED, DISABLED
3102
+ # unmanagedv_cpus: 1,
2818
3103
  # compute_resources: {
2819
3104
  # minv_cpus: 1,
2820
3105
  # maxv_cpus: 1,
@@ -2850,6 +3135,14 @@ module Aws::Batch
2850
3135
  # `DISABLED`, new jobs can't be added to the queue, but jobs already in
2851
3136
  # the queue can finish.
2852
3137
  #
3138
+ # @option params [String] :scheduling_policy_arn
3139
+ # Amazon Resource Name (ARN) of the fair share scheduling policy. Once a
3140
+ # job queue is created, the fair share scheduling policy can be replaced
3141
+ # but not removed. The format is
3142
+ # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. For
3143
+ # example,
3144
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
3145
+ #
2853
3146
  # @option params [Integer] :priority
2854
3147
  # The priority of the job queue. Job queues with a higher priority (or a
2855
3148
  # higher integer value for the `priority` parameter) are evaluated first
@@ -2902,6 +3195,7 @@ module Aws::Batch
2902
3195
  # resp = client.update_job_queue({
2903
3196
  # job_queue: "String", # required
2904
3197
  # state: "ENABLED", # accepts ENABLED, DISABLED
3198
+ # scheduling_policy_arn: "String",
2905
3199
  # priority: 1,
2906
3200
  # compute_environment_order: [
2907
3201
  # {
@@ -2925,6 +3219,41 @@ module Aws::Batch
2925
3219
  req.send_request(options)
2926
3220
  end
2927
3221
 
3222
+ # Updates a scheduling policy.
3223
+ #
3224
+ # @option params [required, String] :arn
3225
+ # The Amazon Resource Name (ARN) of the scheduling policy to update.
3226
+ #
3227
+ # @option params [Types::FairsharePolicy] :fairshare_policy
3228
+ # The fair share policy.
3229
+ #
3230
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3231
+ #
3232
+ # @example Request syntax with placeholder values
3233
+ #
3234
+ # resp = client.update_scheduling_policy({
3235
+ # arn: "String", # required
3236
+ # fairshare_policy: {
3237
+ # share_decay_seconds: 1,
3238
+ # compute_reservation: 1,
3239
+ # share_distribution: [
3240
+ # {
3241
+ # share_identifier: "String", # required
3242
+ # weight_factor: 1.0,
3243
+ # },
3244
+ # ],
3245
+ # },
3246
+ # })
3247
+ #
3248
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateSchedulingPolicy AWS API Documentation
3249
+ #
3250
+ # @overload update_scheduling_policy(params = {})
3251
+ # @param [Hash] params ({})
3252
+ def update_scheduling_policy(params = {}, options = {})
3253
+ req = build_request(:update_scheduling_policy, params)
3254
+ req.send_request(options)
3255
+ end
3256
+
2928
3257
  # @!endgroup
2929
3258
 
2930
3259
  # @param params ({})
@@ -2938,7 +3267,7 @@ module Aws::Batch
2938
3267
  params: params,
2939
3268
  config: config)
2940
3269
  context[:gem_name] = 'aws-sdk-batch'
2941
- context[:gem_version] = '1.51.0'
3270
+ context[:gem_version] = '1.55.0'
2942
3271
  Seahorse::Client::Request.new(handlers, context)
2943
3272
  end
2944
3273