aws-sdk-eks 1.46.0 → 1.51.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.
@@ -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
  #