aws-sdk-eks 1.69.0 → 1.91.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -40,6 +40,10 @@ module Aws::EKS
40
40
  Certificate = Shapes::StructureShape.new(name: 'Certificate')
41
41
  ClientException = Shapes::StructureShape.new(name: 'ClientException')
42
42
  Cluster = Shapes::StructureShape.new(name: 'Cluster')
43
+ ClusterHealth = Shapes::StructureShape.new(name: 'ClusterHealth')
44
+ ClusterIssue = Shapes::StructureShape.new(name: 'ClusterIssue')
45
+ ClusterIssueCode = Shapes::StringShape.new(name: 'ClusterIssueCode')
46
+ ClusterIssueList = Shapes::ListShape.new(name: 'ClusterIssueList')
43
47
  ClusterName = Shapes::StringShape.new(name: 'ClusterName')
44
48
  ClusterStatus = Shapes::StringShape.new(name: 'ClusterStatus')
45
49
  Compatibilities = Shapes::ListShape.new(name: 'Compatibilities')
@@ -47,6 +51,8 @@ module Aws::EKS
47
51
  ConnectorConfigProvider = Shapes::StringShape.new(name: 'ConnectorConfigProvider')
48
52
  ConnectorConfigRequest = Shapes::StructureShape.new(name: 'ConnectorConfigRequest')
49
53
  ConnectorConfigResponse = Shapes::StructureShape.new(name: 'ConnectorConfigResponse')
54
+ ControlPlanePlacementRequest = Shapes::StructureShape.new(name: 'ControlPlanePlacementRequest')
55
+ ControlPlanePlacementResponse = Shapes::StructureShape.new(name: 'ControlPlanePlacementResponse')
50
56
  CreateAddonRequest = Shapes::StructureShape.new(name: 'CreateAddonRequest')
51
57
  CreateAddonResponse = Shapes::StructureShape.new(name: 'CreateAddonResponse')
52
58
  CreateClusterRequest = Shapes::StructureShape.new(name: 'CreateClusterRequest')
@@ -65,6 +71,8 @@ module Aws::EKS
65
71
  DeleteNodegroupResponse = Shapes::StructureShape.new(name: 'DeleteNodegroupResponse')
66
72
  DeregisterClusterRequest = Shapes::StructureShape.new(name: 'DeregisterClusterRequest')
67
73
  DeregisterClusterResponse = Shapes::StructureShape.new(name: 'DeregisterClusterResponse')
74
+ DescribeAddonConfigurationRequest = Shapes::StructureShape.new(name: 'DescribeAddonConfigurationRequest')
75
+ DescribeAddonConfigurationResponse = Shapes::StructureShape.new(name: 'DescribeAddonConfigurationResponse')
68
76
  DescribeAddonRequest = Shapes::StructureShape.new(name: 'DescribeAddonRequest')
69
77
  DescribeAddonResponse = Shapes::StructureShape.new(name: 'DescribeAddonResponse')
70
78
  DescribeAddonVersionsRequest = Shapes::StructureShape.new(name: 'DescribeAddonVersionsRequest')
@@ -100,6 +108,7 @@ module Aws::EKS
100
108
  IncludeClustersList = Shapes::ListShape.new(name: 'IncludeClustersList')
101
109
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
102
110
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
111
+ IpFamily = Shapes::StringShape.new(name: 'IpFamily')
103
112
  Issue = Shapes::StructureShape.new(name: 'Issue')
104
113
  IssueList = Shapes::ListShape.new(name: 'IssueList')
105
114
  KubernetesNetworkConfigRequest = Shapes::StructureShape.new(name: 'KubernetesNetworkConfigRequest')
@@ -129,6 +138,7 @@ module Aws::EKS
129
138
  LogType = Shapes::StringShape.new(name: 'LogType')
130
139
  LogTypes = Shapes::ListShape.new(name: 'LogTypes')
131
140
  Logging = Shapes::StructureShape.new(name: 'Logging')
141
+ MarketplaceInformation = Shapes::StructureShape.new(name: 'MarketplaceInformation')
132
142
  Nodegroup = Shapes::StructureShape.new(name: 'Nodegroup')
133
143
  NodegroupHealth = Shapes::StructureShape.new(name: 'NodegroupHealth')
134
144
  NodegroupIssueCode = Shapes::StringShape.new(name: 'NodegroupIssueCode')
@@ -141,6 +151,8 @@ module Aws::EKS
141
151
  OIDC = Shapes::StructureShape.new(name: 'OIDC')
142
152
  OidcIdentityProviderConfig = Shapes::StructureShape.new(name: 'OidcIdentityProviderConfig')
143
153
  OidcIdentityProviderConfigRequest = Shapes::StructureShape.new(name: 'OidcIdentityProviderConfigRequest')
154
+ OutpostConfigRequest = Shapes::StructureShape.new(name: 'OutpostConfigRequest')
155
+ OutpostConfigResponse = Shapes::StructureShape.new(name: 'OutpostConfigResponse')
144
156
  PercentCapacity = Shapes::IntegerShape.new(name: 'PercentCapacity')
145
157
  Provider = Shapes::StructureShape.new(name: 'Provider')
146
158
  RegisterClusterRequest = Shapes::StructureShape.new(name: 'RegisterClusterRequest')
@@ -214,6 +226,10 @@ module Aws::EKS
214
226
  Addon.add_member(:modified_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "modifiedAt"))
215
227
  Addon.add_member(:service_account_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "serviceAccountRoleArn"))
216
228
  Addon.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
229
+ Addon.add_member(:publisher, Shapes::ShapeRef.new(shape: String, location_name: "publisher"))
230
+ Addon.add_member(:owner, Shapes::ShapeRef.new(shape: String, location_name: "owner"))
231
+ Addon.add_member(:marketplace_information, Shapes::ShapeRef.new(shape: MarketplaceInformation, location_name: "marketplaceInformation"))
232
+ Addon.add_member(:configuration_values, Shapes::ShapeRef.new(shape: String, location_name: "configurationValues"))
217
233
  Addon.struct_class = Types::Addon
218
234
 
219
235
  AddonHealth.add_member(:issues, Shapes::ShapeRef.new(shape: AddonIssueList, location_name: "issues"))
@@ -222,6 +238,9 @@ module Aws::EKS
222
238
  AddonInfo.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, location_name: "addonName"))
223
239
  AddonInfo.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "type"))
224
240
  AddonInfo.add_member(:addon_versions, Shapes::ShapeRef.new(shape: AddonVersionInfoList, location_name: "addonVersions"))
241
+ AddonInfo.add_member(:publisher, Shapes::ShapeRef.new(shape: String, location_name: "publisher"))
242
+ AddonInfo.add_member(:owner, Shapes::ShapeRef.new(shape: String, location_name: "owner"))
243
+ AddonInfo.add_member(:marketplace_information, Shapes::ShapeRef.new(shape: MarketplaceInformation, location_name: "marketplaceInformation"))
225
244
  AddonInfo.struct_class = Types::AddonInfo
226
245
 
227
246
  AddonIssue.add_member(:code, Shapes::ShapeRef.new(shape: AddonIssueCode, location_name: "code"))
@@ -234,6 +253,7 @@ module Aws::EKS
234
253
  AddonVersionInfo.add_member(:addon_version, Shapes::ShapeRef.new(shape: String, location_name: "addonVersion"))
235
254
  AddonVersionInfo.add_member(:architecture, Shapes::ShapeRef.new(shape: StringList, location_name: "architecture"))
236
255
  AddonVersionInfo.add_member(:compatibilities, Shapes::ShapeRef.new(shape: Compatibilities, location_name: "compatibilities"))
256
+ AddonVersionInfo.add_member(:requires_configuration, Shapes::ShapeRef.new(shape: Boolean, location_name: "requiresConfiguration"))
237
257
  AddonVersionInfo.struct_class = Types::AddonVersionInfo
238
258
 
239
259
  AddonVersionInfoList.member = Shapes::ShapeRef.new(shape: AddonVersionInfo)
@@ -292,8 +312,21 @@ module Aws::EKS
292
312
  Cluster.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
293
313
  Cluster.add_member(:encryption_config, Shapes::ShapeRef.new(shape: EncryptionConfigList, location_name: "encryptionConfig"))
294
314
  Cluster.add_member(:connector_config, Shapes::ShapeRef.new(shape: ConnectorConfigResponse, location_name: "connectorConfig"))
315
+ Cluster.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
316
+ Cluster.add_member(:health, Shapes::ShapeRef.new(shape: ClusterHealth, location_name: "health"))
317
+ Cluster.add_member(:outpost_config, Shapes::ShapeRef.new(shape: OutpostConfigResponse, location_name: "outpostConfig"))
295
318
  Cluster.struct_class = Types::Cluster
296
319
 
320
+ ClusterHealth.add_member(:issues, Shapes::ShapeRef.new(shape: ClusterIssueList, location_name: "issues"))
321
+ ClusterHealth.struct_class = Types::ClusterHealth
322
+
323
+ ClusterIssue.add_member(:code, Shapes::ShapeRef.new(shape: ClusterIssueCode, location_name: "code"))
324
+ ClusterIssue.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
325
+ ClusterIssue.add_member(:resource_ids, Shapes::ShapeRef.new(shape: StringList, location_name: "resourceIds"))
326
+ ClusterIssue.struct_class = Types::ClusterIssue
327
+
328
+ ClusterIssueList.member = Shapes::ShapeRef.new(shape: ClusterIssue)
329
+
297
330
  Compatibilities.member = Shapes::ShapeRef.new(shape: Compatibility)
298
331
 
299
332
  Compatibility.add_member(:cluster_version, Shapes::ShapeRef.new(shape: String, location_name: "clusterVersion"))
@@ -312,6 +345,12 @@ module Aws::EKS
312
345
  ConnectorConfigResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, location_name: "roleArn"))
313
346
  ConnectorConfigResponse.struct_class = Types::ConnectorConfigResponse
314
347
 
348
+ ControlPlanePlacementRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: String, location_name: "groupName"))
349
+ ControlPlanePlacementRequest.struct_class = Types::ControlPlanePlacementRequest
350
+
351
+ ControlPlanePlacementResponse.add_member(:group_name, Shapes::ShapeRef.new(shape: String, location_name: "groupName"))
352
+ ControlPlanePlacementResponse.struct_class = Types::ControlPlanePlacementResponse
353
+
315
354
  CreateAddonRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: ClusterName, required: true, location: "uri", location_name: "name"))
316
355
  CreateAddonRequest.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "addonName"))
317
356
  CreateAddonRequest.add_member(:addon_version, Shapes::ShapeRef.new(shape: String, location_name: "addonVersion"))
@@ -319,6 +358,7 @@ module Aws::EKS
319
358
  CreateAddonRequest.add_member(:resolve_conflicts, Shapes::ShapeRef.new(shape: ResolveConflicts, location_name: "resolveConflicts"))
320
359
  CreateAddonRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
321
360
  CreateAddonRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
361
+ CreateAddonRequest.add_member(:configuration_values, Shapes::ShapeRef.new(shape: String, location_name: "configurationValues"))
322
362
  CreateAddonRequest.struct_class = Types::CreateAddonRequest
323
363
 
324
364
  CreateAddonResponse.add_member(:addon, Shapes::ShapeRef.new(shape: Addon, location_name: "addon"))
@@ -333,6 +373,7 @@ module Aws::EKS
333
373
  CreateClusterRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
334
374
  CreateClusterRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
335
375
  CreateClusterRequest.add_member(:encryption_config, Shapes::ShapeRef.new(shape: EncryptionConfigList, location_name: "encryptionConfig"))
376
+ CreateClusterRequest.add_member(:outpost_config, Shapes::ShapeRef.new(shape: OutpostConfigRequest, location_name: "outpostConfig"))
336
377
  CreateClusterRequest.struct_class = Types::CreateClusterRequest
337
378
 
338
379
  CreateClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "cluster"))
@@ -407,6 +448,15 @@ module Aws::EKS
407
448
  DeregisterClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "cluster"))
408
449
  DeregisterClusterResponse.struct_class = Types::DeregisterClusterResponse
409
450
 
451
+ DescribeAddonConfigurationRequest.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, required: true, location: "querystring", location_name: "addonName"))
452
+ DescribeAddonConfigurationRequest.add_member(:addon_version, Shapes::ShapeRef.new(shape: String, required: true, location: "querystring", location_name: "addonVersion"))
453
+ DescribeAddonConfigurationRequest.struct_class = Types::DescribeAddonConfigurationRequest
454
+
455
+ DescribeAddonConfigurationResponse.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, location_name: "addonName"))
456
+ DescribeAddonConfigurationResponse.add_member(:addon_version, Shapes::ShapeRef.new(shape: String, location_name: "addonVersion"))
457
+ DescribeAddonConfigurationResponse.add_member(:configuration_schema, Shapes::ShapeRef.new(shape: String, location_name: "configurationSchema"))
458
+ DescribeAddonConfigurationResponse.struct_class = Types::DescribeAddonConfigurationResponse
459
+
410
460
  DescribeAddonRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: ClusterName, required: true, location: "uri", location_name: "name"))
411
461
  DescribeAddonRequest.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "addonName"))
412
462
  DescribeAddonRequest.struct_class = Types::DescribeAddonRequest
@@ -418,6 +468,9 @@ module Aws::EKS
418
468
  DescribeAddonVersionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeAddonVersionsRequestMaxResults, location: "querystring", location_name: "maxResults"))
419
469
  DescribeAddonVersionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
420
470
  DescribeAddonVersionsRequest.add_member(:addon_name, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "addonName"))
471
+ DescribeAddonVersionsRequest.add_member(:types, Shapes::ShapeRef.new(shape: StringList, location: "querystring", location_name: "types"))
472
+ DescribeAddonVersionsRequest.add_member(:publishers, Shapes::ShapeRef.new(shape: StringList, location: "querystring", location_name: "publishers"))
473
+ DescribeAddonVersionsRequest.add_member(:owners, Shapes::ShapeRef.new(shape: StringList, location: "querystring", location_name: "owners"))
421
474
  DescribeAddonVersionsRequest.struct_class = Types::DescribeAddonVersionsRequest
422
475
 
423
476
  DescribeAddonVersionsResponse.add_member(:addons, Shapes::ShapeRef.new(shape: Addons, location_name: "addons"))
@@ -536,9 +589,12 @@ module Aws::EKS
536
589
  IssueList.member = Shapes::ShapeRef.new(shape: Issue)
537
590
 
538
591
  KubernetesNetworkConfigRequest.add_member(:service_ipv_4_cidr, Shapes::ShapeRef.new(shape: String, location_name: "serviceIpv4Cidr"))
592
+ KubernetesNetworkConfigRequest.add_member(:ip_family, Shapes::ShapeRef.new(shape: IpFamily, location_name: "ipFamily"))
539
593
  KubernetesNetworkConfigRequest.struct_class = Types::KubernetesNetworkConfigRequest
540
594
 
541
595
  KubernetesNetworkConfigResponse.add_member(:service_ipv_4_cidr, Shapes::ShapeRef.new(shape: String, location_name: "serviceIpv4Cidr"))
596
+ KubernetesNetworkConfigResponse.add_member(:service_ipv_6_cidr, Shapes::ShapeRef.new(shape: String, location_name: "serviceIpv6Cidr"))
597
+ KubernetesNetworkConfigResponse.add_member(:ip_family, Shapes::ShapeRef.new(shape: IpFamily, location_name: "ipFamily"))
542
598
  KubernetesNetworkConfigResponse.struct_class = Types::KubernetesNetworkConfigResponse
543
599
 
544
600
  LaunchTemplateSpecification.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
@@ -619,6 +675,10 @@ module Aws::EKS
619
675
  Logging.add_member(:cluster_logging, Shapes::ShapeRef.new(shape: LogSetups, location_name: "clusterLogging"))
620
676
  Logging.struct_class = Types::Logging
621
677
 
678
+ MarketplaceInformation.add_member(:product_id, Shapes::ShapeRef.new(shape: String, location_name: "productId"))
679
+ MarketplaceInformation.add_member(:product_url, Shapes::ShapeRef.new(shape: String, location_name: "productUrl"))
680
+ MarketplaceInformation.struct_class = Types::MarketplaceInformation
681
+
622
682
  Nodegroup.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, location_name: "nodegroupName"))
623
683
  Nodegroup.add_member(:nodegroup_arn, Shapes::ShapeRef.new(shape: String, location_name: "nodegroupArn"))
624
684
  Nodegroup.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
@@ -690,6 +750,16 @@ module Aws::EKS
690
750
  OidcIdentityProviderConfigRequest.add_member(:required_claims, Shapes::ShapeRef.new(shape: requiredClaimsMap, location_name: "requiredClaims"))
691
751
  OidcIdentityProviderConfigRequest.struct_class = Types::OidcIdentityProviderConfigRequest
692
752
 
753
+ OutpostConfigRequest.add_member(:outpost_arns, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "outpostArns"))
754
+ OutpostConfigRequest.add_member(:control_plane_instance_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "controlPlaneInstanceType"))
755
+ OutpostConfigRequest.add_member(:control_plane_placement, Shapes::ShapeRef.new(shape: ControlPlanePlacementRequest, location_name: "controlPlanePlacement"))
756
+ OutpostConfigRequest.struct_class = Types::OutpostConfigRequest
757
+
758
+ OutpostConfigResponse.add_member(:outpost_arns, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "outpostArns"))
759
+ OutpostConfigResponse.add_member(:control_plane_instance_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "controlPlaneInstanceType"))
760
+ OutpostConfigResponse.add_member(:control_plane_placement, Shapes::ShapeRef.new(shape: ControlPlanePlacementResponse, location_name: "controlPlanePlacement"))
761
+ OutpostConfigResponse.struct_class = Types::OutpostConfigResponse
762
+
693
763
  Provider.add_member(:key_arn, Shapes::ShapeRef.new(shape: String, location_name: "keyArn"))
694
764
  Provider.struct_class = Types::Provider
695
765
 
@@ -780,6 +850,7 @@ module Aws::EKS
780
850
  UpdateAddonRequest.add_member(:service_account_role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "serviceAccountRoleArn"))
781
851
  UpdateAddonRequest.add_member(:resolve_conflicts, Shapes::ShapeRef.new(shape: ResolveConflicts, location_name: "resolveConflicts"))
782
852
  UpdateAddonRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
853
+ UpdateAddonRequest.add_member(:configuration_values, Shapes::ShapeRef.new(shape: String, location_name: "configurationValues"))
783
854
  UpdateAddonRequest.struct_class = Types::UpdateAddonRequest
784
855
 
785
856
  UpdateAddonResponse.add_member(:update, Shapes::ShapeRef.new(shape: Update, location_name: "update"))
@@ -1050,6 +1121,17 @@ module Aws::EKS
1050
1121
  o.errors << Shapes::ShapeRef.new(shape: ServerException)
1051
1122
  end)
1052
1123
 
1124
+ api.add_operation(:describe_addon_configuration, Seahorse::Model::Operation.new.tap do |o|
1125
+ o.name = "DescribeAddonConfiguration"
1126
+ o.http_method = "GET"
1127
+ o.http_request_uri = "/addons/configuration-schemas"
1128
+ o.input = Shapes::ShapeRef.new(shape: DescribeAddonConfigurationRequest)
1129
+ o.output = Shapes::ShapeRef.new(shape: DescribeAddonConfigurationResponse)
1130
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1131
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1132
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1133
+ end)
1134
+
1053
1135
  api.add_operation(:describe_addon_versions, Seahorse::Model::Operation.new.tap do |o|
1054
1136
  o.name = "DescribeAddonVersions"
1055
1137
  o.http_method = "GET"
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::EKS
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::EKS
11
+ class EndpointProvider
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://eks-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")
37
+ return Aws::Endpoints::Endpoint.new(url: "https://fips.eks.#{region}.amazonaws.com", headers: {}, properties: {})
38
+ end
39
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
40
+ return Aws::Endpoints::Endpoint.new(url: "https://eks.#{region}.amazonaws.com", headers: {}, properties: {})
41
+ end
42
+ return Aws::Endpoints::Endpoint.new(url: "https://eks-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
45
+ end
46
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
47
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
48
+ return Aws::Endpoints::Endpoint.new(url: "https://eks.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
49
+ end
50
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
51
+ end
52
+ return Aws::Endpoints::Endpoint.new(url: "https://eks.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
53
+ end
54
+ end
55
+ raise ArgumentError, "Invalid Configuration: Missing Region"
56
+ raise ArgumentError, 'No endpoint could be resolved'
57
+
58
+ end
59
+ end
60
+ end