aws-sdk-eks 1.46.0 → 1.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -24,6 +24,10 @@ module Aws::EKS
24
24
  AddonVersionInfo = Shapes::StructureShape.new(name: 'AddonVersionInfo')
25
25
  AddonVersionInfoList = Shapes::ListShape.new(name: 'AddonVersionInfoList')
26
26
  Addons = Shapes::ListShape.new(name: 'Addons')
27
+ AssociateEncryptionConfigRequest = Shapes::StructureShape.new(name: 'AssociateEncryptionConfigRequest')
28
+ AssociateEncryptionConfigResponse = Shapes::StructureShape.new(name: 'AssociateEncryptionConfigResponse')
29
+ AssociateIdentityProviderConfigRequest = Shapes::StructureShape.new(name: 'AssociateIdentityProviderConfigRequest')
30
+ AssociateIdentityProviderConfigResponse = Shapes::StructureShape.new(name: 'AssociateIdentityProviderConfigResponse')
27
31
  AutoScalingGroup = Shapes::StructureShape.new(name: 'AutoScalingGroup')
28
32
  AutoScalingGroupList = Shapes::ListShape.new(name: 'AutoScalingGroupList')
29
33
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
@@ -64,10 +68,14 @@ module Aws::EKS
64
68
  DescribeClusterResponse = Shapes::StructureShape.new(name: 'DescribeClusterResponse')
65
69
  DescribeFargateProfileRequest = Shapes::StructureShape.new(name: 'DescribeFargateProfileRequest')
66
70
  DescribeFargateProfileResponse = Shapes::StructureShape.new(name: 'DescribeFargateProfileResponse')
71
+ DescribeIdentityProviderConfigRequest = Shapes::StructureShape.new(name: 'DescribeIdentityProviderConfigRequest')
72
+ DescribeIdentityProviderConfigResponse = Shapes::StructureShape.new(name: 'DescribeIdentityProviderConfigResponse')
67
73
  DescribeNodegroupRequest = Shapes::StructureShape.new(name: 'DescribeNodegroupRequest')
68
74
  DescribeNodegroupResponse = Shapes::StructureShape.new(name: 'DescribeNodegroupResponse')
69
75
  DescribeUpdateRequest = Shapes::StructureShape.new(name: 'DescribeUpdateRequest')
70
76
  DescribeUpdateResponse = Shapes::StructureShape.new(name: 'DescribeUpdateResponse')
77
+ DisassociateIdentityProviderConfigRequest = Shapes::StructureShape.new(name: 'DisassociateIdentityProviderConfigRequest')
78
+ DisassociateIdentityProviderConfigResponse = Shapes::StructureShape.new(name: 'DisassociateIdentityProviderConfigResponse')
71
79
  EncryptionConfig = Shapes::StructureShape.new(name: 'EncryptionConfig')
72
80
  EncryptionConfigList = Shapes::ListShape.new(name: 'EncryptionConfigList')
73
81
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
@@ -80,6 +88,9 @@ module Aws::EKS
80
88
  FargateProfileStatus = Shapes::StringShape.new(name: 'FargateProfileStatus')
81
89
  FargateProfilesRequestMaxResults = Shapes::IntegerShape.new(name: 'FargateProfilesRequestMaxResults')
82
90
  Identity = Shapes::StructureShape.new(name: 'Identity')
91
+ IdentityProviderConfig = Shapes::StructureShape.new(name: 'IdentityProviderConfig')
92
+ IdentityProviderConfigResponse = Shapes::StructureShape.new(name: 'IdentityProviderConfigResponse')
93
+ IdentityProviderConfigs = Shapes::ListShape.new(name: 'IdentityProviderConfigs')
83
94
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
84
95
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
85
96
  Issue = Shapes::StructureShape.new(name: 'Issue')
@@ -95,6 +106,9 @@ module Aws::EKS
95
106
  ListClustersResponse = Shapes::StructureShape.new(name: 'ListClustersResponse')
96
107
  ListFargateProfilesRequest = Shapes::StructureShape.new(name: 'ListFargateProfilesRequest')
97
108
  ListFargateProfilesResponse = Shapes::StructureShape.new(name: 'ListFargateProfilesResponse')
109
+ ListIdentityProviderConfigsRequest = Shapes::StructureShape.new(name: 'ListIdentityProviderConfigsRequest')
110
+ ListIdentityProviderConfigsRequestMaxResults = Shapes::IntegerShape.new(name: 'ListIdentityProviderConfigsRequestMaxResults')
111
+ ListIdentityProviderConfigsResponse = Shapes::StructureShape.new(name: 'ListIdentityProviderConfigsResponse')
98
112
  ListNodegroupsRequest = Shapes::StructureShape.new(name: 'ListNodegroupsRequest')
99
113
  ListNodegroupsRequestMaxResults = Shapes::IntegerShape.new(name: 'ListNodegroupsRequestMaxResults')
100
114
  ListNodegroupsResponse = Shapes::StructureShape.new(name: 'ListNodegroupsResponse')
@@ -116,6 +130,8 @@ module Aws::EKS
116
130
  NodegroupStatus = Shapes::StringShape.new(name: 'NodegroupStatus')
117
131
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
118
132
  OIDC = Shapes::StructureShape.new(name: 'OIDC')
133
+ OidcIdentityProviderConfig = Shapes::StructureShape.new(name: 'OidcIdentityProviderConfig')
134
+ OidcIdentityProviderConfigRequest = Shapes::StructureShape.new(name: 'OidcIdentityProviderConfigRequest')
119
135
  Provider = Shapes::StructureShape.new(name: 'Provider')
120
136
  RemoteAccessConfig = Shapes::StructureShape.new(name: 'RemoteAccessConfig')
121
137
  ResolveConflicts = Shapes::StringShape.new(name: 'ResolveConflicts')
@@ -156,10 +172,14 @@ module Aws::EKS
156
172
  UpdateType = Shapes::StringShape.new(name: 'UpdateType')
157
173
  VpcConfigRequest = Shapes::StructureShape.new(name: 'VpcConfigRequest')
158
174
  VpcConfigResponse = Shapes::StructureShape.new(name: 'VpcConfigResponse')
175
+ configStatus = Shapes::StringShape.new(name: 'configStatus')
159
176
  labelKey = Shapes::StringShape.new(name: 'labelKey')
160
177
  labelValue = Shapes::StringShape.new(name: 'labelValue')
161
178
  labelsKeyList = Shapes::ListShape.new(name: 'labelsKeyList')
162
179
  labelsMap = Shapes::MapShape.new(name: 'labelsMap')
180
+ requiredClaimsKey = Shapes::StringShape.new(name: 'requiredClaimsKey')
181
+ requiredClaimsMap = Shapes::MapShape.new(name: 'requiredClaimsMap')
182
+ requiredClaimsValue = Shapes::StringShape.new(name: 'requiredClaimsValue')
163
183
 
164
184
  Addon.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, location_name: "addonName"))
165
185
  Addon.add_member(:cluster_name, Shapes::ShapeRef.new(shape: ClusterName, location_name: "clusterName"))
@@ -197,6 +217,24 @@ module Aws::EKS
197
217
 
198
218
  Addons.member = Shapes::ShapeRef.new(shape: AddonInfo)
199
219
 
220
+ AssociateEncryptionConfigRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
221
+ AssociateEncryptionConfigRequest.add_member(:encryption_config, Shapes::ShapeRef.new(shape: EncryptionConfigList, required: true, location_name: "encryptionConfig"))
222
+ AssociateEncryptionConfigRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
223
+ AssociateEncryptionConfigRequest.struct_class = Types::AssociateEncryptionConfigRequest
224
+
225
+ AssociateEncryptionConfigResponse.add_member(:update, Shapes::ShapeRef.new(shape: Update, location_name: "update"))
226
+ AssociateEncryptionConfigResponse.struct_class = Types::AssociateEncryptionConfigResponse
227
+
228
+ AssociateIdentityProviderConfigRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
229
+ AssociateIdentityProviderConfigRequest.add_member(:oidc, Shapes::ShapeRef.new(shape: OidcIdentityProviderConfigRequest, required: true, location_name: "oidc"))
230
+ AssociateIdentityProviderConfigRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
231
+ AssociateIdentityProviderConfigRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
232
+ AssociateIdentityProviderConfigRequest.struct_class = Types::AssociateIdentityProviderConfigRequest
233
+
234
+ AssociateIdentityProviderConfigResponse.add_member(:update, Shapes::ShapeRef.new(shape: Update, location_name: "update"))
235
+ AssociateIdentityProviderConfigResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
236
+ AssociateIdentityProviderConfigResponse.struct_class = Types::AssociateIdentityProviderConfigResponse
237
+
200
238
  AutoScalingGroup.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
201
239
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
202
240
 
@@ -355,6 +393,13 @@ module Aws::EKS
355
393
  DescribeFargateProfileResponse.add_member(:fargate_profile, Shapes::ShapeRef.new(shape: FargateProfile, location_name: "fargateProfile"))
356
394
  DescribeFargateProfileResponse.struct_class = Types::DescribeFargateProfileResponse
357
395
 
396
+ DescribeIdentityProviderConfigRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
397
+ DescribeIdentityProviderConfigRequest.add_member(:identity_provider_config, Shapes::ShapeRef.new(shape: IdentityProviderConfig, required: true, location_name: "identityProviderConfig"))
398
+ DescribeIdentityProviderConfigRequest.struct_class = Types::DescribeIdentityProviderConfigRequest
399
+
400
+ DescribeIdentityProviderConfigResponse.add_member(:identity_provider_config, Shapes::ShapeRef.new(shape: IdentityProviderConfigResponse, location_name: "identityProviderConfig"))
401
+ DescribeIdentityProviderConfigResponse.struct_class = Types::DescribeIdentityProviderConfigResponse
402
+
358
403
  DescribeNodegroupRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
359
404
  DescribeNodegroupRequest.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "nodegroupName"))
360
405
  DescribeNodegroupRequest.struct_class = Types::DescribeNodegroupRequest
@@ -371,6 +416,14 @@ module Aws::EKS
371
416
  DescribeUpdateResponse.add_member(:update, Shapes::ShapeRef.new(shape: Update, location_name: "update"))
372
417
  DescribeUpdateResponse.struct_class = Types::DescribeUpdateResponse
373
418
 
419
+ DisassociateIdentityProviderConfigRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
420
+ DisassociateIdentityProviderConfigRequest.add_member(:identity_provider_config, Shapes::ShapeRef.new(shape: IdentityProviderConfig, required: true, location_name: "identityProviderConfig"))
421
+ DisassociateIdentityProviderConfigRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
422
+ DisassociateIdentityProviderConfigRequest.struct_class = Types::DisassociateIdentityProviderConfigRequest
423
+
424
+ DisassociateIdentityProviderConfigResponse.add_member(:update, Shapes::ShapeRef.new(shape: Update, location_name: "update"))
425
+ DisassociateIdentityProviderConfigResponse.struct_class = Types::DisassociateIdentityProviderConfigResponse
426
+
374
427
  EncryptionConfig.add_member(:resources, Shapes::ShapeRef.new(shape: StringList, location_name: "resources"))
375
428
  EncryptionConfig.add_member(:provider, Shapes::ShapeRef.new(shape: Provider, location_name: "provider"))
376
429
  EncryptionConfig.struct_class = Types::EncryptionConfig
@@ -407,6 +460,15 @@ module Aws::EKS
407
460
  Identity.add_member(:oidc, Shapes::ShapeRef.new(shape: OIDC, location_name: "oidc"))
408
461
  Identity.struct_class = Types::Identity
409
462
 
463
+ IdentityProviderConfig.add_member(:type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "type"))
464
+ IdentityProviderConfig.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
465
+ IdentityProviderConfig.struct_class = Types::IdentityProviderConfig
466
+
467
+ IdentityProviderConfigResponse.add_member(:oidc, Shapes::ShapeRef.new(shape: OidcIdentityProviderConfig, location_name: "oidc"))
468
+ IdentityProviderConfigResponse.struct_class = Types::IdentityProviderConfigResponse
469
+
470
+ IdentityProviderConfigs.member = Shapes::ShapeRef.new(shape: IdentityProviderConfig)
471
+
410
472
  InvalidParameterException.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
411
473
  InvalidParameterException.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, location_name: "nodegroupName"))
412
474
  InvalidParameterException.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, location_name: "fargateProfileName"))
@@ -464,6 +526,15 @@ module Aws::EKS
464
526
  ListFargateProfilesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
465
527
  ListFargateProfilesResponse.struct_class = Types::ListFargateProfilesResponse
466
528
 
529
+ ListIdentityProviderConfigsRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
530
+ ListIdentityProviderConfigsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListIdentityProviderConfigsRequestMaxResults, location: "querystring", location_name: "maxResults"))
531
+ ListIdentityProviderConfigsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
532
+ ListIdentityProviderConfigsRequest.struct_class = Types::ListIdentityProviderConfigsRequest
533
+
534
+ ListIdentityProviderConfigsResponse.add_member(:identity_provider_configs, Shapes::ShapeRef.new(shape: IdentityProviderConfigs, location_name: "identityProviderConfigs"))
535
+ ListIdentityProviderConfigsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
536
+ ListIdentityProviderConfigsResponse.struct_class = Types::ListIdentityProviderConfigsResponse
537
+
467
538
  ListNodegroupsRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
468
539
  ListNodegroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListNodegroupsRequestMaxResults, location: "querystring", location_name: "maxResults"))
469
540
  ListNodegroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
@@ -542,6 +613,30 @@ module Aws::EKS
542
613
  OIDC.add_member(:issuer, Shapes::ShapeRef.new(shape: String, location_name: "issuer"))
543
614
  OIDC.struct_class = Types::OIDC
544
615
 
616
+ OidcIdentityProviderConfig.add_member(:identity_provider_config_name, Shapes::ShapeRef.new(shape: String, location_name: "identityProviderConfigName"))
617
+ OidcIdentityProviderConfig.add_member(:identity_provider_config_arn, Shapes::ShapeRef.new(shape: String, location_name: "identityProviderConfigArn"))
618
+ OidcIdentityProviderConfig.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
619
+ OidcIdentityProviderConfig.add_member(:issuer_url, Shapes::ShapeRef.new(shape: String, location_name: "issuerUrl"))
620
+ OidcIdentityProviderConfig.add_member(:client_id, Shapes::ShapeRef.new(shape: String, location_name: "clientId"))
621
+ OidcIdentityProviderConfig.add_member(:username_claim, Shapes::ShapeRef.new(shape: String, location_name: "usernameClaim"))
622
+ OidcIdentityProviderConfig.add_member(:username_prefix, Shapes::ShapeRef.new(shape: String, location_name: "usernamePrefix"))
623
+ OidcIdentityProviderConfig.add_member(:groups_claim, Shapes::ShapeRef.new(shape: String, location_name: "groupsClaim"))
624
+ OidcIdentityProviderConfig.add_member(:groups_prefix, Shapes::ShapeRef.new(shape: String, location_name: "groupsPrefix"))
625
+ OidcIdentityProviderConfig.add_member(:required_claims, Shapes::ShapeRef.new(shape: requiredClaimsMap, location_name: "requiredClaims"))
626
+ OidcIdentityProviderConfig.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
627
+ OidcIdentityProviderConfig.add_member(:status, Shapes::ShapeRef.new(shape: configStatus, location_name: "status"))
628
+ OidcIdentityProviderConfig.struct_class = Types::OidcIdentityProviderConfig
629
+
630
+ OidcIdentityProviderConfigRequest.add_member(:identity_provider_config_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "identityProviderConfigName"))
631
+ OidcIdentityProviderConfigRequest.add_member(:issuer_url, Shapes::ShapeRef.new(shape: String, required: true, location_name: "issuerUrl"))
632
+ OidcIdentityProviderConfigRequest.add_member(:client_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "clientId"))
633
+ OidcIdentityProviderConfigRequest.add_member(:username_claim, Shapes::ShapeRef.new(shape: String, location_name: "usernameClaim"))
634
+ OidcIdentityProviderConfigRequest.add_member(:username_prefix, Shapes::ShapeRef.new(shape: String, location_name: "usernamePrefix"))
635
+ OidcIdentityProviderConfigRequest.add_member(:groups_claim, Shapes::ShapeRef.new(shape: String, location_name: "groupsClaim"))
636
+ OidcIdentityProviderConfigRequest.add_member(:groups_prefix, Shapes::ShapeRef.new(shape: String, location_name: "groupsPrefix"))
637
+ OidcIdentityProviderConfigRequest.add_member(:required_claims, Shapes::ShapeRef.new(shape: requiredClaimsMap, location_name: "requiredClaims"))
638
+ OidcIdentityProviderConfigRequest.struct_class = Types::OidcIdentityProviderConfigRequest
639
+
545
640
  Provider.add_member(:key_arn, Shapes::ShapeRef.new(shape: String, location_name: "keyArn"))
546
641
  Provider.struct_class = Types::Provider
547
642
 
@@ -690,6 +785,9 @@ module Aws::EKS
690
785
  labelsMap.key = Shapes::ShapeRef.new(shape: labelKey)
691
786
  labelsMap.value = Shapes::ShapeRef.new(shape: labelValue)
692
787
 
788
+ requiredClaimsMap.key = Shapes::ShapeRef.new(shape: requiredClaimsKey)
789
+ requiredClaimsMap.value = Shapes::ShapeRef.new(shape: requiredClaimsValue)
790
+
693
791
 
694
792
  # @api private
695
793
  API = Seahorse::Model::Api.new.tap do |api|
@@ -709,6 +807,34 @@ module Aws::EKS
709
807
  "uid" => "eks-2017-11-01",
710
808
  }
711
809
 
810
+ api.add_operation(:associate_encryption_config, Seahorse::Model::Operation.new.tap do |o|
811
+ o.name = "AssociateEncryptionConfig"
812
+ o.http_method = "POST"
813
+ o.http_request_uri = "/clusters/{name}/encryption-config/associate"
814
+ o.input = Shapes::ShapeRef.new(shape: AssociateEncryptionConfigRequest)
815
+ o.output = Shapes::ShapeRef.new(shape: AssociateEncryptionConfigResponse)
816
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
817
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
818
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
819
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
820
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
821
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
822
+ end)
823
+
824
+ api.add_operation(:associate_identity_provider_config, Seahorse::Model::Operation.new.tap do |o|
825
+ o.name = "AssociateIdentityProviderConfig"
826
+ o.http_method = "POST"
827
+ o.http_request_uri = "/clusters/{name}/identity-provider-configs/associate"
828
+ o.input = Shapes::ShapeRef.new(shape: AssociateIdentityProviderConfigRequest)
829
+ o.output = Shapes::ShapeRef.new(shape: AssociateIdentityProviderConfigResponse)
830
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
831
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
832
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
833
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
834
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
835
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
836
+ end)
837
+
712
838
  api.add_operation(:create_addon, Seahorse::Model::Operation.new.tap do |o|
713
839
  o.name = "CreateAddon"
714
840
  o.http_method = "POST"
@@ -873,6 +999,19 @@ module Aws::EKS
873
999
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
874
1000
  end)
875
1001
 
1002
+ api.add_operation(:describe_identity_provider_config, Seahorse::Model::Operation.new.tap do |o|
1003
+ o.name = "DescribeIdentityProviderConfig"
1004
+ o.http_method = "POST"
1005
+ o.http_request_uri = "/clusters/{name}/identity-provider-configs/describe"
1006
+ o.input = Shapes::ShapeRef.new(shape: DescribeIdentityProviderConfigRequest)
1007
+ o.output = Shapes::ShapeRef.new(shape: DescribeIdentityProviderConfigResponse)
1008
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1009
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1010
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1011
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1012
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1013
+ end)
1014
+
876
1015
  api.add_operation(:describe_nodegroup, Seahorse::Model::Operation.new.tap do |o|
877
1016
  o.name = "DescribeNodegroup"
878
1017
  o.http_method = "GET"
@@ -898,6 +1037,20 @@ module Aws::EKS
898
1037
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
899
1038
  end)
900
1039
 
1040
+ api.add_operation(:disassociate_identity_provider_config, Seahorse::Model::Operation.new.tap do |o|
1041
+ o.name = "DisassociateIdentityProviderConfig"
1042
+ o.http_method = "POST"
1043
+ o.http_request_uri = "/clusters/{name}/identity-provider-configs/disassociate"
1044
+ o.input = Shapes::ShapeRef.new(shape: DisassociateIdentityProviderConfigRequest)
1045
+ o.output = Shapes::ShapeRef.new(shape: DisassociateIdentityProviderConfigResponse)
1046
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1047
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1048
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1049
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
1050
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1051
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1052
+ end)
1053
+
901
1054
  api.add_operation(:list_addons, Seahorse::Model::Operation.new.tap do |o|
902
1055
  o.name = "ListAddons"
903
1056
  o.http_method = "GET"
@@ -953,6 +1106,25 @@ module Aws::EKS
953
1106
  )
954
1107
  end)
955
1108
 
1109
+ api.add_operation(:list_identity_provider_configs, Seahorse::Model::Operation.new.tap do |o|
1110
+ o.name = "ListIdentityProviderConfigs"
1111
+ o.http_method = "GET"
1112
+ o.http_request_uri = "/clusters/{name}/identity-provider-configs"
1113
+ o.input = Shapes::ShapeRef.new(shape: ListIdentityProviderConfigsRequest)
1114
+ o.output = Shapes::ShapeRef.new(shape: ListIdentityProviderConfigsResponse)
1115
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1116
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1117
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1118
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1119
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1120
+ o[:pager] = Aws::Pager.new(
1121
+ limit_key: "max_results",
1122
+ tokens: {
1123
+ "next_token" => "next_token"
1124
+ }
1125
+ )
1126
+ end)
1127
+
956
1128
  api.add_operation(:list_nodegroups, Seahorse::Model::Operation.new.tap do |o|
957
1129
  o.name = "ListNodegroups"
958
1130
  o.http_method = "GET"
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -161,6 +161,135 @@ module Aws::EKS
161
161
  include Aws::Structure
162
162
  end
163
163
 
164
+ # @note When making an API call, you may pass AssociateEncryptionConfigRequest
165
+ # data as a hash:
166
+ #
167
+ # {
168
+ # cluster_name: "String", # required
169
+ # encryption_config: [ # required
170
+ # {
171
+ # resources: ["String"],
172
+ # provider: {
173
+ # key_arn: "String",
174
+ # },
175
+ # },
176
+ # ],
177
+ # client_request_token: "String",
178
+ # }
179
+ #
180
+ # @!attribute [rw] cluster_name
181
+ # The name of the cluster that you are associating with encryption
182
+ # configuration.
183
+ # @return [String]
184
+ #
185
+ # @!attribute [rw] encryption_config
186
+ # The configuration you are using for encryption.
187
+ # @return [Array<Types::EncryptionConfig>]
188
+ #
189
+ # @!attribute [rw] client_request_token
190
+ # The client request token you are using with the encryption
191
+ # configuration.
192
+ #
193
+ # **A suitable default value is auto-generated.** You should normally
194
+ # not need to pass this option.
195
+ # @return [String]
196
+ #
197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfigRequest AWS API Documentation
198
+ #
199
+ class AssociateEncryptionConfigRequest < Struct.new(
200
+ :cluster_name,
201
+ :encryption_config,
202
+ :client_request_token)
203
+ SENSITIVE = []
204
+ include Aws::Structure
205
+ end
206
+
207
+ # @!attribute [rw] update
208
+ # An object representing an asynchronous update.
209
+ # @return [Types::Update]
210
+ #
211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfigResponse AWS API Documentation
212
+ #
213
+ class AssociateEncryptionConfigResponse < Struct.new(
214
+ :update)
215
+ SENSITIVE = []
216
+ include Aws::Structure
217
+ end
218
+
219
+ # @note When making an API call, you may pass AssociateIdentityProviderConfigRequest
220
+ # data as a hash:
221
+ #
222
+ # {
223
+ # cluster_name: "String", # required
224
+ # oidc: { # required
225
+ # identity_provider_config_name: "String", # required
226
+ # issuer_url: "String", # required
227
+ # client_id: "String", # required
228
+ # username_claim: "String",
229
+ # username_prefix: "String",
230
+ # groups_claim: "String",
231
+ # groups_prefix: "String",
232
+ # required_claims: {
233
+ # "requiredClaimsKey" => "requiredClaimsValue",
234
+ # },
235
+ # },
236
+ # tags: {
237
+ # "TagKey" => "TagValue",
238
+ # },
239
+ # client_request_token: "String",
240
+ # }
241
+ #
242
+ # @!attribute [rw] cluster_name
243
+ # The name of the cluster to associate the configuration to.
244
+ # @return [String]
245
+ #
246
+ # @!attribute [rw] oidc
247
+ # An object that represents an OpenID Connect (OIDC) identity provider
248
+ # configuration.
249
+ # @return [Types::OidcIdentityProviderConfigRequest]
250
+ #
251
+ # @!attribute [rw] tags
252
+ # The metadata to apply to the configuration to assist with
253
+ # categorization and organization. Each tag consists of a key and an
254
+ # optional value, both of which you define.
255
+ # @return [Hash<String,String>]
256
+ #
257
+ # @!attribute [rw] client_request_token
258
+ # Unique, case-sensitive identifier that you provide to ensure the
259
+ # idempotency of the request.
260
+ #
261
+ # **A suitable default value is auto-generated.** You should normally
262
+ # not need to pass this option.
263
+ # @return [String]
264
+ #
265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfigRequest AWS API Documentation
266
+ #
267
+ class AssociateIdentityProviderConfigRequest < Struct.new(
268
+ :cluster_name,
269
+ :oidc,
270
+ :tags,
271
+ :client_request_token)
272
+ SENSITIVE = []
273
+ include Aws::Structure
274
+ end
275
+
276
+ # @!attribute [rw] update
277
+ # An object representing an asynchronous update.
278
+ # @return [Types::Update]
279
+ #
280
+ # @!attribute [rw] tags
281
+ # The tags for the resource.
282
+ # @return [Hash<String,String>]
283
+ #
284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfigResponse AWS API Documentation
285
+ #
286
+ class AssociateIdentityProviderConfigResponse < Struct.new(
287
+ :update,
288
+ :tags)
289
+ SENSITIVE = []
290
+ include Aws::Structure
291
+ end
292
+
164
293
  # An Auto Scaling group that is associated with an Amazon EKS managed
165
294
  # node group.
166
295
  #
@@ -815,7 +944,7 @@ module Aws::EKS
815
944
  #
816
945
  #
817
946
  #
818
- # [1]: https://docs.aws.amazon.com/managed-node-groups.html#managed-node-group-capacity-types
947
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types
819
948
  # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
820
949
  # @return [Array<String>]
821
950
  #
@@ -850,17 +979,16 @@ module Aws::EKS
850
979
  # @!attribute [rw] node_role
851
980
  # The Amazon Resource Name (ARN) of the IAM role to associate with
852
981
  # your node group. The Amazon EKS worker node `kubelet` daemon makes
853
- # calls to AWS APIs on your behalf. Worker nodes receive permissions
854
- # for these API calls through an IAM instance profile and associated
855
- # policies. Before you can launch worker nodes and register them into
856
- # a cluster, you must create an IAM role for those worker nodes to use
857
- # when they are launched. For more information, see [Amazon EKS Worker
858
- # Node IAM Role][1] in the <i> <i>Amazon EKS User Guide</i> </i>. If
859
- # you specify `launchTemplate`, then don't specify [
860
- # `IamInstanceProfile` ][2] in your launch template, or the node group
861
- # deployment will fail. For more information about using launch
862
- # templates with Amazon EKS, see [Launch template support][3] in the
863
- # Amazon EKS User Guide.
982
+ # calls to AWS APIs on your behalf. Nodes receive permissions for
983
+ # these API calls through an IAM instance profile and associated
984
+ # policies. Before you can launch nodes and register them into a
985
+ # cluster, you must create an IAM role for those nodes to use when
986
+ # they are launched. For more information, see [Amazon EKS node IAM
987
+ # role][1] in the <i> <i>Amazon EKS User Guide</i> </i>. If you
988
+ # specify `launchTemplate`, then don't specify [ `IamInstanceProfile`
989
+ # ][2] in your launch template, or the node group deployment will
990
+ # fail. For more information about using launch templates with Amazon
991
+ # EKS, see [Launch template support][3] in the Amazon EKS User Guide.
864
992
  #
865
993
  #
866
994
  #
@@ -1307,6 +1435,48 @@ module Aws::EKS
1307
1435
  include Aws::Structure
1308
1436
  end
1309
1437
 
1438
+ # @note When making an API call, you may pass DescribeIdentityProviderConfigRequest
1439
+ # data as a hash:
1440
+ #
1441
+ # {
1442
+ # cluster_name: "String", # required
1443
+ # identity_provider_config: { # required
1444
+ # type: "String", # required
1445
+ # name: "String", # required
1446
+ # },
1447
+ # }
1448
+ #
1449
+ # @!attribute [rw] cluster_name
1450
+ # The cluster name that the identity provider configuration is
1451
+ # associated to.
1452
+ # @return [String]
1453
+ #
1454
+ # @!attribute [rw] identity_provider_config
1455
+ # An object that represents an identity provider configuration.
1456
+ # @return [Types::IdentityProviderConfig]
1457
+ #
1458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfigRequest AWS API Documentation
1459
+ #
1460
+ class DescribeIdentityProviderConfigRequest < Struct.new(
1461
+ :cluster_name,
1462
+ :identity_provider_config)
1463
+ SENSITIVE = []
1464
+ include Aws::Structure
1465
+ end
1466
+
1467
+ # @!attribute [rw] identity_provider_config
1468
+ # The object that represents an OpenID Connect (OIDC) identity
1469
+ # provider configuration.
1470
+ # @return [Types::IdentityProviderConfigResponse]
1471
+ #
1472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfigResponse AWS API Documentation
1473
+ #
1474
+ class DescribeIdentityProviderConfigResponse < Struct.new(
1475
+ :identity_provider_config)
1476
+ SENSITIVE = []
1477
+ include Aws::Structure
1478
+ end
1479
+
1310
1480
  # @note When making an API call, you may pass DescribeNodegroupRequest
1311
1481
  # data as a hash:
1312
1482
  #
@@ -1398,6 +1568,56 @@ module Aws::EKS
1398
1568
  include Aws::Structure
1399
1569
  end
1400
1570
 
1571
+ # @note When making an API call, you may pass DisassociateIdentityProviderConfigRequest
1572
+ # data as a hash:
1573
+ #
1574
+ # {
1575
+ # cluster_name: "String", # required
1576
+ # identity_provider_config: { # required
1577
+ # type: "String", # required
1578
+ # name: "String", # required
1579
+ # },
1580
+ # client_request_token: "String",
1581
+ # }
1582
+ #
1583
+ # @!attribute [rw] cluster_name
1584
+ # The name of the cluster to disassociate an identity provider from.
1585
+ # @return [String]
1586
+ #
1587
+ # @!attribute [rw] identity_provider_config
1588
+ # An object that represents an identity provider configuration.
1589
+ # @return [Types::IdentityProviderConfig]
1590
+ #
1591
+ # @!attribute [rw] client_request_token
1592
+ # A unique, case-sensitive identifier that you provide to ensure the
1593
+ # idempotency of the request.
1594
+ #
1595
+ # **A suitable default value is auto-generated.** You should normally
1596
+ # not need to pass this option.
1597
+ # @return [String]
1598
+ #
1599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfigRequest AWS API Documentation
1600
+ #
1601
+ class DisassociateIdentityProviderConfigRequest < Struct.new(
1602
+ :cluster_name,
1603
+ :identity_provider_config,
1604
+ :client_request_token)
1605
+ SENSITIVE = []
1606
+ include Aws::Structure
1607
+ end
1608
+
1609
+ # @!attribute [rw] update
1610
+ # An object representing an asynchronous update.
1611
+ # @return [Types::Update]
1612
+ #
1613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfigResponse AWS API Documentation
1614
+ #
1615
+ class DisassociateIdentityProviderConfigResponse < Struct.new(
1616
+ :update)
1617
+ SENSITIVE = []
1618
+ include Aws::Structure
1619
+ end
1620
+
1401
1621
  # The encryption configuration for the cluster.
1402
1622
  #
1403
1623
  # @note When making an API call, you may pass EncryptionConfig
@@ -1574,12 +1794,11 @@ module Aws::EKS
1574
1794
  include Aws::Structure
1575
1795
  end
1576
1796
 
1577
- # An object representing an identity provider for authentication
1578
- # credentials.
1797
+ # An object representing an identity provider.
1579
1798
  #
1580
1799
  # @!attribute [rw] oidc
1581
- # The [OpenID Connect][1] identity provider information for the
1582
- # cluster.
1800
+ # An object representing the [OpenID Connect][1] identity provider
1801
+ # information.
1583
1802
  #
1584
1803
  #
1585
1804
  #
@@ -1594,6 +1813,48 @@ module Aws::EKS
1594
1813
  include Aws::Structure
1595
1814
  end
1596
1815
 
1816
+ # An object representing an identity provider configuration.
1817
+ #
1818
+ # @note When making an API call, you may pass IdentityProviderConfig
1819
+ # data as a hash:
1820
+ #
1821
+ # {
1822
+ # type: "String", # required
1823
+ # name: "String", # required
1824
+ # }
1825
+ #
1826
+ # @!attribute [rw] type
1827
+ # The type of the identity provider configuration.
1828
+ # @return [String]
1829
+ #
1830
+ # @!attribute [rw] name
1831
+ # The name of the identity provider configuration.
1832
+ # @return [String]
1833
+ #
1834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/IdentityProviderConfig AWS API Documentation
1835
+ #
1836
+ class IdentityProviderConfig < Struct.new(
1837
+ :type,
1838
+ :name)
1839
+ SENSITIVE = []
1840
+ include Aws::Structure
1841
+ end
1842
+
1843
+ # An object that represents an identity configuration.
1844
+ #
1845
+ # @!attribute [rw] oidc
1846
+ # An object that represents an OpenID Connect (OIDC) identity provider
1847
+ # configuration.
1848
+ # @return [Types::OidcIdentityProviderConfig]
1849
+ #
1850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/IdentityProviderConfigResponse AWS API Documentation
1851
+ #
1852
+ class IdentityProviderConfigResponse < Struct.new(
1853
+ :oidc)
1854
+ SENSITIVE = []
1855
+ include Aws::Structure
1856
+ end
1857
+
1597
1858
  # The specified parameter is invalid. Review the available parameters
1598
1859
  # for the API request.
1599
1860
  #
@@ -1721,8 +1982,8 @@ module Aws::EKS
1721
1982
  #
1722
1983
  # * **NodeCreationFailure**\: Your launched instances are unable to
1723
1984
  # register with your Amazon EKS cluster. Common causes of this
1724
- # failure are insufficient [worker node IAM role][2] permissions or
1725
- # lack of outbound internet access for the nodes.
1985
+ # failure are insufficient [node IAM role][2] permissions or lack of
1986
+ # outbound internet access for the nodes.
1726
1987
  #
1727
1988
  #
1728
1989
  #
@@ -2060,6 +2321,71 @@ module Aws::EKS
2060
2321
  include Aws::Structure
2061
2322
  end
2062
2323
 
2324
+ # @note When making an API call, you may pass ListIdentityProviderConfigsRequest
2325
+ # data as a hash:
2326
+ #
2327
+ # {
2328
+ # cluster_name: "String", # required
2329
+ # max_results: 1,
2330
+ # next_token: "String",
2331
+ # }
2332
+ #
2333
+ # @!attribute [rw] cluster_name
2334
+ # The cluster name that you want to list identity provider
2335
+ # configurations for.
2336
+ # @return [String]
2337
+ #
2338
+ # @!attribute [rw] max_results
2339
+ # The maximum number of identity provider configurations returned by
2340
+ # `ListIdentityProviderConfigs` in paginated output. When you use this
2341
+ # parameter, `ListIdentityProviderConfigs` returns only `maxResults`
2342
+ # results in a single page along with a `nextToken` response element.
2343
+ # You can see the remaining results of the initial request by sending
2344
+ # another `ListIdentityProviderConfigs` request with the returned
2345
+ # `nextToken` value. This value can be between 1 and 100. If you
2346
+ # don't use this parameter, `ListIdentityProviderConfigs` returns up
2347
+ # to 100 results and a `nextToken` value, if applicable.
2348
+ # @return [Integer]
2349
+ #
2350
+ # @!attribute [rw] next_token
2351
+ # The `nextToken` value returned from a previous paginated
2352
+ # `IdentityProviderConfigsRequest` where `maxResults` was used and the
2353
+ # results exceeded the value of that parameter. Pagination continues
2354
+ # from the end of the previous results that returned the `nextToken`
2355
+ # value.
2356
+ # @return [String]
2357
+ #
2358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigsRequest AWS API Documentation
2359
+ #
2360
+ class ListIdentityProviderConfigsRequest < Struct.new(
2361
+ :cluster_name,
2362
+ :max_results,
2363
+ :next_token)
2364
+ SENSITIVE = []
2365
+ include Aws::Structure
2366
+ end
2367
+
2368
+ # @!attribute [rw] identity_provider_configs
2369
+ # The identity provider configurations for the cluster.
2370
+ # @return [Array<Types::IdentityProviderConfig>]
2371
+ #
2372
+ # @!attribute [rw] next_token
2373
+ # The `nextToken` value returned from a previous paginated
2374
+ # `ListIdentityProviderConfigsResponse` where `maxResults` was used
2375
+ # and the results exceeded the value of that parameter. Pagination
2376
+ # continues from the end of the previous results that returned the
2377
+ # `nextToken` value.
2378
+ # @return [String]
2379
+ #
2380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigsResponse AWS API Documentation
2381
+ #
2382
+ class ListIdentityProviderConfigsResponse < Struct.new(
2383
+ :identity_provider_configs,
2384
+ :next_token)
2385
+ SENSITIVE = []
2386
+ include Aws::Structure
2387
+ end
2388
+
2063
2389
  # @note When making an API call, you may pass ListNodegroupsRequest
2064
2390
  # data as a hash:
2065
2391
  #
@@ -2365,10 +2691,10 @@ module Aws::EKS
2365
2691
  # @return [String]
2366
2692
  #
2367
2693
  # @!attribute [rw] node_role
2368
- # The IAM role associated with your node group. The Amazon EKS worker
2369
- # node `kubelet` daemon makes calls to AWS APIs on your behalf. Worker
2370
- # nodes receive permissions for these API calls through an IAM
2371
- # instance profile and associated policies.
2694
+ # The IAM role associated with your node group. The Amazon EKS node
2695
+ # `kubelet` daemon makes calls to AWS APIs on your behalf. Nodes
2696
+ # receive permissions for these API calls through an IAM instance
2697
+ # profile and associated policies.
2372
2698
  # @return [String]
2373
2699
  #
2374
2700
  # @!attribute [rw] labels
@@ -2461,7 +2787,7 @@ module Aws::EKS
2461
2787
  #
2462
2788
  # @!attribute [rw] remote_access_security_group
2463
2789
  # The remote access security group associated with the node group.
2464
- # This security group controls SSH access to the worker nodes.
2790
+ # This security group controls SSH access to the nodes.
2465
2791
  # @return [String]
2466
2792
  #
2467
2793
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupResources AWS API Documentation
@@ -2488,19 +2814,24 @@ module Aws::EKS
2488
2814
  # }
2489
2815
  #
2490
2816
  # @!attribute [rw] min_size
2491
- # The minimum number of worker nodes that the managed node group can
2492
- # scale in to. This number must be greater than zero.
2817
+ # The minimum number of nodes that the managed node group can scale in
2818
+ # to. This number must be greater than zero.
2493
2819
  # @return [Integer]
2494
2820
  #
2495
2821
  # @!attribute [rw] max_size
2496
- # The maximum number of worker nodes that the managed node group can
2497
- # scale out to. Managed node groups can support up to 100 nodes by
2498
- # default.
2822
+ # The maximum number of nodes that the managed node group can scale
2823
+ # out to. For information about the maximum number that you can
2824
+ # specify, see [Amazon EKS service quotas][1] in the *Amazon EKS User
2825
+ # Guide*.
2826
+ #
2827
+ #
2828
+ #
2829
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html
2499
2830
  # @return [Integer]
2500
2831
  #
2501
2832
  # @!attribute [rw] desired_size
2502
- # The current number of worker nodes that the managed node group
2503
- # should maintain.
2833
+ # The current number of nodes that the managed node group should
2834
+ # maintain.
2504
2835
  # @return [Integer]
2505
2836
  #
2506
2837
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupScalingConfig AWS API Documentation
@@ -2527,15 +2858,15 @@ module Aws::EKS
2527
2858
  include Aws::Structure
2528
2859
  end
2529
2860
 
2530
- # An object representing the [OpenID Connect][1] identity provider
2531
- # information for the cluster.
2861
+ # An object representing the [OpenID Connect][1] (OIDC) identity
2862
+ # provider information for the cluster.
2532
2863
  #
2533
2864
  #
2534
2865
  #
2535
2866
  # [1]: https://openid.net/connect/
2536
2867
  #
2537
2868
  # @!attribute [rw] issuer
2538
- # The issuer URL for the OpenID Connect identity provider.
2869
+ # The issuer URL for the OIDC identity provider.
2539
2870
  # @return [String]
2540
2871
  #
2541
2872
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OIDC AWS API Documentation
@@ -2546,6 +2877,187 @@ module Aws::EKS
2546
2877
  include Aws::Structure
2547
2878
  end
2548
2879
 
2880
+ # An object that represents the configuration for an OpenID Connect
2881
+ # (OIDC) identity provider.
2882
+ #
2883
+ # @!attribute [rw] identity_provider_config_name
2884
+ # The name of the configuration.
2885
+ # @return [String]
2886
+ #
2887
+ # @!attribute [rw] identity_provider_config_arn
2888
+ # The ARN of the configuration.
2889
+ # @return [String]
2890
+ #
2891
+ # @!attribute [rw] cluster_name
2892
+ # The cluster that the configuration is associated to.
2893
+ # @return [String]
2894
+ #
2895
+ # @!attribute [rw] issuer_url
2896
+ # The URL of the OIDC identity provider that allows the API server to
2897
+ # discover public signing keys for verifying tokens.
2898
+ # @return [String]
2899
+ #
2900
+ # @!attribute [rw] client_id
2901
+ # This is also known as *audience*. The ID of the client application
2902
+ # that makes authentication requests to the OIDC identity provider.
2903
+ # @return [String]
2904
+ #
2905
+ # @!attribute [rw] username_claim
2906
+ # The JSON Web token (JWT) claim that is used as the username.
2907
+ # @return [String]
2908
+ #
2909
+ # @!attribute [rw] username_prefix
2910
+ # The prefix that is prepended to username claims to prevent clashes
2911
+ # with existing names. The prefix can't contain `system:`
2912
+ # @return [String]
2913
+ #
2914
+ # @!attribute [rw] groups_claim
2915
+ # The JSON web token (JWT) claim that the provider uses to return your
2916
+ # groups.
2917
+ # @return [String]
2918
+ #
2919
+ # @!attribute [rw] groups_prefix
2920
+ # The prefix that is prepended to group claims to prevent clashes with
2921
+ # existing names (such as `system:` groups). For example, the value`
2922
+ # oidc:` creates group names like `oidc:engineering` and `oidc:infra`.
2923
+ # The prefix can't contain `system:`
2924
+ # @return [String]
2925
+ #
2926
+ # @!attribute [rw] required_claims
2927
+ # The key-value pairs that describe required claims in the identity
2928
+ # token. If set, each claim is verified to be present in the token
2929
+ # with a matching value.
2930
+ # @return [Hash<String,String>]
2931
+ #
2932
+ # @!attribute [rw] tags
2933
+ # The metadata to apply to the provider configuration to assist with
2934
+ # categorization and organization. Each tag consists of a key and an
2935
+ # optional value, both of which you defined.
2936
+ # @return [Hash<String,String>]
2937
+ #
2938
+ # @!attribute [rw] status
2939
+ # The status of the OIDC identity provider.
2940
+ # @return [String]
2941
+ #
2942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OidcIdentityProviderConfig AWS API Documentation
2943
+ #
2944
+ class OidcIdentityProviderConfig < Struct.new(
2945
+ :identity_provider_config_name,
2946
+ :identity_provider_config_arn,
2947
+ :cluster_name,
2948
+ :issuer_url,
2949
+ :client_id,
2950
+ :username_claim,
2951
+ :username_prefix,
2952
+ :groups_claim,
2953
+ :groups_prefix,
2954
+ :required_claims,
2955
+ :tags,
2956
+ :status)
2957
+ SENSITIVE = []
2958
+ include Aws::Structure
2959
+ end
2960
+
2961
+ # An object representing an OpenID Connect (OIDC) configuration. Before
2962
+ # associating an OIDC identity provider to your cluster, review the
2963
+ # considerations in [Authenticating users for your cluster from an
2964
+ # OpenID Connect identity provider][1] in the *Amazon EKS User Guide*.
2965
+ #
2966
+ #
2967
+ #
2968
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/authenticate-oidc-identity-provider.html
2969
+ #
2970
+ # @note When making an API call, you may pass OidcIdentityProviderConfigRequest
2971
+ # data as a hash:
2972
+ #
2973
+ # {
2974
+ # identity_provider_config_name: "String", # required
2975
+ # issuer_url: "String", # required
2976
+ # client_id: "String", # required
2977
+ # username_claim: "String",
2978
+ # username_prefix: "String",
2979
+ # groups_claim: "String",
2980
+ # groups_prefix: "String",
2981
+ # required_claims: {
2982
+ # "requiredClaimsKey" => "requiredClaimsValue",
2983
+ # },
2984
+ # }
2985
+ #
2986
+ # @!attribute [rw] identity_provider_config_name
2987
+ # The name of the OIDC provider configuration.
2988
+ # @return [String]
2989
+ #
2990
+ # @!attribute [rw] issuer_url
2991
+ # The URL of the OpenID identity provider that allows the API server
2992
+ # to discover public signing keys for verifying tokens. The URL must
2993
+ # begin with `https://` and should correspond to the `iss` claim in
2994
+ # the provider's OIDC ID tokens. Per the OIDC standard, path
2995
+ # components are allowed but query parameters are not. Typically the
2996
+ # URL consists of only a hostname, like `https://server.example.org`
2997
+ # or `https://example.com`. This URL should point to the level below
2998
+ # `.well-known/openid-configuration` and must be publicly accessible
2999
+ # over the internet.
3000
+ # @return [String]
3001
+ #
3002
+ # @!attribute [rw] client_id
3003
+ # This is also known as *audience*. The ID for the client application
3004
+ # that makes authentication requests to the OpenID identity provider.
3005
+ # @return [String]
3006
+ #
3007
+ # @!attribute [rw] username_claim
3008
+ # The JSON Web Token (JWT) claim to use as the username. The default
3009
+ # is `sub`, which is expected to be a unique identifier of the end
3010
+ # user. You can choose other claims, such as `email` or `name`,
3011
+ # depending on the OpenID identity provider. Claims other than `email`
3012
+ # are prefixed with the issuer URL to prevent naming clashes with
3013
+ # other plug-ins.
3014
+ # @return [String]
3015
+ #
3016
+ # @!attribute [rw] username_prefix
3017
+ # The prefix that is prepended to username claims to prevent clashes
3018
+ # with existing names. If you do not provide this field, and
3019
+ # `username` is a value other than `email`, the prefix defaults to
3020
+ # `issuerurl#`. You can use the value `-` to disable all prefixing.
3021
+ # @return [String]
3022
+ #
3023
+ # @!attribute [rw] groups_claim
3024
+ # The JWT claim that the provider uses to return your groups.
3025
+ # @return [String]
3026
+ #
3027
+ # @!attribute [rw] groups_prefix
3028
+ # The prefix that is prepended to group claims to prevent clashes with
3029
+ # existing names (such as `system:` groups). For example, the value`
3030
+ # oidc:` will create group names like `oidc:engineering` and
3031
+ # `oidc:infra`.
3032
+ # @return [String]
3033
+ #
3034
+ # @!attribute [rw] required_claims
3035
+ # The key value pairs that describe required claims in the identity
3036
+ # token. If set, each claim is verified to be present in the token
3037
+ # with a matching value. For the maximum number of claims that you can
3038
+ # require, see [Amazon EKS service quotas][1] in the *Amazon EKS User
3039
+ # Guide*.
3040
+ #
3041
+ #
3042
+ #
3043
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html
3044
+ # @return [Hash<String,String>]
3045
+ #
3046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OidcIdentityProviderConfigRequest AWS API Documentation
3047
+ #
3048
+ class OidcIdentityProviderConfigRequest < Struct.new(
3049
+ :identity_provider_config_name,
3050
+ :issuer_url,
3051
+ :client_id,
3052
+ :username_claim,
3053
+ :username_prefix,
3054
+ :groups_claim,
3055
+ :groups_prefix,
3056
+ :required_claims)
3057
+ SENSITIVE = []
3058
+ include Aws::Structure
3059
+ end
3060
+
2549
3061
  # Identifies the AWS Key Management Service (AWS KMS) customer master
2550
3062
  # key (CMK) used to encrypt the secrets.
2551
3063
  #
@@ -2590,9 +3102,9 @@ module Aws::EKS
2590
3102
  #
2591
3103
  # @!attribute [rw] ec2_ssh_key
2592
3104
  # The Amazon EC2 SSH key that provides access for SSH communication
2593
- # with the worker nodes in the managed node group. For more
2594
- # information, see [Amazon EC2 Key Pairs][1] in the *Amazon Elastic
2595
- # Compute Cloud User Guide for Linux Instances*.
3105
+ # with the nodes in the managed node group. For more information, see
3106
+ # [Amazon EC2 Key Pairs][1] in the *Amazon Elastic Compute Cloud User
3107
+ # Guide for Linux Instances*.
2596
3108
  #
2597
3109
  #
2598
3110
  #
@@ -2601,11 +3113,11 @@ module Aws::EKS
2601
3113
  #
2602
3114
  # @!attribute [rw] source_security_groups
2603
3115
  # The security groups that are allowed SSH access (port 22) to the
2604
- # worker nodes. If you specify an Amazon EC2 SSH key but do not
2605
- # specify a source security group when you create a managed node
2606
- # group, then port 22 on the worker nodes is opened to the internet
2607
- # (0.0.0.0/0). For more information, see [Security Groups for Your
2608
- # VPC][1] in the *Amazon Virtual Private Cloud User Guide*.
3116
+ # nodes. If you specify an Amazon EC2 SSH key but do not specify a
3117
+ # source security group when you create a managed node group, then
3118
+ # port 22 on the nodes is opened to the internet (0.0.0.0/0). For more
3119
+ # information, see [Security Groups for Your VPC][1] in the *Amazon
3120
+ # Virtual Private Cloud User Guide*.
2609
3121
  #
2610
3122
  #
2611
3123
  #
@@ -3348,19 +3860,18 @@ module Aws::EKS
3348
3860
  # }
3349
3861
  #
3350
3862
  # @!attribute [rw] subnet_ids
3351
- # Specify subnets for your Amazon EKS worker nodes. Amazon EKS creates
3863
+ # Specify subnets for your Amazon EKS nodes. Amazon EKS creates
3352
3864
  # cross-account elastic network interfaces in these subnets to allow
3353
- # communication between your worker nodes and the Kubernetes control
3354
- # plane.
3865
+ # communication between your nodes and the Kubernetes control plane.
3355
3866
  # @return [Array<String>]
3356
3867
  #
3357
3868
  # @!attribute [rw] security_group_ids
3358
3869
  # Specify one or more security groups for the cross-account elastic
3359
3870
  # network interfaces that Amazon EKS creates to use to allow
3360
- # communication between your worker nodes and the Kubernetes control
3361
- # plane. If you don't specify any security groups, then familiarize
3362
- # yourself with the difference between Amazon EKS defaults for
3363
- # clusters deployed with Kubernetes:
3871
+ # communication between your nodes and the Kubernetes control plane.
3872
+ # If you don't specify any security groups, then familiarize yourself
3873
+ # with the difference between Amazon EKS defaults for clusters
3874
+ # deployed with Kubernetes:
3364
3875
  #
3365
3876
  # * 1\.14 Amazon EKS platform version `eks.2` and earlier
3366
3877
  #
@@ -3394,12 +3905,12 @@ module Aws::EKS
3394
3905
  # access, Kubernetes API requests from within your cluster's VPC use
3395
3906
  # the private VPC endpoint. The default value for this parameter is
3396
3907
  # `false`, which disables private access for your Kubernetes API
3397
- # server. If you disable private access and you have worker nodes or
3398
- # AWS Fargate pods in the cluster, then ensure that
3399
- # `publicAccessCidrs` includes the necessary CIDR blocks for
3400
- # communication with the worker nodes or Fargate pods. For more
3401
- # information, see [Amazon EKS Cluster Endpoint Access Control][1] in
3402
- # the <i> <i>Amazon EKS User Guide</i> </i>.
3908
+ # server. If you disable private access and you have nodes or AWS
3909
+ # Fargate pods in the cluster, then ensure that `publicAccessCidrs`
3910
+ # includes the necessary CIDR blocks for communication with the nodes
3911
+ # or Fargate pods. For more information, see [Amazon EKS Cluster
3912
+ # Endpoint Access Control][1] in the <i> <i>Amazon EKS User Guide</i>
3913
+ # </i>.
3403
3914
  #
3404
3915
  #
3405
3916
  #
@@ -3411,8 +3922,8 @@ module Aws::EKS
3411
3922
  # Kubernetes API server endpoint. Communication to the endpoint from
3412
3923
  # addresses outside of the CIDR blocks that you specify is denied. The
3413
3924
  # default value is `0.0.0.0/0`. If you've disabled private endpoint
3414
- # access and you have worker nodes or AWS Fargate pods in the cluster,
3415
- # then ensure that you specify the necessary CIDR blocks. For more
3925
+ # access and you have nodes or AWS Fargate pods in the cluster, then
3926
+ # ensure that you specify the necessary CIDR blocks. For more
3416
3927
  # information, see [Amazon EKS Cluster Endpoint Access Control][1] in
3417
3928
  # the <i> <i>Amazon EKS User Guide</i> </i>.
3418
3929
  #
@@ -3443,7 +3954,7 @@ module Aws::EKS
3443
3954
  # @!attribute [rw] security_group_ids
3444
3955
  # The security groups associated with the cross-account elastic
3445
3956
  # network interfaces that are used to allow communication between your
3446
- # worker nodes and the Kubernetes control plane.
3957
+ # nodes and the Kubernetes control plane.
3447
3958
  # @return [Array<String>]
3448
3959
  #
3449
3960
  # @!attribute [rw] cluster_security_group_id
@@ -3468,12 +3979,12 @@ module Aws::EKS
3468
3979
  # endpoint is enabled. If the Amazon EKS private API server endpoint
3469
3980
  # is enabled, Kubernetes API requests that originate from within your
3470
3981
  # cluster's VPC use the private VPC endpoint instead of traversing
3471
- # the internet. If this value is disabled and you have worker nodes or
3472
- # AWS Fargate pods in the cluster, then ensure that
3473
- # `publicAccessCidrs` includes the necessary CIDR blocks for
3474
- # communication with the worker nodes or Fargate pods. For more
3475
- # information, see [Amazon EKS Cluster Endpoint Access Control][1] in
3476
- # the <i> <i>Amazon EKS User Guide</i> </i>.
3982
+ # the internet. If this value is disabled and you have nodes or AWS
3983
+ # Fargate pods in the cluster, then ensure that `publicAccessCidrs`
3984
+ # includes the necessary CIDR blocks for communication with the nodes
3985
+ # or Fargate pods. For more information, see [Amazon EKS Cluster
3986
+ # Endpoint Access Control][1] in the <i> <i>Amazon EKS User Guide</i>
3987
+ # </i>.
3477
3988
  #
3478
3989
  #
3479
3990
  #
@@ -3485,10 +3996,10 @@ module Aws::EKS
3485
3996
  # Kubernetes API server endpoint. Communication to the endpoint from
3486
3997
  # addresses outside of the listed CIDR blocks is denied. The default
3487
3998
  # value is `0.0.0.0/0`. If you've disabled private endpoint access
3488
- # and you have worker nodes or AWS Fargate pods in the cluster, then
3489
- # ensure that the necessary CIDR blocks are listed. For more
3490
- # information, see [Amazon EKS Cluster Endpoint Access Control][1] in
3491
- # the <i> <i>Amazon EKS User Guide</i> </i>.
3999
+ # and you have nodes or AWS Fargate pods in the cluster, then ensure
4000
+ # that the necessary CIDR blocks are listed. For more information, see
4001
+ # [Amazon EKS Cluster Endpoint Access Control][1] in the <i> <i>Amazon
4002
+ # EKS User Guide</i> </i>.
3492
4003
  #
3493
4004
  #
3494
4005
  #