aws-sdk-eks 1.69.0 → 1.91.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.
@@ -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