aws-sdk-batch 1.51.0 → 1.55.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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