aws-sdk-batch 1.10.1 → 1.11.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.
@@ -105,6 +105,10 @@ module Aws::Batch
105
105
  # the `RUNNING` status.
106
106
  # @return [String]
107
107
  #
108
+ # @!attribute [rw] network_interfaces
109
+ # The network interfaces associated with the job attempt.
110
+ # @return [Array<Types::NetworkInterface>]
111
+ #
108
112
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/AttemptContainerDetail AWS API Documentation
109
113
  #
110
114
  class AttemptContainerDetail < Struct.new(
@@ -112,7 +116,8 @@ module Aws::Batch
112
116
  :task_arn,
113
117
  :exit_code,
114
118
  :reason,
115
- :log_stream_name)
119
+ :log_stream_name,
120
+ :network_interfaces)
116
121
  include Aws::Structure
117
122
  end
118
123
 
@@ -123,13 +128,13 @@ module Aws::Batch
123
128
  # @return [Types::AttemptContainerDetail]
124
129
  #
125
130
  # @!attribute [rw] started_at
126
- # The Unix time stamp (in seconds and milliseconds) for when the
131
+ # The Unix timestamp (in seconds and milliseconds) for when the
127
132
  # attempt was started (when the attempt transitioned from the
128
133
  # `STARTING` state to the `RUNNING` state).
129
134
  # @return [Integer]
130
135
  #
131
136
  # @!attribute [rw] stopped_at
132
- # The Unix time stamp (in seconds and milliseconds) for when the
137
+ # The Unix timestamp (in seconds and milliseconds) for when the
133
138
  # attempt was stopped (when the attempt transitioned from the
134
139
  # `RUNNING` state to a terminal state, such as `SUCCEEDED` or
135
140
  # `FAILED`).
@@ -207,14 +212,14 @@ module Aws::Batch
207
212
  # If the state is `ENABLED`, then the AWS Batch scheduler can attempt
208
213
  # to place jobs from an associated job queue on the compute resources
209
214
  # within the environment. If the compute environment is managed, then
210
- # it can scale its instances out or in automatically, based on job
215
+ # it can scale its instances out or in automatically, based on the job
211
216
  # queue demand.
212
217
  #
213
218
  # If the state is `DISABLED`, then the AWS Batch scheduler does not
214
219
  # attempt to place jobs within the environment. Jobs in a `STARTING`
215
220
  # or `RUNNING` state continue to progress normally. Managed compute
216
- # environments in the `DISABLED` state do not scale out; however, they
217
- # scale in to `minvCpus` value once instances become idle.
221
+ # environments in the `DISABLED` state do not scale out. However, they
222
+ # scale in to `minvCpus` value after instances become idle.
218
223
  # @return [String]
219
224
  #
220
225
  # @!attribute [rw] status
@@ -300,6 +305,7 @@ module Aws::Batch
300
305
  # tags: {
301
306
  # "String" => "String",
302
307
  # },
308
+ # placement_group: "String",
303
309
  # bid_percentage: 1,
304
310
  # spot_iam_fleet_role: "String",
305
311
  # launch_template: {
@@ -373,6 +379,21 @@ module Aws::Batch
373
379
  # the compute environment.
374
380
  # @return [Hash<String,String>]
375
381
  #
382
+ # @!attribute [rw] placement_group
383
+ # The Amazon EC2 placement group to associate with your compute
384
+ # resources. If you intend to submit multi-node parallel jobs to your
385
+ # compute environment, you should consider creating a cluster
386
+ # placement group and associate it with your compute resources. This
387
+ # keeps your multi-node parallel job on a logical grouping of
388
+ # instances within a single Availability Zone with high network flow
389
+ # potential. For more information, see [Placement Groups][1] in the
390
+ # *Amazon EC2 User Guide for Linux Instances*.
391
+ #
392
+ #
393
+ #
394
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
395
+ # @return [String]
396
+ #
376
397
  # @!attribute [rw] bid_percentage
377
398
  # The maximum percentage that a Spot Instance price can be when
378
399
  # compared with the On-Demand price for that instance type before
@@ -410,6 +431,7 @@ module Aws::Batch
410
431
  :ec2_key_pair,
411
432
  :instance_role,
412
433
  :tags,
434
+ :placement_group,
413
435
  :bid_percentage,
414
436
  :spot_iam_fleet_role,
415
437
  :launch_template)
@@ -537,6 +559,15 @@ module Aws::Batch
537
559
  # the `RUNNING` status.
538
560
  # @return [String]
539
561
  #
562
+ # @!attribute [rw] instance_type
563
+ # The instance type of the underlying host infrastructure of a
564
+ # multi-node parallel job.
565
+ # @return [String]
566
+ #
567
+ # @!attribute [rw] network_interfaces
568
+ # The network interfaces associated with the job.
569
+ # @return [Array<Types::NetworkInterface>]
570
+ #
540
571
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ContainerDetail AWS API Documentation
541
572
  #
542
573
  class ContainerDetail < Struct.new(
@@ -556,7 +587,9 @@ module Aws::Batch
556
587
  :reason,
557
588
  :container_instance_arn,
558
589
  :task_arn,
559
- :log_stream_name)
590
+ :log_stream_name,
591
+ :instance_type,
592
+ :network_interfaces)
560
593
  include Aws::Structure
561
594
  end
562
595
 
@@ -569,6 +602,7 @@ module Aws::Batch
569
602
  # vcpus: 1,
570
603
  # memory: 1,
571
604
  # command: ["String"],
605
+ # instance_type: "String",
572
606
  # environment: [
573
607
  # {
574
608
  # name: "String",
@@ -592,6 +626,11 @@ module Aws::Batch
592
626
  # command from the Docker image or the job definition.
593
627
  # @return [Array<String>]
594
628
  #
629
+ # @!attribute [rw] instance_type
630
+ # The instance type to use for a multi-node parallel job. This
631
+ # parameter is not valid for single-node container jobs.
632
+ # @return [String]
633
+ #
595
634
  # @!attribute [rw] environment
596
635
  # The environment variables to send to the container. You can add new
597
636
  # environment variables, which are added to the container at launch,
@@ -611,6 +650,7 @@ module Aws::Batch
611
650
  :vcpus,
612
651
  :memory,
613
652
  :command,
653
+ :instance_type,
614
654
  :environment)
615
655
  include Aws::Structure
616
656
  end
@@ -622,9 +662,9 @@ module Aws::Batch
622
662
  # data as a hash:
623
663
  #
624
664
  # {
625
- # image: "String", # required
626
- # vcpus: 1, # required
627
- # memory: 1, # required
665
+ # image: "String",
666
+ # vcpus: 1,
667
+ # memory: 1,
628
668
  # command: ["String"],
629
669
  # job_role_arn: "String",
630
670
  # volumes: [
@@ -658,6 +698,7 @@ module Aws::Batch
658
698
  # },
659
699
  # ],
660
700
  # user: "String",
701
+ # instance_type: "String",
661
702
  # }
662
703
  #
663
704
  # @!attribute [rw] image
@@ -833,6 +874,13 @@ module Aws::Batch
833
874
  # [3]: https://docs.docker.com/engine/reference/run/
834
875
  # @return [String]
835
876
  #
877
+ # @!attribute [rw] instance_type
878
+ # The instance type to use for a multi-node parallel job. Currently
879
+ # all node groups in a multi-node parallel job must use the same
880
+ # instance type. This parameter is not valid for single-node container
881
+ # jobs.
882
+ # @return [String]
883
+ #
836
884
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ContainerProperties AWS API Documentation
837
885
  #
838
886
  class ContainerProperties < Struct.new(
@@ -847,7 +895,8 @@ module Aws::Batch
847
895
  :readonly_root_filesystem,
848
896
  :privileged,
849
897
  :ulimits,
850
- :user)
898
+ :user,
899
+ :instance_type)
851
900
  include Aws::Structure
852
901
  end
853
902
 
@@ -891,6 +940,7 @@ module Aws::Batch
891
940
  # tags: {
892
941
  # "String" => "String",
893
942
  # },
943
+ # placement_group: "String",
894
944
  # bid_percentage: 1,
895
945
  # spot_iam_fleet_role: "String",
896
946
  # launch_template: {
@@ -999,7 +1049,7 @@ module Aws::Batch
999
1049
  # @!attribute [rw] priority
1000
1050
  # The priority of the job queue. Job queues with a higher priority (or
1001
1051
  # a higher integer value for the `priority` parameter) are evaluated
1002
- # first when associated with same compute environment. Priority is
1052
+ # first when associated with the same compute environment. Priority is
1003
1053
  # determined in descending order, for example, a job queue with a
1004
1054
  # priority value of `10` is given scheduling preference over a job
1005
1055
  # queue with a priority value of `1`.
@@ -1435,6 +1485,11 @@ module Aws::Batch
1435
1485
  # terminates your jobs if they have not finished.
1436
1486
  # @return [Types::JobTimeout]
1437
1487
  #
1488
+ # @!attribute [rw] node_properties
1489
+ # An object with various properties specific to multi-node parallel
1490
+ # jobs.
1491
+ # @return [Types::NodeProperties]
1492
+ #
1438
1493
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/JobDefinition AWS API Documentation
1439
1494
  #
1440
1495
  class JobDefinition < Struct.new(
@@ -1446,7 +1501,8 @@ module Aws::Batch
1446
1501
  :parameters,
1447
1502
  :retry_strategy,
1448
1503
  :container_properties,
1449
- :timeout)
1504
+ :timeout,
1505
+ :node_properties)
1450
1506
  include Aws::Structure
1451
1507
  end
1452
1508
 
@@ -1515,7 +1571,7 @@ module Aws::Batch
1515
1571
  # @return [String]
1516
1572
  #
1517
1573
  # @!attribute [rw] created_at
1518
- # The Unix time stamp (in seconds and milliseconds) for when the job
1574
+ # The Unix timestamp (in seconds and milliseconds) for when the job
1519
1575
  # was created. For non-array jobs and parent array jobs, this is when
1520
1576
  # the job entered the `SUBMITTED` state (at the time SubmitJob was
1521
1577
  # called). For array child jobs, this is when the child job was
@@ -1527,13 +1583,13 @@ module Aws::Batch
1527
1583
  # @return [Types::RetryStrategy]
1528
1584
  #
1529
1585
  # @!attribute [rw] started_at
1530
- # The Unix time stamp (in seconds and milliseconds) for when the job
1586
+ # The Unix timestamp (in seconds and milliseconds) for when the job
1531
1587
  # was started (when the job transitioned from the `STARTING` state to
1532
1588
  # the `RUNNING` state).
1533
1589
  # @return [Integer]
1534
1590
  #
1535
1591
  # @!attribute [rw] stopped_at
1536
- # The Unix time stamp (in seconds and milliseconds) for when the job
1592
+ # The Unix timestamp (in seconds and milliseconds) for when the job
1537
1593
  # was stopped (when the job transitioned from the `RUNNING` state to a
1538
1594
  # terminal state, such as `SUCCEEDED` or `FAILED`).
1539
1595
  # @return [Integer]
@@ -1557,6 +1613,16 @@ module Aws::Batch
1557
1613
  # associated with the job.
1558
1614
  # @return [Types::ContainerDetail]
1559
1615
  #
1616
+ # @!attribute [rw] node_details
1617
+ # An object representing the details of a node that is associated with
1618
+ # a multi-node parallel job.
1619
+ # @return [Types::NodeDetails]
1620
+ #
1621
+ # @!attribute [rw] node_properties
1622
+ # An object representing the node properties of a multi-node parallel
1623
+ # job.
1624
+ # @return [Types::NodeProperties]
1625
+ #
1560
1626
  # @!attribute [rw] array_properties
1561
1627
  # The array properties of the job, if it is an array job.
1562
1628
  # @return [Types::ArrayPropertiesDetail]
@@ -1582,6 +1648,8 @@ module Aws::Batch
1582
1648
  :job_definition,
1583
1649
  :parameters,
1584
1650
  :container,
1651
+ :node_details,
1652
+ :node_properties,
1585
1653
  :array_properties,
1586
1654
  :timeout)
1587
1655
  include Aws::Structure
@@ -1644,7 +1712,7 @@ module Aws::Batch
1644
1712
  # @return [String]
1645
1713
  #
1646
1714
  # @!attribute [rw] created_at
1647
- # The Unix time stamp for when the job was created. For non-array jobs
1715
+ # The Unix timestamp for when the job was created. For non-array jobs
1648
1716
  # and parent array jobs, this is when the job entered the `SUBMITTED`
1649
1717
  # state (at the time SubmitJob was called). For array child jobs, this
1650
1718
  # is when the child job was spawned by its parent and entered the
@@ -1661,12 +1729,12 @@ module Aws::Batch
1661
1729
  # @return [String]
1662
1730
  #
1663
1731
  # @!attribute [rw] started_at
1664
- # The Unix time stamp for when the job was started (when the job
1732
+ # The Unix timestamp for when the job was started (when the job
1665
1733
  # transitioned from the `STARTING` state to the `RUNNING` state).
1666
1734
  # @return [Integer]
1667
1735
  #
1668
1736
  # @!attribute [rw] stopped_at
1669
- # The Unix time stamp for when the job was stopped (when the job
1737
+ # The Unix timestamp for when the job was stopped (when the job
1670
1738
  # transitioned from the `RUNNING` state to a terminal state, such as
1671
1739
  # `SUCCEEDED` or `FAILED`).
1672
1740
  # @return [Integer]
@@ -1680,6 +1748,10 @@ module Aws::Batch
1680
1748
  # The array properties of the job, if it is an array job.
1681
1749
  # @return [Types::ArrayPropertiesSummary]
1682
1750
  #
1751
+ # @!attribute [rw] node_properties
1752
+ # The node properties for a single node in a job summary list.
1753
+ # @return [Types::NodePropertiesSummary]
1754
+ #
1683
1755
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/JobSummary AWS API Documentation
1684
1756
  #
1685
1757
  class JobSummary < Struct.new(
@@ -1691,7 +1763,8 @@ module Aws::Batch
1691
1763
  :started_at,
1692
1764
  :stopped_at,
1693
1765
  :container,
1694
- :array_properties)
1766
+ :array_properties,
1767
+ :node_properties)
1695
1768
  include Aws::Structure
1696
1769
  end
1697
1770
 
@@ -1787,6 +1860,7 @@ module Aws::Batch
1787
1860
  # {
1788
1861
  # job_queue: "String",
1789
1862
  # array_job_id: "String",
1863
+ # multi_node_job_id: "String",
1790
1864
  # job_status: "SUBMITTED", # accepts SUBMITTED, PENDING, RUNNABLE, STARTING, RUNNING, SUCCEEDED, FAILED
1791
1865
  # max_results: 1,
1792
1866
  # next_token: "String",
@@ -1794,14 +1868,18 @@ module Aws::Batch
1794
1868
  #
1795
1869
  # @!attribute [rw] job_queue
1796
1870
  # The name or full Amazon Resource Name (ARN) of the job queue with
1797
- # which to list jobs. You must specify either a job queue or an array
1798
- # job ID.
1871
+ # which to list jobs.
1799
1872
  # @return [String]
1800
1873
  #
1801
1874
  # @!attribute [rw] array_job_id
1802
1875
  # The job ID for an array job. Specifying an array job ID with this
1803
- # parameter lists all child jobs from within the specified array. You
1804
- # must specify either a job queue or an array job ID.
1876
+ # parameter lists all child jobs from within the specified array.
1877
+ # @return [String]
1878
+ #
1879
+ # @!attribute [rw] multi_node_job_id
1880
+ # The job ID for a multi-node parallel job. Specifying a multi-node
1881
+ # parallel job ID with this parameter lists all nodes that are
1882
+ # associated with the specified job.
1805
1883
  # @return [String]
1806
1884
  #
1807
1885
  # @!attribute [rw] job_status
@@ -1839,6 +1917,7 @@ module Aws::Batch
1839
1917
  class ListJobsRequest < Struct.new(
1840
1918
  :job_queue,
1841
1919
  :array_job_id,
1920
+ :multi_node_job_id,
1842
1921
  :job_status,
1843
1922
  :max_results,
1844
1923
  :next_token)
@@ -1899,19 +1978,320 @@ module Aws::Batch
1899
1978
  include Aws::Structure
1900
1979
  end
1901
1980
 
1981
+ # An object representing the elastic network interface for a multi-node
1982
+ # parallel job node.
1983
+ #
1984
+ # @!attribute [rw] attachment_id
1985
+ # The attachment ID for the network interface.
1986
+ # @return [String]
1987
+ #
1988
+ # @!attribute [rw] ipv6_address
1989
+ # The private IPv6 address for the network interface.
1990
+ # @return [String]
1991
+ #
1992
+ # @!attribute [rw] private_ipv_4_address
1993
+ # The private IPv4 address for the network interface.
1994
+ # @return [String]
1995
+ #
1996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NetworkInterface AWS API Documentation
1997
+ #
1998
+ class NetworkInterface < Struct.new(
1999
+ :attachment_id,
2000
+ :ipv6_address,
2001
+ :private_ipv_4_address)
2002
+ include Aws::Structure
2003
+ end
2004
+
2005
+ # An object representing the details of a multi-node parallel job node.
2006
+ #
2007
+ # @!attribute [rw] node_index
2008
+ # The node index for the node. Node index numbering begins at zero.
2009
+ # This index is also available on the node with the
2010
+ # `AWS_BATCH_JOB_NODE_INDEX` environment variable.
2011
+ # @return [Integer]
2012
+ #
2013
+ # @!attribute [rw] is_main_node
2014
+ # Specifies whether the current node is the main node for a multi-node
2015
+ # parallel job.
2016
+ # @return [Boolean]
2017
+ #
2018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodeDetails AWS API Documentation
2019
+ #
2020
+ class NodeDetails < Struct.new(
2021
+ :node_index,
2022
+ :is_main_node)
2023
+ include Aws::Structure
2024
+ end
2025
+
2026
+ # Object representing any node overrides to a job definition that is
2027
+ # used in a SubmitJob API operation.
2028
+ #
2029
+ # @note When making an API call, you may pass NodeOverrides
2030
+ # data as a hash:
2031
+ #
2032
+ # {
2033
+ # node_property_overrides: [
2034
+ # {
2035
+ # target_nodes: "String", # required
2036
+ # container_overrides: {
2037
+ # vcpus: 1,
2038
+ # memory: 1,
2039
+ # command: ["String"],
2040
+ # instance_type: "String",
2041
+ # environment: [
2042
+ # {
2043
+ # name: "String",
2044
+ # value: "String",
2045
+ # },
2046
+ # ],
2047
+ # },
2048
+ # },
2049
+ # ],
2050
+ # }
2051
+ #
2052
+ # @!attribute [rw] node_property_overrides
2053
+ # The node property overrides for the job.
2054
+ # @return [Array<Types::NodePropertyOverride>]
2055
+ #
2056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodeOverrides AWS API Documentation
2057
+ #
2058
+ class NodeOverrides < Struct.new(
2059
+ :node_property_overrides)
2060
+ include Aws::Structure
2061
+ end
2062
+
2063
+ # An object representing the node properties of a multi-node parallel
2064
+ # job.
2065
+ #
2066
+ # @note When making an API call, you may pass NodeProperties
2067
+ # data as a hash:
2068
+ #
2069
+ # {
2070
+ # num_nodes: 1, # required
2071
+ # main_node: 1, # required
2072
+ # node_range_properties: [ # required
2073
+ # {
2074
+ # target_nodes: "String", # required
2075
+ # container: {
2076
+ # image: "String",
2077
+ # vcpus: 1,
2078
+ # memory: 1,
2079
+ # command: ["String"],
2080
+ # job_role_arn: "String",
2081
+ # volumes: [
2082
+ # {
2083
+ # host: {
2084
+ # source_path: "String",
2085
+ # },
2086
+ # name: "String",
2087
+ # },
2088
+ # ],
2089
+ # environment: [
2090
+ # {
2091
+ # name: "String",
2092
+ # value: "String",
2093
+ # },
2094
+ # ],
2095
+ # mount_points: [
2096
+ # {
2097
+ # container_path: "String",
2098
+ # read_only: false,
2099
+ # source_volume: "String",
2100
+ # },
2101
+ # ],
2102
+ # readonly_root_filesystem: false,
2103
+ # privileged: false,
2104
+ # ulimits: [
2105
+ # {
2106
+ # hard_limit: 1, # required
2107
+ # name: "String", # required
2108
+ # soft_limit: 1, # required
2109
+ # },
2110
+ # ],
2111
+ # user: "String",
2112
+ # instance_type: "String",
2113
+ # },
2114
+ # },
2115
+ # ],
2116
+ # }
2117
+ #
2118
+ # @!attribute [rw] num_nodes
2119
+ # The number of nodes associated with a multi-node parallel job.
2120
+ # @return [Integer]
2121
+ #
2122
+ # @!attribute [rw] main_node
2123
+ # Specifies the node index for the main node of a multi-node parallel
2124
+ # job.
2125
+ # @return [Integer]
2126
+ #
2127
+ # @!attribute [rw] node_range_properties
2128
+ # A list of node ranges and their properties associated with a
2129
+ # multi-node parallel job.
2130
+ # @return [Array<Types::NodeRangeProperty>]
2131
+ #
2132
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodeProperties AWS API Documentation
2133
+ #
2134
+ class NodeProperties < Struct.new(
2135
+ :num_nodes,
2136
+ :main_node,
2137
+ :node_range_properties)
2138
+ include Aws::Structure
2139
+ end
2140
+
2141
+ # An object representing the properties of a node that is associated
2142
+ # with a multi-node parallel job.
2143
+ #
2144
+ # @!attribute [rw] is_main_node
2145
+ # Specifies whether the current node is the main node for a multi-node
2146
+ # parallel job.
2147
+ # @return [Boolean]
2148
+ #
2149
+ # @!attribute [rw] num_nodes
2150
+ # The number of nodes associated with a multi-node parallel job.
2151
+ # @return [Integer]
2152
+ #
2153
+ # @!attribute [rw] node_index
2154
+ # The node index for the node. Node index numbering begins at zero.
2155
+ # This index is also available on the node with the
2156
+ # `AWS_BATCH_JOB_NODE_INDEX` environment variable.
2157
+ # @return [Integer]
2158
+ #
2159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodePropertiesSummary AWS API Documentation
2160
+ #
2161
+ class NodePropertiesSummary < Struct.new(
2162
+ :is_main_node,
2163
+ :num_nodes,
2164
+ :node_index)
2165
+ include Aws::Structure
2166
+ end
2167
+
2168
+ # Object representing any node overrides to a job definition that is
2169
+ # used in a SubmitJob API operation.
2170
+ #
2171
+ # @note When making an API call, you may pass NodePropertyOverride
2172
+ # data as a hash:
2173
+ #
2174
+ # {
2175
+ # target_nodes: "String", # required
2176
+ # container_overrides: {
2177
+ # vcpus: 1,
2178
+ # memory: 1,
2179
+ # command: ["String"],
2180
+ # instance_type: "String",
2181
+ # environment: [
2182
+ # {
2183
+ # name: "String",
2184
+ # value: "String",
2185
+ # },
2186
+ # ],
2187
+ # },
2188
+ # }
2189
+ #
2190
+ # @!attribute [rw] target_nodes
2191
+ # The range of nodes, using node index values, with which to override.
2192
+ # A range of `0:3` indicates nodes with index values of `0` through
2193
+ # `3`. If the starting range value is omitted (`:n`), then `0` is used
2194
+ # to start the range. If the ending range value is omitted (`n:`),
2195
+ # then the highest possible node index is used to end the range.
2196
+ # @return [String]
2197
+ #
2198
+ # @!attribute [rw] container_overrides
2199
+ # The overrides that should be sent to a node range.
2200
+ # @return [Types::ContainerOverrides]
2201
+ #
2202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodePropertyOverride AWS API Documentation
2203
+ #
2204
+ class NodePropertyOverride < Struct.new(
2205
+ :target_nodes,
2206
+ :container_overrides)
2207
+ include Aws::Structure
2208
+ end
2209
+
2210
+ # An object representing the properties of the node range for a
2211
+ # multi-node parallel job.
2212
+ #
2213
+ # @note When making an API call, you may pass NodeRangeProperty
2214
+ # data as a hash:
2215
+ #
2216
+ # {
2217
+ # target_nodes: "String", # required
2218
+ # container: {
2219
+ # image: "String",
2220
+ # vcpus: 1,
2221
+ # memory: 1,
2222
+ # command: ["String"],
2223
+ # job_role_arn: "String",
2224
+ # volumes: [
2225
+ # {
2226
+ # host: {
2227
+ # source_path: "String",
2228
+ # },
2229
+ # name: "String",
2230
+ # },
2231
+ # ],
2232
+ # environment: [
2233
+ # {
2234
+ # name: "String",
2235
+ # value: "String",
2236
+ # },
2237
+ # ],
2238
+ # mount_points: [
2239
+ # {
2240
+ # container_path: "String",
2241
+ # read_only: false,
2242
+ # source_volume: "String",
2243
+ # },
2244
+ # ],
2245
+ # readonly_root_filesystem: false,
2246
+ # privileged: false,
2247
+ # ulimits: [
2248
+ # {
2249
+ # hard_limit: 1, # required
2250
+ # name: "String", # required
2251
+ # soft_limit: 1, # required
2252
+ # },
2253
+ # ],
2254
+ # user: "String",
2255
+ # instance_type: "String",
2256
+ # },
2257
+ # }
2258
+ #
2259
+ # @!attribute [rw] target_nodes
2260
+ # The range of nodes, using node index values. A range of `0:3`
2261
+ # indicates nodes with index values of `0` through `3`. If the
2262
+ # starting range value is omitted (`:n`), then `0` is used to start
2263
+ # the range. If the ending range value is omitted (`n:`), then the
2264
+ # highest possible node index is used to end the range. Your
2265
+ # accumulative node ranges must account for all nodes (0:n). You may
2266
+ # nest node ranges, for example 0:10 and 4:5, in which case the 4:5
2267
+ # range properties override the 0:10 properties.
2268
+ # @return [String]
2269
+ #
2270
+ # @!attribute [rw] container
2271
+ # The container details for the node range.
2272
+ # @return [Types::ContainerProperties]
2273
+ #
2274
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/NodeRangeProperty AWS API Documentation
2275
+ #
2276
+ class NodeRangeProperty < Struct.new(
2277
+ :target_nodes,
2278
+ :container)
2279
+ include Aws::Structure
2280
+ end
2281
+
1902
2282
  # @note When making an API call, you may pass RegisterJobDefinitionRequest
1903
2283
  # data as a hash:
1904
2284
  #
1905
2285
  # {
1906
2286
  # job_definition_name: "String", # required
1907
- # type: "container", # required, accepts container
2287
+ # type: "container", # required, accepts container, multinode
1908
2288
  # parameters: {
1909
2289
  # "String" => "String",
1910
2290
  # },
1911
2291
  # container_properties: {
1912
- # image: "String", # required
1913
- # vcpus: 1, # required
1914
- # memory: 1, # required
2292
+ # image: "String",
2293
+ # vcpus: 1,
2294
+ # memory: 1,
1915
2295
  # command: ["String"],
1916
2296
  # job_role_arn: "String",
1917
2297
  # volumes: [
@@ -1945,6 +2325,55 @@ module Aws::Batch
1945
2325
  # },
1946
2326
  # ],
1947
2327
  # user: "String",
2328
+ # instance_type: "String",
2329
+ # },
2330
+ # node_properties: {
2331
+ # num_nodes: 1, # required
2332
+ # main_node: 1, # required
2333
+ # node_range_properties: [ # required
2334
+ # {
2335
+ # target_nodes: "String", # required
2336
+ # container: {
2337
+ # image: "String",
2338
+ # vcpus: 1,
2339
+ # memory: 1,
2340
+ # command: ["String"],
2341
+ # job_role_arn: "String",
2342
+ # volumes: [
2343
+ # {
2344
+ # host: {
2345
+ # source_path: "String",
2346
+ # },
2347
+ # name: "String",
2348
+ # },
2349
+ # ],
2350
+ # environment: [
2351
+ # {
2352
+ # name: "String",
2353
+ # value: "String",
2354
+ # },
2355
+ # ],
2356
+ # mount_points: [
2357
+ # {
2358
+ # container_path: "String",
2359
+ # read_only: false,
2360
+ # source_volume: "String",
2361
+ # },
2362
+ # ],
2363
+ # readonly_root_filesystem: false,
2364
+ # privileged: false,
2365
+ # ulimits: [
2366
+ # {
2367
+ # hard_limit: 1, # required
2368
+ # name: "String", # required
2369
+ # soft_limit: 1, # required
2370
+ # },
2371
+ # ],
2372
+ # user: "String",
2373
+ # instance_type: "String",
2374
+ # },
2375
+ # },
2376
+ # ],
1948
2377
  # },
1949
2378
  # retry_strategy: {
1950
2379
  # attempts: 1,
@@ -1972,10 +2401,25 @@ module Aws::Batch
1972
2401
  # @return [Hash<String,String>]
1973
2402
  #
1974
2403
  # @!attribute [rw] container_properties
1975
- # An object with various properties specific for container-based jobs.
1976
- # This parameter is required if the `type` parameter is `container`.
2404
+ # An object with various properties specific to single-node
2405
+ # container-based jobs. If the job definition's `type` parameter is
2406
+ # `container`, then you must specify either `containerProperties` or
2407
+ # `nodeProperties`.
1977
2408
  # @return [Types::ContainerProperties]
1978
2409
  #
2410
+ # @!attribute [rw] node_properties
2411
+ # An object with various properties specific to multi-node parallel
2412
+ # jobs. If you specify node properties for a job, it becomes a
2413
+ # multi-node parallel job. For more information, see [Multi-node
2414
+ # Parallel Jobs][1] in the *AWS Batch User Guide*. If the job
2415
+ # definition's `type` parameter is `container`, then you must specify
2416
+ # either `containerProperties` or `nodeProperties`.
2417
+ #
2418
+ #
2419
+ #
2420
+ # [1]: http://docs.aws.amazon.com/batch/latest/userguide/multi-node-parallel-jobs.html
2421
+ # @return [Types::NodeProperties]
2422
+ #
1979
2423
  # @!attribute [rw] retry_strategy
1980
2424
  # The retry strategy to use for failed jobs that are submitted with
1981
2425
  # this job definition. Any retry strategy that is specified during a
@@ -2005,6 +2449,7 @@ module Aws::Batch
2005
2449
  :type,
2006
2450
  :parameters,
2007
2451
  :container_properties,
2452
+ :node_properties,
2008
2453
  :retry_strategy,
2009
2454
  :timeout)
2010
2455
  include Aws::Structure
@@ -2043,8 +2488,8 @@ module Aws::Batch
2043
2488
  # @!attribute [rw] attempts
2044
2489
  # The number of times to move a job to the `RUNNABLE` status. You may
2045
2490
  # specify between 1 and 10 attempts. If the value of `attempts` is
2046
- # greater than one, the job is retried if it fails until it has moved
2047
- # to `RUNNABLE` that many times.
2491
+ # greater than one, the job is retried on failure the same number of
2492
+ # attempts as the value.
2048
2493
  # @return [Integer]
2049
2494
  #
2050
2495
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/RetryStrategy AWS API Documentation
@@ -2077,6 +2522,7 @@ module Aws::Batch
2077
2522
  # vcpus: 1,
2078
2523
  # memory: 1,
2079
2524
  # command: ["String"],
2525
+ # instance_type: "String",
2080
2526
  # environment: [
2081
2527
  # {
2082
2528
  # name: "String",
@@ -2084,6 +2530,25 @@ module Aws::Batch
2084
2530
  # },
2085
2531
  # ],
2086
2532
  # },
2533
+ # node_overrides: {
2534
+ # node_property_overrides: [
2535
+ # {
2536
+ # target_nodes: "String", # required
2537
+ # container_overrides: {
2538
+ # vcpus: 1,
2539
+ # memory: 1,
2540
+ # command: ["String"],
2541
+ # instance_type: "String",
2542
+ # environment: [
2543
+ # {
2544
+ # name: "String",
2545
+ # value: "String",
2546
+ # },
2547
+ # ],
2548
+ # },
2549
+ # },
2550
+ # ],
2551
+ # },
2087
2552
  # retry_strategy: {
2088
2553
  # attempts: 1,
2089
2554
  # },
@@ -2119,9 +2584,9 @@ module Aws::Batch
2119
2584
  # of 20 jobs. You can specify a `SEQUENTIAL` type dependency without
2120
2585
  # specifying a job ID for array jobs so that each child array job
2121
2586
  # completes sequentially, starting at index 0. You can also specify an
2122
- # `N_TO_N` type dependency with a job ID for array jobs so that each
2123
- # index child of this job must wait for the corresponding index child
2124
- # of each dependency to complete before it can begin.
2587
+ # `N_TO_N` type dependency with a job ID for array jobs. In that case,
2588
+ # each index child of this job must wait for the corresponding index
2589
+ # child of each dependency to complete before it can begin.
2125
2590
  # @return [Array<Types::JobDependency>]
2126
2591
  #
2127
2592
  # @!attribute [rw] job_definition
@@ -2149,6 +2614,11 @@ module Aws::Batch
2149
2614
  # `environment` override.
2150
2615
  # @return [Types::ContainerOverrides]
2151
2616
  #
2617
+ # @!attribute [rw] node_overrides
2618
+ # A list of node overrides in JSON format that specify the node range
2619
+ # to target and the container overrides for that node range.
2620
+ # @return [Types::NodeOverrides]
2621
+ #
2152
2622
  # @!attribute [rw] retry_strategy
2153
2623
  # The retry strategy to use for failed jobs from this SubmitJob
2154
2624
  # operation. When a retry strategy is specified here, it overrides the
@@ -2181,6 +2651,7 @@ module Aws::Batch
2181
2651
  :job_definition,
2182
2652
  :parameters,
2183
2653
  :container_overrides,
2654
+ :node_overrides,
2184
2655
  :retry_strategy,
2185
2656
  :timeout)
2186
2657
  include Aws::Structure
@@ -2324,7 +2795,7 @@ module Aws::Batch
2324
2795
  end
2325
2796
 
2326
2797
  # @!attribute [rw] compute_environment_name
2327
- # The name of compute environment.
2798
+ # The name of the compute environment.
2328
2799
  # @return [String]
2329
2800
  #
2330
2801
  # @!attribute [rw] compute_environment_arn
@@ -2365,7 +2836,7 @@ module Aws::Batch
2365
2836
  # @!attribute [rw] priority
2366
2837
  # The priority of the job queue. Job queues with a higher priority (or
2367
2838
  # a higher integer value for the `priority` parameter) are evaluated
2368
- # first when associated with same compute environment. Priority is
2839
+ # first when associated with the same compute environment. Priority is
2369
2840
  # determined in descending order, for example, a job queue with a
2370
2841
  # priority value of `10` is given scheduling preference over a job
2371
2842
  # queue with a priority value of `1`.