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.
@@ -214,14 +214,20 @@ module Aws::Batch
214
214
  # An object representing an Batch compute environment.
215
215
  #
216
216
  # @!attribute [rw] compute_environment_name
217
- # The name of the compute environment. Up to 128 letters (uppercase
218
- # and lowercase), numbers, hyphens, and underscores are allowed.
217
+ # The name of the compute environment. It can be up to 128 letters
218
+ # long. It can contain uppercase and lowercase letters, numbers,
219
+ # hyphens (-), and underscores (\_).
219
220
  # @return [String]
220
221
  #
221
222
  # @!attribute [rw] compute_environment_arn
222
223
  # The Amazon Resource Name (ARN) of the compute environment.
223
224
  # @return [String]
224
225
  #
226
+ # @!attribute [rw] unmanagedv_cpus
227
+ # The maximum number of VCPUs expected to be used for an unmanaged
228
+ # compute environment.
229
+ # @return [Integer]
230
+ #
225
231
  # @!attribute [rw] ecs_cluster_arn
226
232
  # The Amazon Resource Name (ARN) of the underlying Amazon ECS cluster
227
233
  # used by the compute environment.
@@ -294,6 +300,7 @@ module Aws::Batch
294
300
  class ComputeEnvironmentDetail < Struct.new(
295
301
  :compute_environment_name,
296
302
  :compute_environment_arn,
303
+ :unmanagedv_cpus,
297
304
  :ecs_cluster_arn,
298
305
  :tags,
299
306
  :type,
@@ -606,7 +613,7 @@ module Aws::Batch
606
613
  # is the tag value−for example, `\{ "Name": "Batch Instance -
607
614
  # C4OnDemand" \}`. This is helpful for recognizing your Batch
608
615
  # instances in the Amazon EC2 console. These tags can't be updated or
609
- # removed after the compute environment is created.Aany changes to
616
+ # removed after the compute environment is created. Any changes to
610
617
  # these tags require that you create a new compute environment and
611
618
  # remove the old compute environment. These tags aren't seen when
612
619
  # using the Batch `ListTagsForResource` API operation.
@@ -700,7 +707,9 @@ module Aws::Batch
700
707
  # @!attribute [rw] ec2_configuration
701
708
  # Provides information used to select Amazon Machine Images (AMIs) for
702
709
  # EC2 instances in the compute environment. If `Ec2Configuration`
703
- # isn't specified, the default is `ECS_AL1`.
710
+ # isn't specified, the default is `ECS_AL2`.
711
+ #
712
+ # One or two values can be provided.
704
713
  #
705
714
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
706
715
  # resources, and shouldn't be specified.
@@ -829,7 +838,7 @@ module Aws::Batch
829
838
  # The number of vCPUs reserved for the container. For jobs that run on
830
839
  # EC2 resources, you can specify the vCPU requirement for the job
831
840
  # using `resourceRequirements`, but you can't specify the vCPU
832
- # requirements in both the `vcpus` and `resourceRequirement` object.
841
+ # requirements in both the `vcpus` and `resourceRequirements` object.
833
842
  # This parameter maps to `CpuShares` in the [Create a container][1]
834
843
  # section of the [Docker Remote API][2] and the `--cpu-shares` option
835
844
  # to [docker run][3]. Each vCPU is equivalent to 1,024 CPU shares. You
@@ -852,7 +861,7 @@ module Aws::Batch
852
861
  #
853
862
  # @!attribute [rw] memory
854
863
  # For jobs run on EC2 resources that didn't specify memory
855
- # requirements using `ResourceRequirement`, the number of MiB of
864
+ # requirements using `resourceRequirements`, the number of MiB of
856
865
  # memory reserved for the job. For other jobs, including all run on
857
866
  # Fargate resources, see `resourceRequirements`.
858
867
  # @return [Integer]
@@ -1125,48 +1134,41 @@ module Aws::Batch
1125
1134
  # }
1126
1135
  #
1127
1136
  # @!attribute [rw] vcpus
1128
- # This parameter indicates the number of vCPUs reserved for the
1129
- # container.It overrides the `vcpus` parameter that's set in the job
1137
+ # This parameter is deprecated, use `resourceRequirements` to override
1138
+ # the `vcpus` parameter that's set in the job definition. It's not
1139
+ # supported for jobs that run on Fargate resources. For jobs run on
1140
+ # EC2 resources, it overrides the `vcpus` parameter set in the job
1130
1141
  # definition, but doesn't override any vCPU requirement specified in
1131
- # the `resourceRequirement` structure in the job definition. To
1142
+ # the `resourceRequirements` structure in the job definition. To
1132
1143
  # override vCPU requirements that are specified in the
1133
- # `ResourceRequirement` structure in the job definition,
1134
- # `ResourceRequirement` must be specified in the `SubmitJob` request,
1135
- # with `type` set to `VCPU` and `value` set to the new value.
1136
- #
1137
- # This parameter maps to `CpuShares` in the [Create a container][1]
1138
- # section of the [Docker Remote API][2] and the `--cpu-shares` option
1139
- # to [docker run][3]. Each vCPU is equivalent to 1,024 CPU shares. You
1140
- # must specify at least one vCPU.
1144
+ # `resourceRequirements` structure in the job definition,
1145
+ # `resourceRequirements` must be specified in the `SubmitJob` request,
1146
+ # with `type` set to `VCPU` and `value` set to the new value. For more
1147
+ # information, see [Can't override job definition resource
1148
+ # requirements][1] in the *Batch User Guide*.
1141
1149
  #
1142
- # <note markdown="1"> This parameter is supported for jobs that run on EC2 resources, but
1143
- # isn't supported for jobs that run on Fargate resources. For Fargate
1144
- # resources, you can only use `resourceRequirement`. For EC2
1145
- # resources, you can use either this parameter or
1146
- # `resourceRequirement` but not both.
1147
- #
1148
- # </note>
1149
1150
  #
1150
1151
  #
1151
- #
1152
- # [1]: https://docs.docker.com/engine/api/v1.23/#create-a-container
1153
- # [2]: https://docs.docker.com/engine/api/v1.23/
1154
- # [3]: https://docs.docker.com/engine/reference/run/
1152
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html#override-resource-requirements
1155
1153
  # @return [Integer]
1156
1154
  #
1157
1155
  # @!attribute [rw] memory
1158
- # This parameter indicates the amount of memory (in MiB) that's
1159
- # reserved for the job. It overrides the `memory` parameter set in the
1160
- # job definition, but doesn't override any memory requirement
1161
- # specified in the `ResourceRequirement` structure in the job
1162
- # definition. To override memory requirements that are specified in
1163
- # the `ResourceRequirement` structure in the job definition,
1164
- # `ResourceRequirement` must be specified in the `SubmitJob` request,
1165
- # with `type` set to `MEMORY` and `value` set to the new value.
1166
- #
1167
- # This parameter is supported for jobs that run on EC2 resources, but
1168
- # isn't supported for jobs that run on Fargate resources. For these
1169
- # resources, use `resourceRequirement` instead.
1156
+ # This parameter is deprecated, use `resourceRequirements` to override
1157
+ # the memory requirements specified in the job definition. It's not
1158
+ # supported for jobs that run on Fargate resources. For jobs run on
1159
+ # EC2 resources, it overrides the `memory` parameter set in the job
1160
+ # definition, but doesn't override any memory requirement specified
1161
+ # in the `resourceRequirements` structure in the job definition. To
1162
+ # override memory requirements that are specified in the
1163
+ # `resourceRequirements` structure in the job definition,
1164
+ # `resourceRequirements` must be specified in the `SubmitJob` request,
1165
+ # with `type` set to `MEMORY` and `value` set to the new value. For
1166
+ # more information, see [Can't override job definition resource
1167
+ # requirements][1] in the *Batch User Guide*.
1168
+ #
1169
+ #
1170
+ #
1171
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html#override-resource-requirements
1170
1172
  # @return [Integer]
1171
1173
  #
1172
1174
  # @!attribute [rw] command
@@ -1359,24 +1361,16 @@ module Aws::Batch
1359
1361
  # @return [String]
1360
1362
  #
1361
1363
  # @!attribute [rw] vcpus
1362
- # The number of vCPUs reserved for the job. Each vCPU is equivalent to
1363
- # 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create
1364
- # a container][1] section of the [Docker Remote API][2] and the
1365
- # `--cpu-shares` option to [docker run][3]. The number of vCPUs must
1366
- # be specified but can be specified in several places. You must
1367
- # specify it at least once for each node.
1368
- #
1369
- # This parameter is supported on EC2 resources but isn't supported
1370
- # for jobs that run on Fargate resources. For these resources, use
1371
- # `resourceRequirement` instead. You can use this parameter or
1372
- # `resourceRequirements` structure but not both.
1364
+ # This parameter is deprecated, use `resourceRequirements` to specify
1365
+ # the vCPU requirements for the job definition. It's not supported
1366
+ # for jobs that run on Fargate resources. For jobs run on EC2
1367
+ # resources, it specifies the number of vCPUs reserved for the job.
1373
1368
  #
1374
- # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1375
- # resources and shouldn't be provided. For jobs that run on Fargate
1376
- # resources, you must specify the vCPU requirement for the job using
1377
- # `resourceRequirements`.
1378
- #
1379
- # </note>
1369
+ # Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to
1370
+ # `CpuShares` in the [Create a container][1] section of the [Docker
1371
+ # Remote API][2] and the `--cpu-shares` option to [docker run][3]. The
1372
+ # number of vCPUs must be specified but can be specified in several
1373
+ # places. You must specify it at least once for each node.
1380
1374
  #
1381
1375
  #
1382
1376
  #
@@ -1386,34 +1380,15 @@ module Aws::Batch
1386
1380
  # @return [Integer]
1387
1381
  #
1388
1382
  # @!attribute [rw] memory
1389
- # This parameter indicates the memory hard limit (in MiB) for a
1383
+ # This parameter is deprecated, use `resourceRequirements` to specify
1384
+ # the memory requirements for the job definition. It's not supported
1385
+ # for jobs that run on Fargate resources. For jobs run on EC2
1386
+ # resources, it specifies the memory hard limit (in MiB) for a
1390
1387
  # container. If your container attempts to exceed the specified
1391
1388
  # number, it's terminated. You must specify at least 4 MiB of memory
1392
1389
  # for a job using this parameter. The memory hard limit can be
1393
1390
  # specified in several places. It must be specified for each node at
1394
1391
  # least once.
1395
- #
1396
- # This parameter maps to `Memory` in the [Create a container][1]
1397
- # section of the [Docker Remote API][2] and the `--memory` option to
1398
- # [docker run][3].
1399
- #
1400
- # This parameter is supported on EC2 resources but isn't supported on
1401
- # Fargate resources. For Fargate resources, you should specify the
1402
- # memory requirement using `resourceRequirement`. You can also do this
1403
- # for EC2 resources.
1404
- #
1405
- # <note markdown="1"> If you're trying to maximize your resource utilization by providing
1406
- # your jobs as much memory as possible for a particular instance type,
1407
- # see [Memory Management][4] in the *Batch User Guide*.
1408
- #
1409
- # </note>
1410
- #
1411
- #
1412
- #
1413
- # [1]: https://docs.docker.com/engine/api/v1.23/#create-a-container
1414
- # [2]: https://docs.docker.com/engine/api/v1.23/
1415
- # [3]: https://docs.docker.com/engine/reference/run/
1416
- # [4]: https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html
1417
1392
  # @return [Integer]
1418
1393
  #
1419
1394
  # @!attribute [rw] command
@@ -1693,6 +1668,7 @@ module Aws::Batch
1693
1668
  # compute_environment_name: "String", # required
1694
1669
  # type: "MANAGED", # required, accepts MANAGED, UNMANAGED
1695
1670
  # state: "ENABLED", # accepts ENABLED, DISABLED
1671
+ # unmanagedv_cpus: 1,
1696
1672
  # compute_resources: {
1697
1673
  # type: "EC2", # required, accepts EC2, SPOT, FARGATE, FARGATE_SPOT
1698
1674
  # allocation_strategy: "BEST_FIT", # accepts BEST_FIT, BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED
@@ -1730,8 +1706,9 @@ module Aws::Batch
1730
1706
  # }
1731
1707
  #
1732
1708
  # @!attribute [rw] compute_environment_name
1733
- # The name for your compute environment. Up to 128 letters (uppercase
1734
- # and lowercase), numbers, hyphens, and underscores are allowed.
1709
+ # The name for your compute environment. It can be up to 128 letters
1710
+ # long. It can contain uppercase and lowercase letters, numbers,
1711
+ # hyphens (-), and underscores (\_).
1735
1712
  # @return [String]
1736
1713
  #
1737
1714
  # @!attribute [rw] type
@@ -1762,6 +1739,18 @@ module Aws::Batch
1762
1739
  # scale in to `minvCpus` value after instances become idle.
1763
1740
  # @return [String]
1764
1741
  #
1742
+ # @!attribute [rw] unmanagedv_cpus
1743
+ # The maximum number of vCPUs for an unmanaged compute environment.
1744
+ # This parameter is only used for fair share scheduling to reserve
1745
+ # vCPU capacity for new share identifiers. If this parameter isn't
1746
+ # provided for a fair share job queue, no vCPU capacity is reserved.
1747
+ #
1748
+ # <note markdown="1"> This parameter is only supported when the `type` parameter is set to
1749
+ # `UNMANAGED`/
1750
+ #
1751
+ # </note>
1752
+ # @return [Integer]
1753
+ #
1765
1754
  # @!attribute [rw] compute_resources
1766
1755
  # Details about the compute resources managed by the compute
1767
1756
  # environment. This parameter is required for managed compute
@@ -1831,6 +1820,7 @@ module Aws::Batch
1831
1820
  :compute_environment_name,
1832
1821
  :type,
1833
1822
  :state,
1823
+ :unmanagedv_cpus,
1834
1824
  :compute_resources,
1835
1825
  :service_role,
1836
1826
  :tags)
@@ -1839,8 +1829,9 @@ module Aws::Batch
1839
1829
  end
1840
1830
 
1841
1831
  # @!attribute [rw] compute_environment_name
1842
- # The name of the compute environment. Up to 128 letters (uppercase
1843
- # and lowercase), numbers, hyphens, and underscores are allowed.
1832
+ # The name of the compute environment. It can be up to 128 letters
1833
+ # long. It can contain uppercase and lowercase letters, numbers,
1834
+ # hyphens (-), and underscores (\_).
1844
1835
  # @return [String]
1845
1836
  #
1846
1837
  # @!attribute [rw] compute_environment_arn
@@ -1864,6 +1855,7 @@ module Aws::Batch
1864
1855
  # {
1865
1856
  # job_queue_name: "String", # required
1866
1857
  # state: "ENABLED", # accepts ENABLED, DISABLED
1858
+ # scheduling_policy_arn: "String",
1867
1859
  # priority: 1, # required
1868
1860
  # compute_environment_order: [ # required
1869
1861
  # {
@@ -1877,8 +1869,9 @@ module Aws::Batch
1877
1869
  # }
1878
1870
  #
1879
1871
  # @!attribute [rw] job_queue_name
1880
- # The name of the job queue. Up to 128 letters (uppercase and
1881
- # lowercase), numbers, and underscores are allowed.
1872
+ # The name of the job queue. It can be up to 128 letters long. It can
1873
+ # contain uppercase and lowercase letters, numbers, hyphens (-), and
1874
+ # underscores (\_).
1882
1875
  # @return [String]
1883
1876
  #
1884
1877
  # @!attribute [rw] state
@@ -1888,6 +1881,18 @@ module Aws::Batch
1888
1881
  # finish.
1889
1882
  # @return [String]
1890
1883
  #
1884
+ # @!attribute [rw] scheduling_policy_arn
1885
+ # The Amazon Resource Name (ARN) of the fair share scheduling policy.
1886
+ # If this parameter is specified, the job queue uses a fair share
1887
+ # scheduling policy. If this parameter isn't specified, the job queue
1888
+ # uses a first in, first out (FIFO) scheduling policy. After a job
1889
+ # queue is created, you can replace but can't remove the fair share
1890
+ # scheduling policy. The format is
1891
+ # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. An
1892
+ # example is
1893
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
1894
+ # @return [String]
1895
+ #
1891
1896
  # @!attribute [rw] priority
1892
1897
  # The priority of the job queue. Job queues with a higher priority (or
1893
1898
  # a higher integer value for the `priority` parameter) are evaluated
@@ -1934,6 +1939,7 @@ module Aws::Batch
1934
1939
  class CreateJobQueueRequest < Struct.new(
1935
1940
  :job_queue_name,
1936
1941
  :state,
1942
+ :scheduling_policy_arn,
1937
1943
  :priority,
1938
1944
  :compute_environment_order,
1939
1945
  :tags)
@@ -1958,6 +1964,82 @@ module Aws::Batch
1958
1964
  include Aws::Structure
1959
1965
  end
1960
1966
 
1967
+ # @note When making an API call, you may pass CreateSchedulingPolicyRequest
1968
+ # data as a hash:
1969
+ #
1970
+ # {
1971
+ # name: "String", # required
1972
+ # fairshare_policy: {
1973
+ # share_decay_seconds: 1,
1974
+ # compute_reservation: 1,
1975
+ # share_distribution: [
1976
+ # {
1977
+ # share_identifier: "String", # required
1978
+ # weight_factor: 1.0,
1979
+ # },
1980
+ # ],
1981
+ # },
1982
+ # tags: {
1983
+ # "TagKey" => "TagValue",
1984
+ # },
1985
+ # }
1986
+ #
1987
+ # @!attribute [rw] name
1988
+ # The name of the scheduling policy. It can be up to 128 letters long.
1989
+ # It can contain uppercase and lowercase letters, numbers, hyphens
1990
+ # (-), and underscores (\_).
1991
+ # @return [String]
1992
+ #
1993
+ # @!attribute [rw] fairshare_policy
1994
+ # The fair share policy of the scheduling policy.
1995
+ # @return [Types::FairsharePolicy]
1996
+ #
1997
+ # @!attribute [rw] tags
1998
+ # The tags that you apply to the scheduling policy to help you
1999
+ # categorize and organize your resources. Each tag consists of a key
2000
+ # and an optional value. For more information, see [Tagging Amazon Web
2001
+ # Services Resources][1] in *Amazon Web Services General Reference*.
2002
+ #
2003
+ # These tags can be updated or removed using the [TagResource][2] and
2004
+ # [UntagResource][3] API operations.
2005
+ #
2006
+ #
2007
+ #
2008
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
2009
+ # [2]: https://docs.aws.amazon.com/batch/latest/APIReference/API_TagResource.html
2010
+ # [3]: https://docs.aws.amazon.com/batch/latest/APIReference/API_UntagResource.html
2011
+ # @return [Hash<String,String>]
2012
+ #
2013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateSchedulingPolicyRequest AWS API Documentation
2014
+ #
2015
+ class CreateSchedulingPolicyRequest < Struct.new(
2016
+ :name,
2017
+ :fairshare_policy,
2018
+ :tags)
2019
+ SENSITIVE = []
2020
+ include Aws::Structure
2021
+ end
2022
+
2023
+ # @!attribute [rw] name
2024
+ # The name of the scheduling policy.
2025
+ # @return [String]
2026
+ #
2027
+ # @!attribute [rw] arn
2028
+ # The Amazon Resource Name (ARN) of the scheduling policy. The format
2029
+ # is `aws:Partition:batch:Region:Account:scheduling-policy/Name `. For
2030
+ # example,
2031
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
2032
+ # @return [String]
2033
+ #
2034
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/CreateSchedulingPolicyResponse AWS API Documentation
2035
+ #
2036
+ class CreateSchedulingPolicyResponse < Struct.new(
2037
+ :name,
2038
+ :arn)
2039
+ SENSITIVE = []
2040
+ include Aws::Structure
2041
+ end
2042
+
1961
2043
  # Contains the parameters for `DeleteComputeEnvironment`.
1962
2044
  #
1963
2045
  # @note When making an API call, you may pass DeleteComputeEnvironmentRequest
@@ -2010,6 +2092,29 @@ module Aws::Batch
2010
2092
  #
2011
2093
  class DeleteJobQueueResponse < Aws::EmptyStructure; end
2012
2094
 
2095
+ # @note When making an API call, you may pass DeleteSchedulingPolicyRequest
2096
+ # data as a hash:
2097
+ #
2098
+ # {
2099
+ # arn: "String", # required
2100
+ # }
2101
+ #
2102
+ # @!attribute [rw] arn
2103
+ # The Amazon Resource Name (ARN) of the scheduling policy to delete.
2104
+ # @return [String]
2105
+ #
2106
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteSchedulingPolicyRequest AWS API Documentation
2107
+ #
2108
+ class DeleteSchedulingPolicyRequest < Struct.new(
2109
+ :arn)
2110
+ SENSITIVE = []
2111
+ include Aws::Structure
2112
+ end
2113
+
2114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DeleteSchedulingPolicyResponse AWS API Documentation
2115
+ #
2116
+ class DeleteSchedulingPolicyResponse < Aws::EmptyStructure; end
2117
+
2013
2118
  # @note When making an API call, you may pass DeregisterJobDefinitionRequest
2014
2119
  # data as a hash:
2015
2120
  #
@@ -2095,9 +2200,9 @@ module Aws::Batch
2095
2200
  # @!attribute [rw] next_token
2096
2201
  # The `nextToken` value to include in a future
2097
2202
  # `DescribeComputeEnvironments` request. When the results of a
2098
- # `DescribeJobDefinitions` request exceed `maxResults`, this value can
2099
- # be used to retrieve the next page of results. This value is `null`
2100
- # when there are no more results to return.
2203
+ # `DescribeComputeEnvironments` request exceed `maxResults`, this
2204
+ # value can be used to retrieve the next page of results. This value
2205
+ # is `null` when there are no more results to return.
2101
2206
  # @return [String]
2102
2207
  #
2103
2208
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeComputeEnvironmentsResponse AWS API Documentation
@@ -2124,7 +2229,7 @@ module Aws::Batch
2124
2229
  #
2125
2230
  # @!attribute [rw] job_definitions
2126
2231
  # A list of up to 100 job definitions. Each entry in the list can
2127
- # either be an ARN of the form
2232
+ # either be an ARN in the format
2128
2233
  # `arn:aws:batch:$\{Region\}:$\{Account\}:job-definition/$\{JobDefinitionName\}:$\{Revision\}`
2129
2234
  # or a short version using the form
2130
2235
  # `$\{JobDefinitionName\}:$\{Revision\}`.
@@ -2304,6 +2409,38 @@ module Aws::Batch
2304
2409
  include Aws::Structure
2305
2410
  end
2306
2411
 
2412
+ # @note When making an API call, you may pass DescribeSchedulingPoliciesRequest
2413
+ # data as a hash:
2414
+ #
2415
+ # {
2416
+ # arns: ["String"], # required
2417
+ # }
2418
+ #
2419
+ # @!attribute [rw] arns
2420
+ # A list of up to 100 scheduling policy Amazon Resource Name (ARN)
2421
+ # entries.
2422
+ # @return [Array<String>]
2423
+ #
2424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeSchedulingPoliciesRequest AWS API Documentation
2425
+ #
2426
+ class DescribeSchedulingPoliciesRequest < Struct.new(
2427
+ :arns)
2428
+ SENSITIVE = []
2429
+ include Aws::Structure
2430
+ end
2431
+
2432
+ # @!attribute [rw] scheduling_policies
2433
+ # The list of scheduling policies.
2434
+ # @return [Array<Types::SchedulingPolicyDetail>]
2435
+ #
2436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/DescribeSchedulingPoliciesResponse AWS API Documentation
2437
+ #
2438
+ class DescribeSchedulingPoliciesResponse < Struct.new(
2439
+ :scheduling_policies)
2440
+ SENSITIVE = []
2441
+ include Aws::Structure
2442
+ end
2443
+
2307
2444
  # An object representing a container instance host device.
2308
2445
  #
2309
2446
  # <note markdown="1"> This object isn't applicable to jobs that are running on Fargate
@@ -2478,9 +2615,7 @@ module Aws::Batch
2478
2615
 
2479
2616
  # Provides information used to select Amazon Machine Images (AMIs) for
2480
2617
  # instances in the compute environment. If `Ec2Configuration` isn't
2481
- # specified, the default is currently `ECS_AL1` ([Amazon Linux][1]) for
2482
- # non-GPU, non AWSGraviton instances. Starting on March 31, 2021, this
2483
- # default will be changing to `ECS_AL2` ([Amazon Linux 2][2]).
2618
+ # specified, the default is `ECS_AL2` ([Amazon Linux 2][1]).
2484
2619
  #
2485
2620
  # <note markdown="1"> This object isn't applicable to jobs that are running on Fargate
2486
2621
  # resources.
@@ -2489,8 +2624,7 @@ module Aws::Batch
2489
2624
  #
2490
2625
  #
2491
2626
  #
2492
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#alami
2493
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami
2627
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami
2494
2628
  #
2495
2629
  # @note When making an API call, you may pass Ec2Configuration
2496
2630
  # data as a hash:
@@ -2503,36 +2637,29 @@ module Aws::Batch
2503
2637
  # @!attribute [rw] image_type
2504
2638
  # The image type to match with the instance type to select an AMI. If
2505
2639
  # the `imageIdOverride` parameter isn't specified, then a recent
2506
- # [Amazon ECS-optimized AMI][1] (`ECS_AL1`) is used. Starting on March
2507
- # 31, 2021, this default will be changing to `ECS_AL2` ([Amazon Linux
2508
- # 2][2]).
2640
+ # [Amazon ECS-optimized Amazon Linux 2 AMI][1] (`ECS_AL2`) is used.
2509
2641
  #
2510
2642
  # ECS\_AL2
2511
2643
  #
2512
- # : [Amazon Linux 2][2]− Default for all Amazon Web Services
2513
- # Graviton-based instance families (for example, `C6g`, `M6g`,
2514
- # `R6g`, and `T4g`) and can be used for all non-GPU instance types.
2644
+ # : [Amazon Linux 2][1]− Default for all non-GPU instance families.
2515
2645
  #
2516
2646
  # ECS\_AL2\_NVIDIA
2517
2647
  #
2518
- # : [Amazon Linux 2 (GPU)][3]−Default for all GPU instance families
2648
+ # : [Amazon Linux 2 (GPU)][2]−Default for all GPU instance families
2519
2649
  # (for example `P4` and `G4`) and can be used for all non Amazon Web
2520
2650
  # Services Graviton-based instance types.
2521
2651
  #
2522
2652
  # ECS\_AL1
2523
2653
  #
2524
- # : [Amazon Linux][4]−Default for all non-GPU, non Amazon Web Services
2525
- # Graviton instance families. Amazon Linux is reaching the
2526
- # end-of-life of standard support. For more information, see [Amazon
2527
- # Linux AMI][5].
2654
+ # : [Amazon Linux][3]. Amazon Linux is reaching the end-of-life of
2655
+ # standard support. For more information, see [Amazon Linux AMI][4].
2528
2656
  #
2529
2657
  #
2530
2658
  #
2531
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html
2532
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami
2533
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami
2534
- # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#alami
2535
- # [5]: http://aws.amazon.com/amazon-linux-ami/
2659
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami
2660
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami
2661
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#alami
2662
+ # [4]: http://aws.amazon.com/amazon-linux-ami/
2536
2663
  # @return [String]
2537
2664
  #
2538
2665
  # @!attribute [rw] image_id_override
@@ -2570,6 +2697,8 @@ module Aws::Batch
2570
2697
  # (including spaces or tabs). It can optionally end with an asterisk
2571
2698
  # (*) so that only the start of the string needs to be an exact
2572
2699
  # match.
2700
+ #
2701
+ # The string can be between 1 and 512 characters in length.
2573
2702
  # @return [String]
2574
2703
  #
2575
2704
  # @!attribute [rw] on_reason
@@ -2579,6 +2708,8 @@ module Aws::Batch
2579
2708
  # (including spaces and tabs). It can optionally end with an asterisk
2580
2709
  # (*) so that only the start of the string needs to be an exact
2581
2710
  # match.
2711
+ #
2712
+ # The string can be between 1 and 512 characters in length.
2582
2713
  # @return [String]
2583
2714
  #
2584
2715
  # @!attribute [rw] on_exit_code
@@ -2587,6 +2718,8 @@ module Aws::Batch
2587
2718
  # characters in length. It can contain only numbers, and can
2588
2719
  # optionally end with an asterisk (*) so that only the start of the
2589
2720
  # string needs to be an exact match.
2721
+ #
2722
+ # The string can be between 1 and 512 characters in length.
2590
2723
  # @return [String]
2591
2724
  #
2592
2725
  # @!attribute [rw] action
@@ -2606,6 +2739,66 @@ module Aws::Batch
2606
2739
  include Aws::Structure
2607
2740
  end
2608
2741
 
2742
+ # The fair share policy for a scheduling policy.
2743
+ #
2744
+ # @note When making an API call, you may pass FairsharePolicy
2745
+ # data as a hash:
2746
+ #
2747
+ # {
2748
+ # share_decay_seconds: 1,
2749
+ # compute_reservation: 1,
2750
+ # share_distribution: [
2751
+ # {
2752
+ # share_identifier: "String", # required
2753
+ # weight_factor: 1.0,
2754
+ # },
2755
+ # ],
2756
+ # }
2757
+ #
2758
+ # @!attribute [rw] share_decay_seconds
2759
+ # The time period to use to calculate a fair share percentage for each
2760
+ # fair share identifier in use, in seconds. A value of zero (0)
2761
+ # indicates that only current usage should be measured. The decay
2762
+ # allows for more recently run jobs to have more weight than jobs that
2763
+ # ran earlier. The maximum supported value is 604800 (1 week).
2764
+ # @return [Integer]
2765
+ #
2766
+ # @!attribute [rw] compute_reservation
2767
+ # A value used to reserve some of the available maximum vCPU for fair
2768
+ # share identifiers that have not yet been used.
2769
+ #
2770
+ # The reserved ratio is `(computeReservation/100)^ActiveFairShares `
2771
+ # where ` ActiveFairShares ` is the number of active fair share
2772
+ # identifiers.
2773
+ #
2774
+ # For example, a `computeReservation` value of 50 indicates that Batch
2775
+ # should reserve 50% of the maximum available vCPU if there is only
2776
+ # one fair share identifier, 25% if there are two fair share
2777
+ # identifiers, and 12.5% if there are three fair share identifiers. A
2778
+ # `computeReservation` value of 25 indicates that Batch should reserve
2779
+ # 25% of the maximum available vCPU if there is only one fair share
2780
+ # identifier, 6.25% if there are two fair share identifiers, and 1.56%
2781
+ # if there are three fair share identifiers.
2782
+ #
2783
+ # The minimum value is 0 and the maximum value is 99.
2784
+ # @return [Integer]
2785
+ #
2786
+ # @!attribute [rw] share_distribution
2787
+ # An array of `SharedIdentifier` objects that contain the weights for
2788
+ # the fair share identifiers for the fair share policy. Fair share
2789
+ # identifiers that aren't included have a default weight of `1.0`.
2790
+ # @return [Array<Types::ShareAttributes>]
2791
+ #
2792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/FairsharePolicy AWS API Documentation
2793
+ #
2794
+ class FairsharePolicy < Struct.new(
2795
+ :share_decay_seconds,
2796
+ :compute_reservation,
2797
+ :share_distribution)
2798
+ SENSITIVE = []
2799
+ include Aws::Structure
2800
+ end
2801
+
2609
2802
  # The platform configuration for jobs that are running on Fargate
2610
2803
  # resources. Jobs that run on EC2 resources must not specify this
2611
2804
  # parameter.
@@ -2695,16 +2888,24 @@ module Aws::Batch
2695
2888
  # @return [String]
2696
2889
  #
2697
2890
  # @!attribute [rw] type
2698
- # The type of job definition. If the job is run on Fargate resources,
2699
- # then `multinode` isn't supported. For more information about
2700
- # multi-node parallel jobs, see [Creating a multi-node parallel job
2701
- # definition][1] in the *Batch User Guide*.
2891
+ # The type of job definition, either `container` or `multinode`. If
2892
+ # the job is run on Fargate resources, then `multinode` isn't
2893
+ # supported. For more information about multi-node parallel jobs, see
2894
+ # [Creating a multi-node parallel job definition][1] in the *Batch
2895
+ # User Guide*.
2702
2896
  #
2703
2897
  #
2704
2898
  #
2705
2899
  # [1]: https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html
2706
2900
  # @return [String]
2707
2901
  #
2902
+ # @!attribute [rw] scheduling_priority
2903
+ # The scheduling priority of the job definition. This only affects
2904
+ # jobs in job queues with a fair share policy. Jobs with a higher
2905
+ # scheduling priority are scheduled before jobs with a lower
2906
+ # scheduling priority.
2907
+ # @return [Integer]
2908
+ #
2708
2909
  # @!attribute [rw] parameters
2709
2910
  # Default parameters or parameter substitution placeholders that are
2710
2911
  # set in the job definition. Parameters are specified as a key-value
@@ -2771,6 +2972,7 @@ module Aws::Batch
2771
2972
  :revision,
2772
2973
  :status,
2773
2974
  :type,
2975
+ :scheduling_priority,
2774
2976
  :parameters,
2775
2977
  :retry_strategy,
2776
2978
  :container_properties,
@@ -2843,6 +3045,17 @@ module Aws::Batch
2843
3045
  # [1]: https://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html#job_stuck_in_runnable
2844
3046
  # @return [String]
2845
3047
  #
3048
+ # @!attribute [rw] share_identifier
3049
+ # The share identifier for the job.
3050
+ # @return [String]
3051
+ #
3052
+ # @!attribute [rw] scheduling_priority
3053
+ # The scheduling policy of the job definition. This only affects jobs
3054
+ # in job queues with a fair share policy. Jobs with a higher
3055
+ # scheduling priority are scheduled before jobs with a lower
3056
+ # scheduling priority.
3057
+ # @return [Integer]
3058
+ #
2846
3059
  # @!attribute [rw] attempts
2847
3060
  # A list of job attempts associated with this job.
2848
3061
  # @return [Array<Types::AttemptDetail>]
@@ -2947,6 +3160,8 @@ module Aws::Batch
2947
3160
  :job_id,
2948
3161
  :job_queue,
2949
3162
  :status,
3163
+ :share_identifier,
3164
+ :scheduling_priority,
2950
3165
  :attempts,
2951
3166
  :status_reason,
2952
3167
  :created_at,
@@ -2985,6 +3200,13 @@ module Aws::Batch
2985
3200
  # but jobs already in the queue can finish.
2986
3201
  # @return [String]
2987
3202
  #
3203
+ # @!attribute [rw] scheduling_policy_arn
3204
+ # The Amazon Resource Name (ARN) of the scheduling policy. The format
3205
+ # is `aws:Partition:batch:Region:Account:scheduling-policy/Name `. For
3206
+ # example,
3207
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
3208
+ # @return [String]
3209
+ #
2988
3210
  # @!attribute [rw] status
2989
3211
  # The status of the job queue (for example, `CREATING` or `VALID`).
2990
3212
  # @return [String]
@@ -3027,6 +3249,7 @@ module Aws::Batch
3027
3249
  :job_queue_name,
3028
3250
  :job_queue_arn,
3029
3251
  :state,
3252
+ :scheduling_policy_arn,
3030
3253
  :status,
3031
3254
  :status_reason,
3032
3255
  :priority,
@@ -3051,11 +3274,11 @@ module Aws::Batch
3051
3274
  # @return [String]
3052
3275
  #
3053
3276
  # @!attribute [rw] created_at
3054
- # The Unix timestamp for when the job was created. For non-array jobs
3055
- # and parent array jobs, this is when the job entered the `SUBMITTED`
3056
- # state (at the time SubmitJob was called). For array child jobs, this
3057
- # is when the child job was spawned by its parent and entered the
3058
- # `PENDING` state.
3277
+ # The Unix timestamp (in milliseconds) for when the job was created.
3278
+ # For non-array jobs and parent array jobs, this is when the job
3279
+ # entered the `SUBMITTED` state (at the time SubmitJob was called).
3280
+ # For array child jobs, this is when the child job was spawned by its
3281
+ # parent and entered the `PENDING` state.
3059
3282
  # @return [Integer]
3060
3283
  #
3061
3284
  # @!attribute [rw] status
@@ -3538,15 +3761,15 @@ module Aws::Batch
3538
3761
  #
3539
3762
  # : The value for the filter is the time that's before the job was
3540
3763
  # created. This corresponds to the `createdAt` value. The value is a
3541
- # string representation of the number of seconds since 00:00:00 UTC
3542
- # (midnight) on January 1, 1970.
3764
+ # string representation of the number of milliseconds since 00:00:00
3765
+ # UTC (midnight) on January 1, 1970.
3543
3766
  #
3544
3767
  # AFTER\_CREATED\_AT
3545
3768
  #
3546
3769
  # : The value for the filter is the time that's after the job was
3547
3770
  # created. This corresponds to the `createdAt` value. The value is a
3548
- # string representation of the number of seconds since 00:00:00 UTC
3549
- # (midnight) on January 1, 1970.
3771
+ # string representation of the number of milliseconds since 00:00:00
3772
+ # UTC (midnight) on January 1, 1970.
3550
3773
  # @return [Array<Types::KeyValuesPair>]
3551
3774
  #
3552
3775
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListJobsRequest AWS API Documentation
@@ -3583,6 +3806,71 @@ module Aws::Batch
3583
3806
  include Aws::Structure
3584
3807
  end
3585
3808
 
3809
+ # @note When making an API call, you may pass ListSchedulingPoliciesRequest
3810
+ # data as a hash:
3811
+ #
3812
+ # {
3813
+ # max_results: 1,
3814
+ # next_token: "String",
3815
+ # }
3816
+ #
3817
+ # @!attribute [rw] max_results
3818
+ # The maximum number of results that's returned by
3819
+ # `ListSchedulingPolicies` in paginated output. When this parameter is
3820
+ # used, `ListSchedulingPolicies` only returns `maxResults` results in
3821
+ # a single page and a `nextToken` response element. You can see the
3822
+ # remaining results of the initial request by sending another
3823
+ # `ListSchedulingPolicies` request with the returned `nextToken`
3824
+ # value. This value can be between 1 and 100. If this parameter isn't
3825
+ # used, `ListSchedulingPolicies` returns up to 100 results and a
3826
+ # `nextToken` value if applicable.
3827
+ # @return [Integer]
3828
+ #
3829
+ # @!attribute [rw] next_token
3830
+ # The `nextToken` value that's returned from a previous paginated
3831
+ # `ListSchedulingPolicies` request where `maxResults` was used and the
3832
+ # results exceeded the value of that parameter. Pagination continues
3833
+ # from the end of the previous results that returned the `nextToken`
3834
+ # value. This value is `null` when there are no more results to
3835
+ # return.
3836
+ #
3837
+ # <note markdown="1"> This token should be treated as an opaque identifier that's only
3838
+ # used to retrieve the next items in a list and not for other
3839
+ # programmatic purposes.
3840
+ #
3841
+ # </note>
3842
+ # @return [String]
3843
+ #
3844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListSchedulingPoliciesRequest AWS API Documentation
3845
+ #
3846
+ class ListSchedulingPoliciesRequest < Struct.new(
3847
+ :max_results,
3848
+ :next_token)
3849
+ SENSITIVE = []
3850
+ include Aws::Structure
3851
+ end
3852
+
3853
+ # @!attribute [rw] scheduling_policies
3854
+ # A list of scheduling policies that match the request.
3855
+ # @return [Array<Types::SchedulingPolicyListingDetail>]
3856
+ #
3857
+ # @!attribute [rw] next_token
3858
+ # The `nextToken` value to include in a future
3859
+ # `ListSchedulingPolicies` request. When the results of a
3860
+ # `ListSchedulingPolicies` request exceed `maxResults`, this value can
3861
+ # be used to retrieve the next page of results. This value is `null`
3862
+ # when there are no more results to return.
3863
+ # @return [String]
3864
+ #
3865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListSchedulingPoliciesResponse AWS API Documentation
3866
+ #
3867
+ class ListSchedulingPoliciesResponse < Struct.new(
3868
+ :scheduling_policies,
3869
+ :next_token)
3870
+ SENSITIVE = []
3871
+ include Aws::Structure
3872
+ end
3873
+
3586
3874
  # @note When making an API call, you may pass ListTagsForResourceRequest
3587
3875
  # data as a hash:
3588
3876
  #
@@ -3593,8 +3881,9 @@ module Aws::Batch
3593
3881
  # @!attribute [rw] resource_arn
3594
3882
  # The Amazon Resource Name (ARN) that identifies the resource that
3595
3883
  # tags are listed for. Batch resources that support tags are compute
3596
- # environments, jobs, job definitions, and job queues. ARNs for child
3597
- # jobs of array and multi-node parallel (MNP) jobs are not supported.
3884
+ # environments, jobs, job definitions, job queues, and scheduling
3885
+ # policies. ARNs for child jobs of array and multi-node parallel (MNP)
3886
+ # jobs are not supported.
3598
3887
  # @return [String]
3599
3888
  #
3600
3889
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ListTagsForResourceRequest AWS API Documentation
@@ -4299,6 +4588,7 @@ module Aws::Batch
4299
4588
  # parameters: {
4300
4589
  # "String" => "String",
4301
4590
  # },
4591
+ # scheduling_priority: 1,
4302
4592
  # container_properties: {
4303
4593
  # image: "String",
4304
4594
  # vcpus: 1,
@@ -4530,9 +4820,9 @@ module Aws::Batch
4530
4820
  # }
4531
4821
  #
4532
4822
  # @!attribute [rw] job_definition_name
4533
- # The name of the job definition to register. Up to 128 letters
4534
- # (uppercase and lowercase), numbers, hyphens, and underscores are
4535
- # allowed.
4823
+ # The name of the job definition to register. It can be up to 128
4824
+ # letters long. It can contain uppercase and lowercase letters,
4825
+ # numbers, hyphens (-), and underscores (\_).
4536
4826
  # @return [String]
4537
4827
  #
4538
4828
  # @!attribute [rw] type
@@ -4557,6 +4847,16 @@ module Aws::Batch
4557
4847
  # parameter defaults from the job definition.
4558
4848
  # @return [Hash<String,String>]
4559
4849
  #
4850
+ # @!attribute [rw] scheduling_priority
4851
+ # The scheduling priority for jobs that are submitted with this job
4852
+ # definition. This will only affect jobs in job queues with a fair
4853
+ # share policy. Jobs with a higher scheduling priority will be
4854
+ # scheduled before jobs with a lower scheduling priority.
4855
+ #
4856
+ # The minimum supported value is 0 and the maximum supported value is
4857
+ # 9999.
4858
+ # @return [Integer]
4859
+ #
4560
4860
  # @!attribute [rw] container_properties
4561
4861
  # An object with various properties specific to single-node
4562
4862
  # container-based jobs. If the job definition's `type` parameter is
@@ -4641,6 +4941,7 @@ module Aws::Batch
4641
4941
  :job_definition_name,
4642
4942
  :type,
4643
4943
  :parameters,
4944
+ :scheduling_priority,
4644
4945
  :container_properties,
4645
4946
  :node_properties,
4646
4947
  :retry_strategy,
@@ -4775,7 +5076,7 @@ module Aws::Batch
4775
5076
  #
4776
5077
  # For jobs that are running on Fargate resources, then `value` must
4777
5078
  # match one of the supported values and the `MEMORY` values must be
4778
- # one of the values supported for that VCPU value. The supported
5079
+ # one of the values supported for that `VCPU` value. The supported
4779
5080
  # values are 0.25, 0.5, 1, 2, and 4
4780
5081
  #
4781
5082
  # value = 0.25
@@ -4867,6 +5168,60 @@ module Aws::Batch
4867
5168
  include Aws::Structure
4868
5169
  end
4869
5170
 
5171
+ # An object that represents a scheduling policy.
5172
+ #
5173
+ # @!attribute [rw] name
5174
+ # The name of the scheduling policy.
5175
+ # @return [String]
5176
+ #
5177
+ # @!attribute [rw] arn
5178
+ # The Amazon Resource Name (ARN) of the scheduling policy. An example
5179
+ # is
5180
+ # `arn:aws:batch:us-east-1:123456789012:scheduling-policy/HighPriority
5181
+ # `.
5182
+ # @return [String]
5183
+ #
5184
+ # @!attribute [rw] fairshare_policy
5185
+ # The fair share policy for the scheduling policy.
5186
+ # @return [Types::FairsharePolicy]
5187
+ #
5188
+ # @!attribute [rw] tags
5189
+ # The tags that you apply to the scheduling policy to categorize and
5190
+ # organize your resources. Each tag consists of a key and an optional
5191
+ # value. For more information, see [Tagging Amazon Web Services
5192
+ # Resources][1] in *Amazon Web Services General Reference*.
5193
+ #
5194
+ #
5195
+ #
5196
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
5197
+ # @return [Hash<String,String>]
5198
+ #
5199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/SchedulingPolicyDetail AWS API Documentation
5200
+ #
5201
+ class SchedulingPolicyDetail < Struct.new(
5202
+ :name,
5203
+ :arn,
5204
+ :fairshare_policy,
5205
+ :tags)
5206
+ SENSITIVE = []
5207
+ include Aws::Structure
5208
+ end
5209
+
5210
+ # An object that contains the details of a scheduling policy that's
5211
+ # returned in a `ListSchedulingPolicy` action.
5212
+ #
5213
+ # @!attribute [rw] arn
5214
+ # Amazon Resource Name (ARN) of the scheduling policy.
5215
+ # @return [String]
5216
+ #
5217
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/SchedulingPolicyListingDetail AWS API Documentation
5218
+ #
5219
+ class SchedulingPolicyListingDetail < Struct.new(
5220
+ :arn)
5221
+ SENSITIVE = []
5222
+ include Aws::Structure
5223
+ end
5224
+
4870
5225
  # An object representing the secret to expose to your container. Secrets
4871
5226
  # can be exposed to a container in the following ways:
4872
5227
  #
@@ -4931,6 +5286,54 @@ module Aws::Batch
4931
5286
  include Aws::Structure
4932
5287
  end
4933
5288
 
5289
+ # Specifies the weights for the fair share identifiers for the fair
5290
+ # share policy. Fair share identifiers that aren't included have a
5291
+ # default weight of `1.0`.
5292
+ #
5293
+ # @note When making an API call, you may pass ShareAttributes
5294
+ # data as a hash:
5295
+ #
5296
+ # {
5297
+ # share_identifier: "String", # required
5298
+ # weight_factor: 1.0,
5299
+ # }
5300
+ #
5301
+ # @!attribute [rw] share_identifier
5302
+ # A fair share identifier or fair share identifier prefix. If the
5303
+ # string ends with an asterisk (*), this entry specifies the weight
5304
+ # factor to use for fair share identifiers that start with that
5305
+ # prefix. The list of fair share identifiers in a fair share policy
5306
+ # cannot overlap. For example, you can't have one that specifies a
5307
+ # `shareIdentifier` of `UserA*` and another that specifies a
5308
+ # `shareIdentifier` of `UserA-1`.
5309
+ #
5310
+ # There can be no more than 500 fair share identifiers active in a job
5311
+ # queue.
5312
+ #
5313
+ # The string is limited to 255 alphanumeric characters, optionally
5314
+ # followed by an asterisk (*).
5315
+ # @return [String]
5316
+ #
5317
+ # @!attribute [rw] weight_factor
5318
+ # The weight factor for the fair share identifier. The default value
5319
+ # is 1.0. A lower value has a higher priority for compute resources.
5320
+ # For example, jobs that use a share identifier with a weight factor
5321
+ # of 0.125 (1/8) get 8 times the compute resources of jobs that use a
5322
+ # share identifier with a weight factor of 1.
5323
+ #
5324
+ # The smallest supported value is 0.0001, and the largest supported
5325
+ # value is 999.9999.
5326
+ # @return [Float]
5327
+ #
5328
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ShareAttributes AWS API Documentation
5329
+ #
5330
+ class ShareAttributes < Struct.new(
5331
+ :share_identifier,
5332
+ :weight_factor)
5333
+ SENSITIVE = []
5334
+ include Aws::Structure
5335
+ end
5336
+
4934
5337
  # Contains the parameters for `SubmitJob`.
4935
5338
  #
4936
5339
  # @note When making an API call, you may pass SubmitJobRequest
@@ -4939,6 +5342,8 @@ module Aws::Batch
4939
5342
  # {
4940
5343
  # job_name: "String", # required
4941
5344
  # job_queue: "String", # required
5345
+ # share_identifier: "String",
5346
+ # scheduling_priority_override: 1,
4942
5347
  # array_properties: {
4943
5348
  # size: 1,
4944
5349
  # },
@@ -5017,9 +5422,9 @@ module Aws::Batch
5017
5422
  # }
5018
5423
  #
5019
5424
  # @!attribute [rw] job_name
5020
- # The name of the job. The first character must be alphanumeric, and
5021
- # up to 128 letters (uppercase and lowercase), numbers, hyphens, and
5022
- # underscores are allowed.
5425
+ # The name of the job. It can be up to 128 letters long. The first
5426
+ # character must be alphanumeric, can contain uppercase and lowercase
5427
+ # letters, numbers, hyphens (-), and underscores (\_).
5023
5428
  # @return [String]
5024
5429
  #
5025
5430
  # @!attribute [rw] job_queue
@@ -5027,6 +5432,21 @@ module Aws::Batch
5027
5432
  # name or the Amazon Resource Name (ARN) of the queue.
5028
5433
  # @return [String]
5029
5434
  #
5435
+ # @!attribute [rw] share_identifier
5436
+ # The share identifier for the job.
5437
+ # @return [String]
5438
+ #
5439
+ # @!attribute [rw] scheduling_priority_override
5440
+ # The scheduling priority for the job. This will only affect jobs in
5441
+ # job queues with a fair share policy. Jobs with a higher scheduling
5442
+ # priority will be scheduled before jobs with a lower scheduling
5443
+ # priority. This will override any scheduling priority in the job
5444
+ # definition.
5445
+ #
5446
+ # The minimum supported value is 0 and the maximum supported value is
5447
+ # 9999.
5448
+ # @return [Integer]
5449
+ #
5030
5450
  # @!attribute [rw] array_properties
5031
5451
  # The array properties for the submitted job, such as the size of the
5032
5452
  # array. The array size can be between 2 and 10,000. If you specify
@@ -5132,6 +5552,8 @@ module Aws::Batch
5132
5552
  class SubmitJobRequest < Struct.new(
5133
5553
  :job_name,
5134
5554
  :job_queue,
5555
+ :share_identifier,
5556
+ :scheduling_priority_override,
5135
5557
  :array_properties,
5136
5558
  :depends_on,
5137
5559
  :job_definition,
@@ -5181,8 +5603,9 @@ module Aws::Batch
5181
5603
  # @!attribute [rw] resource_arn
5182
5604
  # The Amazon Resource Name (ARN) of the resource that tags are added
5183
5605
  # to. Batch resources that support tags are compute environments,
5184
- # jobs, job definitions, and job queues. ARNs for child jobs of array
5185
- # and multi-node parallel (MNP) jobs are not supported.
5606
+ # jobs, job definitions, job queues, and scheduling policies. ARNs for
5607
+ # child jobs of array and multi-node parallel (MNP) jobs are not
5608
+ # supported.
5186
5609
  # @return [String]
5187
5610
  #
5188
5611
  # @!attribute [rw] tags
@@ -5342,8 +5765,9 @@ module Aws::Batch
5342
5765
  # @!attribute [rw] resource_arn
5343
5766
  # The Amazon Resource Name (ARN) of the resource from which to delete
5344
5767
  # tags. Batch resources that support tags are compute environments,
5345
- # jobs, job definitions, and job queues. ARNs for child jobs of array
5346
- # and multi-node parallel (MNP) jobs are not supported.
5768
+ # jobs, job definitions, job queues, and scheduling policies. ARNs for
5769
+ # child jobs of array and multi-node parallel (MNP) jobs are not
5770
+ # supported.
5347
5771
  # @return [String]
5348
5772
  #
5349
5773
  # @!attribute [rw] tag_keys
@@ -5371,6 +5795,7 @@ module Aws::Batch
5371
5795
  # {
5372
5796
  # compute_environment: "String", # required
5373
5797
  # state: "ENABLED", # accepts ENABLED, DISABLED
5798
+ # unmanagedv_cpus: 1,
5374
5799
  # compute_resources: {
5375
5800
  # minv_cpus: 1,
5376
5801
  # maxv_cpus: 1,
@@ -5404,6 +5829,15 @@ module Aws::Batch
5404
5829
  # scale in to `minvCpus` value after instances become idle.
5405
5830
  # @return [String]
5406
5831
  #
5832
+ # @!attribute [rw] unmanagedv_cpus
5833
+ # The maximum number of vCPUs expected to be used for an unmanaged
5834
+ # compute environment. This parameter should not be specified for a
5835
+ # managed compute environment. This parameter is only used for fair
5836
+ # share scheduling to reserve vCPU capacity for new share identifiers.
5837
+ # If this parameter is not provided for a fair share job queue, no
5838
+ # vCPU capacity will be reserved.
5839
+ # @return [Integer]
5840
+ #
5407
5841
  # @!attribute [rw] compute_resources
5408
5842
  # Details of the compute resources managed by the compute environment.
5409
5843
  # Required for a managed compute environment. For more information,
@@ -5448,6 +5882,7 @@ module Aws::Batch
5448
5882
  class UpdateComputeEnvironmentRequest < Struct.new(
5449
5883
  :compute_environment,
5450
5884
  :state,
5885
+ :unmanagedv_cpus,
5451
5886
  :compute_resources,
5452
5887
  :service_role)
5453
5888
  SENSITIVE = []
@@ -5455,8 +5890,9 @@ module Aws::Batch
5455
5890
  end
5456
5891
 
5457
5892
  # @!attribute [rw] compute_environment_name
5458
- # The name of the compute environment. Up to 128 letters (uppercase
5459
- # and lowercase), numbers, hyphens, and underscores are allowed.
5893
+ # The name of the compute environment. It can be up to 128 letters
5894
+ # long. It can contain uppercase and lowercase letters, numbers,
5895
+ # hyphens (-), and underscores (\_).
5460
5896
  # @return [String]
5461
5897
  #
5462
5898
  # @!attribute [rw] compute_environment_arn
@@ -5480,6 +5916,7 @@ module Aws::Batch
5480
5916
  # {
5481
5917
  # job_queue: "String", # required
5482
5918
  # state: "ENABLED", # accepts ENABLED, DISABLED
5919
+ # scheduling_policy_arn: "String",
5483
5920
  # priority: 1,
5484
5921
  # compute_environment_order: [
5485
5922
  # {
@@ -5500,6 +5937,15 @@ module Aws::Batch
5500
5937
  # in the queue can finish.
5501
5938
  # @return [String]
5502
5939
  #
5940
+ # @!attribute [rw] scheduling_policy_arn
5941
+ # Amazon Resource Name (ARN) of the fair share scheduling policy. Once
5942
+ # a job queue is created, the fair share scheduling policy can be
5943
+ # replaced but not removed. The format is
5944
+ # `aws:Partition:batch:Region:Account:scheduling-policy/Name `. For
5945
+ # example,
5946
+ # `aws:aws:batch:us-west-2:012345678910:scheduling-policy/MySchedulingPolicy`.
5947
+ # @return [String]
5948
+ #
5503
5949
  # @!attribute [rw] priority
5504
5950
  # The priority of the job queue. Job queues with a higher priority (or
5505
5951
  # a higher integer value for the `priority` parameter) are evaluated
@@ -5534,6 +5980,7 @@ module Aws::Batch
5534
5980
  class UpdateJobQueueRequest < Struct.new(
5535
5981
  :job_queue,
5536
5982
  :state,
5983
+ :scheduling_policy_arn,
5537
5984
  :priority,
5538
5985
  :compute_environment_order)
5539
5986
  SENSITIVE = []
@@ -5557,6 +6004,44 @@ module Aws::Batch
5557
6004
  include Aws::Structure
5558
6005
  end
5559
6006
 
6007
+ # @note When making an API call, you may pass UpdateSchedulingPolicyRequest
6008
+ # data as a hash:
6009
+ #
6010
+ # {
6011
+ # arn: "String", # required
6012
+ # fairshare_policy: {
6013
+ # share_decay_seconds: 1,
6014
+ # compute_reservation: 1,
6015
+ # share_distribution: [
6016
+ # {
6017
+ # share_identifier: "String", # required
6018
+ # weight_factor: 1.0,
6019
+ # },
6020
+ # ],
6021
+ # },
6022
+ # }
6023
+ #
6024
+ # @!attribute [rw] arn
6025
+ # The Amazon Resource Name (ARN) of the scheduling policy to update.
6026
+ # @return [String]
6027
+ #
6028
+ # @!attribute [rw] fairshare_policy
6029
+ # The fair share policy.
6030
+ # @return [Types::FairsharePolicy]
6031
+ #
6032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateSchedulingPolicyRequest AWS API Documentation
6033
+ #
6034
+ class UpdateSchedulingPolicyRequest < Struct.new(
6035
+ :arn,
6036
+ :fairshare_policy)
6037
+ SENSITIVE = []
6038
+ include Aws::Structure
6039
+ end
6040
+
6041
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateSchedulingPolicyResponse AWS API Documentation
6042
+ #
6043
+ class UpdateSchedulingPolicyResponse < Aws::EmptyStructure; end
6044
+
5560
6045
  # A data volume used in a job's container properties.
5561
6046
  #
5562
6047
  # @note When making an API call, you may pass Volume
@@ -5594,10 +6079,10 @@ module Aws::Batch
5594
6079
  # @return [Types::Host]
5595
6080
  #
5596
6081
  # @!attribute [rw] name
5597
- # The name of the volume. Up to 255 letters (uppercase and lowercase),
5598
- # numbers, hyphens, and underscores are allowed. This name is
5599
- # referenced in the `sourceVolume` parameter of container definition
5600
- # `mountPoints`.
6082
+ # The name of the volume. It can be up to 255 letters long. It can
6083
+ # contain uppercase and lowercase letters, numbers, hyphens (-), and
6084
+ # underscores (\_). This name is referenced in the `sourceVolume`
6085
+ # parameter of container definition `mountPoints`.
5601
6086
  # @return [String]
5602
6087
  #
5603
6088
  # @!attribute [rw] efs_volume_configuration