aws-sdk-eks 1.37.0 → 1.42.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bb5c1aef1d2b7d7460765f217970f79d00faae1ddb7fc79d9ce2201c3fb039d3
4
- data.tar.gz: c468ae7c437671d3c8214b763bb6dde5e706cc5eb3fd03cd722408959e5a33b0
3
+ metadata.gz: 50d5026ccdb6c983625e5b62495d66800181ee34ee4e28229d024d592d705196
4
+ data.tar.gz: e795ca242a08951c256cd17a3955480010cec9d8d7f46e8ac43cc4b9e3a6d54d
5
5
  SHA512:
6
- metadata.gz: 5a1e6c8caf6ec6bb7f855148bdc2bc80377b0c11572b6521aff2f7b94251f22ca4f9cfe2b75ac3999773c5c6d1f9b00aa0ff394c867aea9034201ce0d60852ff
7
- data.tar.gz: 1288c042363f3210a3be685588e223145d0783ee6fc2c6379705bdacae5390ab60bd6fa7c2c1964ab0595c18142ba15f7e7d9f8451e78e6670002b9e4fa8a1cc
6
+ metadata.gz: 8a5edd1e12cbcc8bb83e2df57b8af85108a6daf373fab2ce989ade47b728c78b230423cba21d0437965aca6fcc4a35742f90d9a2f23677b1d13d9e99e71aee70
7
+ data.tar.gz: 43f5f549c4275526a50e80e6294ca31357e30536b239f220e218815e40cad63cc289a7aa81f0434f513bb8d718ac0f6a7aa79b9adc20605969a9e2437f2bacf3
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -5,6 +7,7 @@
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
10
+
8
11
  require 'aws-sdk-core'
9
12
  require 'aws-sigv4'
10
13
 
@@ -43,9 +46,9 @@ require_relative 'aws-sdk-eks/customizations'
43
46
  #
44
47
  # See {Errors} for more information.
45
48
  #
46
- # @service
49
+ # @!group service
47
50
  module Aws::EKS
48
51
 
49
- GEM_VERSION = '1.37.0'
52
+ GEM_VERSION = '1.42.0'
50
53
 
51
54
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::EKS
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::RestJson)
74
78
 
@@ -81,13 +85,28 @@ module Aws::EKS
81
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
82
86
  # credentials.
83
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
84
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
85
103
  # from an EC2 IMDS on an EC2 instance.
86
104
  #
87
- # * `Aws::SharedCredentials` - Used for loading credentials from a
88
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
89
107
  #
90
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
91
110
  #
92
111
  # When `:credentials` are not configured directly, the following
93
112
  # locations will be searched for credentials:
@@ -97,10 +116,10 @@ module Aws::EKS
97
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
98
117
  # * `~/.aws/credentials`
99
118
  # * `~/.aws/config`
100
- # * EC2 IMDS instance profile - When used by default, the timeouts are
101
- # very aggressive. Construct and pass an instance of
102
- # `Aws::InstanceProfileCredentails` to enable retries and extended
103
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
104
123
  #
105
124
  # @option options [required, String] :region
106
125
  # The AWS region to connect to. The configured `:region` is
@@ -161,7 +180,7 @@ module Aws::EKS
161
180
  # @option options [String] :endpoint
162
181
  # The client endpoint is normally constructed from the `:region`
163
182
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
183
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
184
  #
166
185
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
186
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -371,9 +390,9 @@ module Aws::EKS
371
390
  #
372
391
  # @option params [required, String] :role_arn
373
392
  # The Amazon Resource Name (ARN) of the IAM role that provides
374
- # permissions for Amazon EKS to make calls to other AWS API operations
375
- # on your behalf. For more information, see [Amazon EKS Service IAM
376
- # Role][1] in the <i> <i>Amazon EKS User Guide</i> </i>.
393
+ # permissions for the Kubernetes control plane to make calls to AWS API
394
+ # operations on your behalf. For more information, see [Amazon EKS
395
+ # Service IAM Role][1] in the <i> <i>Amazon EKS User Guide</i> </i>.
377
396
  #
378
397
  #
379
398
  #
@@ -673,17 +692,20 @@ module Aws::EKS
673
692
  # only create a node group for your cluster that is equal to the current
674
693
  # Kubernetes version for the cluster. All node groups are created with
675
694
  # the latest AMI release version for the respective minor Kubernetes
676
- # version of the cluster.
695
+ # version of the cluster, unless you deploy a custom AMI using a launch
696
+ # template. For more information about using launch templates, see
697
+ # [Launch template support][1].
677
698
  #
678
699
  # An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group
679
700
  # and associated Amazon EC2 instances that are managed by AWS for an
680
701
  # Amazon EKS cluster. Each node group uses a version of the Amazon
681
702
  # EKS-optimized Amazon Linux 2 AMI. For more information, see [Managed
682
- # Node Groups][1] in the *Amazon EKS User Guide*.
703
+ # Node Groups][2] in the *Amazon EKS User Guide*.
683
704
  #
684
705
  #
685
706
  #
686
- # [1]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html
707
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
708
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html
687
709
  #
688
710
  # @option params [required, String] :cluster_name
689
711
  # The name of the cluster to create the node group in.
@@ -697,28 +719,68 @@ module Aws::EKS
697
719
  #
698
720
  # @option params [Integer] :disk_size
699
721
  # The root device disk size (in GiB) for your node group instances. The
700
- # default disk size is 20 GiB.
722
+ # default disk size is 20 GiB. If you specify `launchTemplate`, then
723
+ # don't specify `diskSize`, or the node group deployment will fail. For
724
+ # more information about using launch templates with Amazon EKS, see
725
+ # [Launch template support][1] in the Amazon EKS User Guide.
726
+ #
727
+ #
728
+ #
729
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
701
730
  #
702
731
  # @option params [required, Array<String>] :subnets
703
732
  # The subnets to use for the Auto Scaling group that is created for your
704
733
  # node group. These subnets must have the tag key
705
734
  # `kubernetes.io/cluster/CLUSTER_NAME` with a value of `shared`, where
706
- # `CLUSTER_NAME` is replaced with the name of your cluster.
735
+ # `CLUSTER_NAME` is replaced with the name of your cluster. If you
736
+ # specify `launchTemplate`, then don't specify [ `SubnetId` ][1] in
737
+ # your launch template, or the node group deployment will fail. For more
738
+ # information about using launch templates with Amazon EKS, see [Launch
739
+ # template support][2] in the Amazon EKS User Guide.
740
+ #
741
+ #
742
+ #
743
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html
744
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
707
745
  #
708
746
  # @option params [Array<String>] :instance_types
709
- # The instance type to use for your node group. Currently, you can
710
- # specify a single instance type for a node group. The default value for
711
- # this parameter is `t3.medium`. If you choose a GPU instance type, be
712
- # sure to specify the `AL2_x86_64_GPU` with the `amiType` parameter.
747
+ # The instance type to use for your node group. You can specify a single
748
+ # instance type for a node group. The default value for `instanceTypes`
749
+ # is `t3.medium`. If you choose a GPU instance type, be sure to specify
750
+ # `AL2_x86_64_GPU` with the `amiType` parameter. If you specify
751
+ # `launchTemplate`, then don't specify `instanceTypes`, or the node
752
+ # group deployment will fail. For more information about using launch
753
+ # templates with Amazon EKS, see [Launch template support][1] in the
754
+ # Amazon EKS User Guide.
755
+ #
756
+ #
757
+ #
758
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
713
759
  #
714
760
  # @option params [String] :ami_type
715
761
  # The AMI type for your node group. GPU instance types should use the
716
762
  # `AL2_x86_64_GPU` AMI type, which uses the Amazon EKS-optimized Linux
717
763
  # AMI with GPU support. Non-GPU instances should use the `AL2_x86_64`
718
- # AMI type, which uses the Amazon EKS-optimized Linux AMI.
764
+ # AMI type, which uses the Amazon EKS-optimized Linux AMI. If you
765
+ # specify `launchTemplate`, and your launch template uses a custom AMI,
766
+ # then don't specify `amiType`, or the node group deployment will fail.
767
+ # For more information about using launch templates with Amazon EKS, see
768
+ # [Launch template support][1] in the Amazon EKS User Guide.
769
+ #
770
+ #
771
+ #
772
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
719
773
  #
720
774
  # @option params [Types::RemoteAccessConfig] :remote_access
721
- # The remote access (SSH) configuration to use with your node group.
775
+ # The remote access (SSH) configuration to use with your node group. If
776
+ # you specify `launchTemplate`, then don't specify `remoteAccess`, or
777
+ # the node group deployment will fail. For more information about using
778
+ # launch templates with Amazon EKS, see [Launch template support][1] in
779
+ # the Amazon EKS User Guide.
780
+ #
781
+ #
782
+ #
783
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
722
784
  #
723
785
  # @option params [required, String] :node_role
724
786
  # The Amazon Resource Name (ARN) of the IAM role to associate with your
@@ -728,11 +790,17 @@ module Aws::EKS
728
790
  # Before you can launch worker nodes and register them into a cluster,
729
791
  # you must create an IAM role for those worker nodes to use when they
730
792
  # are launched. For more information, see [Amazon EKS Worker Node IAM
731
- # Role][1] in the <i> <i>Amazon EKS User Guide</i> </i>.
793
+ # Role][1] in the <i> <i>Amazon EKS User Guide</i> </i>. If you specify
794
+ # `launchTemplate`, then don't specify [ `IamInstanceProfile` ][2] in
795
+ # your launch template, or the node group deployment will fail. For more
796
+ # information about using launch templates with Amazon EKS, see [Launch
797
+ # template support][3] in the Amazon EKS User Guide.
732
798
  #
733
799
  #
734
800
  #
735
801
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html
802
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html
803
+ # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
736
804
  #
737
805
  # @option params [Hash<String,String>] :labels
738
806
  # The Kubernetes labels to be applied to the nodes in the node group
@@ -752,21 +820,40 @@ module Aws::EKS
752
820
  # **A suitable default value is auto-generated.** You should normally
753
821
  # not need to pass this option.**
754
822
  #
823
+ # @option params [Types::LaunchTemplateSpecification] :launch_template
824
+ # An object representing a node group's launch template specification.
825
+ # If specified, then do not specify `instanceTypes`, `diskSize`, or
826
+ # `remoteAccess`. If specified, make sure that the launch template meets
827
+ # the requirements in `launchTemplateSpecification`.
828
+ #
755
829
  # @option params [String] :version
756
830
  # The Kubernetes version to use for your managed nodes. By default, the
757
831
  # Kubernetes version of the cluster is used, and this is the only
758
- # accepted specified value.
832
+ # accepted specified value. If you specify `launchTemplate`, and your
833
+ # launch template uses a custom AMI, then don't specify `version`, or
834
+ # the node group deployment will fail. For more information about using
835
+ # launch templates with Amazon EKS, see [Launch template support][1] in
836
+ # the Amazon EKS User Guide.
837
+ #
838
+ #
839
+ #
840
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
759
841
  #
760
842
  # @option params [String] :release_version
761
843
  # The AMI version of the Amazon EKS-optimized AMI to use with your node
762
844
  # group. By default, the latest available AMI version for the node
763
845
  # group's current Kubernetes version is used. For more information, see
764
846
  # [Amazon EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User
765
- # Guide*.
847
+ # Guide*. If you specify `launchTemplate`, and your launch template uses
848
+ # a custom AMI, then don't specify `releaseVersion`, or the node group
849
+ # deployment will fail. For more information about using launch
850
+ # templates with Amazon EKS, see [Launch template support][2] in the
851
+ # Amazon EKS User Guide.
766
852
  #
767
853
  #
768
854
  #
769
855
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
856
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
770
857
  #
771
858
  # @return [Types::CreateNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
772
859
  #
@@ -785,7 +872,7 @@ module Aws::EKS
785
872
  # disk_size: 1,
786
873
  # subnets: ["String"], # required
787
874
  # instance_types: ["String"],
788
- # ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU
875
+ # ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU, AL2_ARM_64
789
876
  # remote_access: {
790
877
  # ec2_ssh_key: "String",
791
878
  # source_security_groups: ["String"],
@@ -798,6 +885,11 @@ module Aws::EKS
798
885
  # "TagKey" => "TagValue",
799
886
  # },
800
887
  # client_request_token: "String",
888
+ # launch_template: {
889
+ # name: "String",
890
+ # version: "String",
891
+ # id: "String",
892
+ # },
801
893
  # version: "String",
802
894
  # release_version: "String",
803
895
  # })
@@ -822,7 +914,7 @@ module Aws::EKS
822
914
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
823
915
  # resp.nodegroup.remote_access.source_security_groups #=> Array
824
916
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
825
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
917
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64"
826
918
  # resp.nodegroup.node_role #=> String
827
919
  # resp.nodegroup.labels #=> Hash
828
920
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -835,6 +927,9 @@ module Aws::EKS
835
927
  # resp.nodegroup.health.issues[0].message #=> String
836
928
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
837
929
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
930
+ # resp.nodegroup.launch_template.name #=> String
931
+ # resp.nodegroup.launch_template.version #=> String
932
+ # resp.nodegroup.launch_template.id #=> String
838
933
  # resp.nodegroup.tags #=> Hash
839
934
  # resp.nodegroup.tags["TagKey"] #=> String
840
935
  #
@@ -1029,7 +1124,7 @@ module Aws::EKS
1029
1124
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
1030
1125
  # resp.nodegroup.remote_access.source_security_groups #=> Array
1031
1126
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
1032
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
1127
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64"
1033
1128
  # resp.nodegroup.node_role #=> String
1034
1129
  # resp.nodegroup.labels #=> Hash
1035
1130
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -1042,6 +1137,9 @@ module Aws::EKS
1042
1137
  # resp.nodegroup.health.issues[0].message #=> String
1043
1138
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
1044
1139
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
1140
+ # resp.nodegroup.launch_template.name #=> String
1141
+ # resp.nodegroup.launch_template.version #=> String
1142
+ # resp.nodegroup.launch_template.id #=> String
1045
1143
  # resp.nodegroup.tags #=> Hash
1046
1144
  # resp.nodegroup.tags["TagKey"] #=> String
1047
1145
  #
@@ -1252,7 +1350,7 @@ module Aws::EKS
1252
1350
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
1253
1351
  # resp.nodegroup.remote_access.source_security_groups #=> Array
1254
1352
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
1255
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
1353
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64"
1256
1354
  # resp.nodegroup.node_role #=> String
1257
1355
  # resp.nodegroup.labels #=> Hash
1258
1356
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -1265,6 +1363,9 @@ module Aws::EKS
1265
1363
  # resp.nodegroup.health.issues[0].message #=> String
1266
1364
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
1267
1365
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
1366
+ # resp.nodegroup.launch_template.name #=> String
1367
+ # resp.nodegroup.launch_template.version #=> String
1368
+ # resp.nodegroup.launch_template.id #=> String
1268
1369
  # resp.nodegroup.tags #=> Hash
1269
1370
  # resp.nodegroup.tags["TagKey"] #=> String
1270
1371
  #
@@ -1945,12 +2046,20 @@ module Aws::EKS
1945
2046
  # Updates the Kubernetes version or AMI version of an Amazon EKS managed
1946
2047
  # node group.
1947
2048
  #
1948
- # You can update to the latest available AMI version of a node group's
1949
- # current Kubernetes version by not specifying a Kubernetes version in
1950
- # the request. You can update to the latest AMI version of your
1951
- # cluster's current Kubernetes version by specifying your cluster's
1952
- # Kubernetes version in the request. For more information, see [Amazon
1953
- # EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User Guide*.
2049
+ # You can update a node group using a launch template only if the node
2050
+ # group was originally deployed with a launch template. If you need to
2051
+ # update a custom AMI in a node group that was deployed with a launch
2052
+ # template, then update your custom AMI, specify the new ID in a new
2053
+ # version of the launch template, and then update the node group to the
2054
+ # new version of the launch template.
2055
+ #
2056
+ # If you update without a launch template, then you can update to the
2057
+ # latest available AMI version of a node group's current Kubernetes
2058
+ # version by not specifying a Kubernetes version in the request. You can
2059
+ # update to the latest AMI version of your cluster's current Kubernetes
2060
+ # version by specifying your cluster's Kubernetes version in the
2061
+ # request. For more information, see [Amazon EKS-Optimized Linux AMI
2062
+ # Versions][1] in the *Amazon EKS User Guide*.
1954
2063
  #
1955
2064
  # You cannot roll back a node group to an earlier Kubernetes version or
1956
2065
  # AMI version.
@@ -1976,17 +2085,36 @@ module Aws::EKS
1976
2085
  # The Kubernetes version to update to. If no version is specified, then
1977
2086
  # the Kubernetes version of the node group does not change. You can
1978
2087
  # specify the Kubernetes version of the cluster to update the node group
1979
- # to the latest AMI version of the cluster's Kubernetes version.
2088
+ # to the latest AMI version of the cluster's Kubernetes version. If you
2089
+ # specify `launchTemplate`, and your launch template uses a custom AMI,
2090
+ # then don't specify `version`, or the node group update will fail. For
2091
+ # more information about using launch templates with Amazon EKS, see
2092
+ # [Launch template support][1] in the Amazon EKS User Guide.
2093
+ #
2094
+ #
2095
+ #
2096
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1980
2097
  #
1981
2098
  # @option params [String] :release_version
1982
2099
  # The AMI version of the Amazon EKS-optimized AMI to use for the update.
1983
2100
  # By default, the latest available AMI version for the node group's
1984
2101
  # Kubernetes version is used. For more information, see [Amazon
1985
2102
  # EKS-Optimized Linux AMI Versions ][1] in the *Amazon EKS User Guide*.
2103
+ # If you specify `launchTemplate`, and your launch template uses a
2104
+ # custom AMI, then don't specify `releaseVersion`, or the node group
2105
+ # update will fail. For more information about using launch templates
2106
+ # with Amazon EKS, see [Launch template support][2] in the Amazon EKS
2107
+ # User Guide.
1986
2108
  #
1987
2109
  #
1988
2110
  #
1989
2111
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
2112
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
2113
+ #
2114
+ # @option params [Types::LaunchTemplateSpecification] :launch_template
2115
+ # An object representing a node group's launch template specification.
2116
+ # You can only update a node group using a launch template if the node
2117
+ # group was originally deployed with a launch template.
1990
2118
  #
1991
2119
  # @option params [Boolean] :force
1992
2120
  # Force the update if the existing node group's pods are unable to be
@@ -2013,6 +2141,11 @@ module Aws::EKS
2013
2141
  # nodegroup_name: "String", # required
2014
2142
  # version: "String",
2015
2143
  # release_version: "String",
2144
+ # launch_template: {
2145
+ # name: "String",
2146
+ # version: "String",
2147
+ # id: "String",
2148
+ # },
2016
2149
  # force: false,
2017
2150
  # client_request_token: "String",
2018
2151
  # })
@@ -2054,7 +2187,7 @@ module Aws::EKS
2054
2187
  params: params,
2055
2188
  config: config)
2056
2189
  context[:gem_name] = 'aws-sdk-eks'
2057
- context[:gem_version] = '1.37.0'
2190
+ context[:gem_version] = '1.42.0'
2058
2191
  Seahorse::Client::Request.new(handlers, context)
2059
2192
  end
2060
2193
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -60,6 +62,7 @@ module Aws::EKS
60
62
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
61
63
  Issue = Shapes::StructureShape.new(name: 'Issue')
62
64
  IssueList = Shapes::ListShape.new(name: 'IssueList')
65
+ LaunchTemplateSpecification = Shapes::StructureShape.new(name: 'LaunchTemplateSpecification')
63
66
  ListClustersRequest = Shapes::StructureShape.new(name: 'ListClustersRequest')
64
67
  ListClustersRequestMaxResults = Shapes::IntegerShape.new(name: 'ListClustersRequestMaxResults')
65
68
  ListClustersResponse = Shapes::StructureShape.new(name: 'ListClustersResponse')
@@ -197,6 +200,7 @@ module Aws::EKS
197
200
  CreateNodegroupRequest.add_member(:labels, Shapes::ShapeRef.new(shape: labelsMap, location_name: "labels"))
198
201
  CreateNodegroupRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
199
202
  CreateNodegroupRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
203
+ CreateNodegroupRequest.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "launchTemplate"))
200
204
  CreateNodegroupRequest.add_member(:version, Shapes::ShapeRef.new(shape: String, location_name: "version"))
201
205
  CreateNodegroupRequest.add_member(:release_version, Shapes::ShapeRef.new(shape: String, location_name: "releaseVersion"))
202
206
  CreateNodegroupRequest.struct_class = Types::CreateNodegroupRequest
@@ -306,6 +310,11 @@ module Aws::EKS
306
310
 
307
311
  IssueList.member = Shapes::ShapeRef.new(shape: Issue)
308
312
 
313
+ LaunchTemplateSpecification.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
314
+ LaunchTemplateSpecification.add_member(:version, Shapes::ShapeRef.new(shape: String, location_name: "version"))
315
+ LaunchTemplateSpecification.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
316
+ LaunchTemplateSpecification.struct_class = Types::LaunchTemplateSpecification
317
+
309
318
  ListClustersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListClustersRequestMaxResults, location: "querystring", location_name: "maxResults"))
310
319
  ListClustersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
311
320
  ListClustersRequest.struct_class = Types::ListClustersRequest
@@ -377,6 +386,7 @@ module Aws::EKS
377
386
  Nodegroup.add_member(:resources, Shapes::ShapeRef.new(shape: NodegroupResources, location_name: "resources"))
378
387
  Nodegroup.add_member(:disk_size, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "diskSize"))
379
388
  Nodegroup.add_member(:health, Shapes::ShapeRef.new(shape: NodegroupHealth, location_name: "health"))
389
+ Nodegroup.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "launchTemplate"))
380
390
  Nodegroup.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
381
391
  Nodegroup.struct_class = Types::Nodegroup
382
392
 
@@ -497,6 +507,7 @@ module Aws::EKS
497
507
  UpdateNodegroupVersionRequest.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "nodegroupName"))
498
508
  UpdateNodegroupVersionRequest.add_member(:version, Shapes::ShapeRef.new(shape: String, location_name: "version"))
499
509
  UpdateNodegroupVersionRequest.add_member(:release_version, Shapes::ShapeRef.new(shape: String, location_name: "releaseVersion"))
510
+ UpdateNodegroupVersionRequest.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "launchTemplate"))
500
511
  UpdateNodegroupVersionRequest.add_member(:force, Shapes::ShapeRef.new(shape: Boolean, location_name: "force"))
501
512
  UpdateNodegroupVersionRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
502
513
  UpdateNodegroupVersionRequest.struct_class = Types::UpdateNodegroupVersionRequest