github.com/aavshr/aws-sdk-go@v1.41.3/service/eks/api.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 package eks 4 5 import ( 6 "fmt" 7 "time" 8 9 "github.com/aavshr/aws-sdk-go/aws" 10 "github.com/aavshr/aws-sdk-go/aws/awsutil" 11 "github.com/aavshr/aws-sdk-go/aws/request" 12 "github.com/aavshr/aws-sdk-go/private/protocol" 13 "github.com/aavshr/aws-sdk-go/private/protocol/restjson" 14 ) 15 16 const opAssociateEncryptionConfig = "AssociateEncryptionConfig" 17 18 // AssociateEncryptionConfigRequest generates a "aws/request.Request" representing the 19 // client's request for the AssociateEncryptionConfig operation. The "output" return 20 // value will be populated with the request's response once the request completes 21 // successfully. 22 // 23 // Use "Send" method on the returned Request to send the API call to the service. 24 // the "output" return value is not valid until after Send returns without error. 25 // 26 // See AssociateEncryptionConfig for more information on using the AssociateEncryptionConfig 27 // API call, and error handling. 28 // 29 // This method is useful when you want to inject custom logic or configuration 30 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 31 // 32 // 33 // // Example sending a request using the AssociateEncryptionConfigRequest method. 34 // req, resp := client.AssociateEncryptionConfigRequest(params) 35 // 36 // err := req.Send() 37 // if err == nil { // resp is now filled 38 // fmt.Println(resp) 39 // } 40 // 41 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfig 42 func (c *EKS) AssociateEncryptionConfigRequest(input *AssociateEncryptionConfigInput) (req *request.Request, output *AssociateEncryptionConfigOutput) { 43 op := &request.Operation{ 44 Name: opAssociateEncryptionConfig, 45 HTTPMethod: "POST", 46 HTTPPath: "/clusters/{name}/encryption-config/associate", 47 } 48 49 if input == nil { 50 input = &AssociateEncryptionConfigInput{} 51 } 52 53 output = &AssociateEncryptionConfigOutput{} 54 req = c.newRequest(op, input, output) 55 return 56 } 57 58 // AssociateEncryptionConfig API operation for Amazon Elastic Kubernetes Service. 59 // 60 // Associate encryption configuration to an existing cluster. 61 // 62 // You can use this API to enable encryption on existing clusters which do not 63 // have encryption already enabled. This allows you to implement a defense-in-depth 64 // security strategy without migrating applications to new Amazon EKS clusters. 65 // 66 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 67 // with awserr.Error's Code and Message methods to get detailed information about 68 // the error. 69 // 70 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 71 // API operation AssociateEncryptionConfig for usage and error information. 72 // 73 // Returned Error Types: 74 // * InvalidParameterException 75 // The specified parameter is invalid. Review the available parameters for the 76 // API request. 77 // 78 // * ClientException 79 // These errors are usually caused by a client action. Actions can include using 80 // an action or resource on behalf of a user that doesn't have permissions to 81 // use the action or resource or specifying an identifier that is not valid. 82 // 83 // * ServerException 84 // These errors are usually caused by a server-side issue. 85 // 86 // * ResourceInUseException 87 // The specified resource is in use. 88 // 89 // * ResourceNotFoundException 90 // The specified resource could not be found. You can view your available clusters 91 // with ListClusters. You can view your available managed node groups with ListNodegroups. 92 // Amazon EKS clusters and node groups are Region-specific. 93 // 94 // * InvalidRequestException 95 // The request is invalid given the state of the cluster. Check the state of 96 // the cluster and the associated operations. 97 // 98 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfig 99 func (c *EKS) AssociateEncryptionConfig(input *AssociateEncryptionConfigInput) (*AssociateEncryptionConfigOutput, error) { 100 req, out := c.AssociateEncryptionConfigRequest(input) 101 return out, req.Send() 102 } 103 104 // AssociateEncryptionConfigWithContext is the same as AssociateEncryptionConfig with the addition of 105 // the ability to pass a context and additional request options. 106 // 107 // See AssociateEncryptionConfig for details on how to use this API operation. 108 // 109 // The context must be non-nil and will be used for request cancellation. If 110 // the context is nil a panic will occur. In the future the SDK may create 111 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 112 // for more information on using Contexts. 113 func (c *EKS) AssociateEncryptionConfigWithContext(ctx aws.Context, input *AssociateEncryptionConfigInput, opts ...request.Option) (*AssociateEncryptionConfigOutput, error) { 114 req, out := c.AssociateEncryptionConfigRequest(input) 115 req.SetContext(ctx) 116 req.ApplyOptions(opts...) 117 return out, req.Send() 118 } 119 120 const opAssociateIdentityProviderConfig = "AssociateIdentityProviderConfig" 121 122 // AssociateIdentityProviderConfigRequest generates a "aws/request.Request" representing the 123 // client's request for the AssociateIdentityProviderConfig operation. The "output" return 124 // value will be populated with the request's response once the request completes 125 // successfully. 126 // 127 // Use "Send" method on the returned Request to send the API call to the service. 128 // the "output" return value is not valid until after Send returns without error. 129 // 130 // See AssociateIdentityProviderConfig for more information on using the AssociateIdentityProviderConfig 131 // API call, and error handling. 132 // 133 // This method is useful when you want to inject custom logic or configuration 134 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 135 // 136 // 137 // // Example sending a request using the AssociateIdentityProviderConfigRequest method. 138 // req, resp := client.AssociateIdentityProviderConfigRequest(params) 139 // 140 // err := req.Send() 141 // if err == nil { // resp is now filled 142 // fmt.Println(resp) 143 // } 144 // 145 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfig 146 func (c *EKS) AssociateIdentityProviderConfigRequest(input *AssociateIdentityProviderConfigInput) (req *request.Request, output *AssociateIdentityProviderConfigOutput) { 147 op := &request.Operation{ 148 Name: opAssociateIdentityProviderConfig, 149 HTTPMethod: "POST", 150 HTTPPath: "/clusters/{name}/identity-provider-configs/associate", 151 } 152 153 if input == nil { 154 input = &AssociateIdentityProviderConfigInput{} 155 } 156 157 output = &AssociateIdentityProviderConfigOutput{} 158 req = c.newRequest(op, input, output) 159 return 160 } 161 162 // AssociateIdentityProviderConfig API operation for Amazon Elastic Kubernetes Service. 163 // 164 // Associate an identity provider configuration to a cluster. 165 // 166 // If you want to authenticate identities using an identity provider, you can 167 // create an identity provider configuration and associate it to your cluster. 168 // After configuring authentication to your cluster you can create Kubernetes 169 // roles and clusterroles to assign permissions to the roles, and then bind 170 // the roles to the identities using Kubernetes rolebindings and clusterrolebindings. 171 // For more information see Using RBAC Authorization (https://kubernetes.io/docs/reference/access-authn-authz/rbac/) 172 // in the Kubernetes documentation. 173 // 174 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 175 // with awserr.Error's Code and Message methods to get detailed information about 176 // the error. 177 // 178 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 179 // API operation AssociateIdentityProviderConfig for usage and error information. 180 // 181 // Returned Error Types: 182 // * InvalidParameterException 183 // The specified parameter is invalid. Review the available parameters for the 184 // API request. 185 // 186 // * ClientException 187 // These errors are usually caused by a client action. Actions can include using 188 // an action or resource on behalf of a user that doesn't have permissions to 189 // use the action or resource or specifying an identifier that is not valid. 190 // 191 // * ServerException 192 // These errors are usually caused by a server-side issue. 193 // 194 // * ResourceInUseException 195 // The specified resource is in use. 196 // 197 // * ResourceNotFoundException 198 // The specified resource could not be found. You can view your available clusters 199 // with ListClusters. You can view your available managed node groups with ListNodegroups. 200 // Amazon EKS clusters and node groups are Region-specific. 201 // 202 // * InvalidRequestException 203 // The request is invalid given the state of the cluster. Check the state of 204 // the cluster and the associated operations. 205 // 206 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfig 207 func (c *EKS) AssociateIdentityProviderConfig(input *AssociateIdentityProviderConfigInput) (*AssociateIdentityProviderConfigOutput, error) { 208 req, out := c.AssociateIdentityProviderConfigRequest(input) 209 return out, req.Send() 210 } 211 212 // AssociateIdentityProviderConfigWithContext is the same as AssociateIdentityProviderConfig with the addition of 213 // the ability to pass a context and additional request options. 214 // 215 // See AssociateIdentityProviderConfig for details on how to use this API operation. 216 // 217 // The context must be non-nil and will be used for request cancellation. If 218 // the context is nil a panic will occur. In the future the SDK may create 219 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 220 // for more information on using Contexts. 221 func (c *EKS) AssociateIdentityProviderConfigWithContext(ctx aws.Context, input *AssociateIdentityProviderConfigInput, opts ...request.Option) (*AssociateIdentityProviderConfigOutput, error) { 222 req, out := c.AssociateIdentityProviderConfigRequest(input) 223 req.SetContext(ctx) 224 req.ApplyOptions(opts...) 225 return out, req.Send() 226 } 227 228 const opCreateAddon = "CreateAddon" 229 230 // CreateAddonRequest generates a "aws/request.Request" representing the 231 // client's request for the CreateAddon operation. The "output" return 232 // value will be populated with the request's response once the request completes 233 // successfully. 234 // 235 // Use "Send" method on the returned Request to send the API call to the service. 236 // the "output" return value is not valid until after Send returns without error. 237 // 238 // See CreateAddon for more information on using the CreateAddon 239 // API call, and error handling. 240 // 241 // This method is useful when you want to inject custom logic or configuration 242 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 243 // 244 // 245 // // Example sending a request using the CreateAddonRequest method. 246 // req, resp := client.CreateAddonRequest(params) 247 // 248 // err := req.Send() 249 // if err == nil { // resp is now filled 250 // fmt.Println(resp) 251 // } 252 // 253 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddon 254 func (c *EKS) CreateAddonRequest(input *CreateAddonInput) (req *request.Request, output *CreateAddonOutput) { 255 op := &request.Operation{ 256 Name: opCreateAddon, 257 HTTPMethod: "POST", 258 HTTPPath: "/clusters/{name}/addons", 259 } 260 261 if input == nil { 262 input = &CreateAddonInput{} 263 } 264 265 output = &CreateAddonOutput{} 266 req = c.newRequest(op, input, output) 267 return 268 } 269 270 // CreateAddon API operation for Amazon Elastic Kubernetes Service. 271 // 272 // Creates an Amazon EKS add-on. 273 // 274 // Amazon EKS add-ons help to automate the provisioning and lifecycle management 275 // of common operational software for Amazon EKS clusters. Amazon EKS add-ons 276 // can only be used with Amazon EKS clusters running version 1.18 with platform 277 // version eks.3 or later because add-ons rely on the Server-side Apply Kubernetes 278 // feature, which is only available in Kubernetes 1.18 and later. 279 // 280 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 281 // with awserr.Error's Code and Message methods to get detailed information about 282 // the error. 283 // 284 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 285 // API operation CreateAddon for usage and error information. 286 // 287 // Returned Error Types: 288 // * InvalidParameterException 289 // The specified parameter is invalid. Review the available parameters for the 290 // API request. 291 // 292 // * InvalidRequestException 293 // The request is invalid given the state of the cluster. Check the state of 294 // the cluster and the associated operations. 295 // 296 // * ResourceNotFoundException 297 // The specified resource could not be found. You can view your available clusters 298 // with ListClusters. You can view your available managed node groups with ListNodegroups. 299 // Amazon EKS clusters and node groups are Region-specific. 300 // 301 // * ResourceInUseException 302 // The specified resource is in use. 303 // 304 // * ClientException 305 // These errors are usually caused by a client action. Actions can include using 306 // an action or resource on behalf of a user that doesn't have permissions to 307 // use the action or resource or specifying an identifier that is not valid. 308 // 309 // * ServerException 310 // These errors are usually caused by a server-side issue. 311 // 312 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddon 313 func (c *EKS) CreateAddon(input *CreateAddonInput) (*CreateAddonOutput, error) { 314 req, out := c.CreateAddonRequest(input) 315 return out, req.Send() 316 } 317 318 // CreateAddonWithContext is the same as CreateAddon with the addition of 319 // the ability to pass a context and additional request options. 320 // 321 // See CreateAddon for details on how to use this API operation. 322 // 323 // The context must be non-nil and will be used for request cancellation. If 324 // the context is nil a panic will occur. In the future the SDK may create 325 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 326 // for more information on using Contexts. 327 func (c *EKS) CreateAddonWithContext(ctx aws.Context, input *CreateAddonInput, opts ...request.Option) (*CreateAddonOutput, error) { 328 req, out := c.CreateAddonRequest(input) 329 req.SetContext(ctx) 330 req.ApplyOptions(opts...) 331 return out, req.Send() 332 } 333 334 const opCreateCluster = "CreateCluster" 335 336 // CreateClusterRequest generates a "aws/request.Request" representing the 337 // client's request for the CreateCluster operation. The "output" return 338 // value will be populated with the request's response once the request completes 339 // successfully. 340 // 341 // Use "Send" method on the returned Request to send the API call to the service. 342 // the "output" return value is not valid until after Send returns without error. 343 // 344 // See CreateCluster for more information on using the CreateCluster 345 // API call, and error handling. 346 // 347 // This method is useful when you want to inject custom logic or configuration 348 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 349 // 350 // 351 // // Example sending a request using the CreateClusterRequest method. 352 // req, resp := client.CreateClusterRequest(params) 353 // 354 // err := req.Send() 355 // if err == nil { // resp is now filled 356 // fmt.Println(resp) 357 // } 358 // 359 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCluster 360 func (c *EKS) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) { 361 op := &request.Operation{ 362 Name: opCreateCluster, 363 HTTPMethod: "POST", 364 HTTPPath: "/clusters", 365 } 366 367 if input == nil { 368 input = &CreateClusterInput{} 369 } 370 371 output = &CreateClusterOutput{} 372 req = c.newRequest(op, input, output) 373 return 374 } 375 376 // CreateCluster API operation for Amazon Elastic Kubernetes Service. 377 // 378 // Creates an Amazon EKS control plane. 379 // 380 // The Amazon EKS control plane consists of control plane instances that run 381 // the Kubernetes software, such as etcd and the API server. The control plane 382 // runs in an account managed by Amazon Web Services, and the Kubernetes API 383 // is exposed via the Amazon EKS API server endpoint. Each Amazon EKS cluster 384 // control plane is single-tenant and unique and runs on its own set of Amazon 385 // EC2 instances. 386 // 387 // The cluster control plane is provisioned across multiple Availability Zones 388 // and fronted by an Elastic Load Balancing Network Load Balancer. Amazon EKS 389 // also provisions elastic network interfaces in your VPC subnets to provide 390 // connectivity from the control plane instances to the nodes (for example, 391 // to support kubectl exec, logs, and proxy data flows). 392 // 393 // Amazon EKS nodes run in your Amazon Web Services account and connect to your 394 // cluster's control plane via the Kubernetes API server endpoint and a certificate 395 // file that is created for your cluster. 396 // 397 // Cluster creation typically takes several minutes. After you create an Amazon 398 // EKS cluster, you must configure your Kubernetes tooling to communicate with 399 // the API server and launch nodes into your cluster. For more information, 400 // see Managing Cluster Authentication (https://docs.aws.amazon.com/eks/latest/userguide/managing-auth.html) 401 // and Launching Amazon EKS nodes (https://docs.aws.amazon.com/eks/latest/userguide/launch-workers.html) 402 // in the Amazon EKS User Guide. 403 // 404 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 405 // with awserr.Error's Code and Message methods to get detailed information about 406 // the error. 407 // 408 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 409 // API operation CreateCluster for usage and error information. 410 // 411 // Returned Error Types: 412 // * ResourceInUseException 413 // The specified resource is in use. 414 // 415 // * ResourceLimitExceededException 416 // You have encountered a service limit on the specified resource. 417 // 418 // * InvalidParameterException 419 // The specified parameter is invalid. Review the available parameters for the 420 // API request. 421 // 422 // * ClientException 423 // These errors are usually caused by a client action. Actions can include using 424 // an action or resource on behalf of a user that doesn't have permissions to 425 // use the action or resource or specifying an identifier that is not valid. 426 // 427 // * ServerException 428 // These errors are usually caused by a server-side issue. 429 // 430 // * ServiceUnavailableException 431 // The service is unavailable. Back off and retry the operation. 432 // 433 // * UnsupportedAvailabilityZoneException 434 // At least one of your specified cluster subnets is in an Availability Zone 435 // that does not support Amazon EKS. The exception output specifies the supported 436 // Availability Zones for your account, from which you can choose subnets for 437 // your cluster. 438 // 439 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCluster 440 func (c *EKS) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { 441 req, out := c.CreateClusterRequest(input) 442 return out, req.Send() 443 } 444 445 // CreateClusterWithContext is the same as CreateCluster with the addition of 446 // the ability to pass a context and additional request options. 447 // 448 // See CreateCluster for details on how to use this API operation. 449 // 450 // The context must be non-nil and will be used for request cancellation. If 451 // the context is nil a panic will occur. In the future the SDK may create 452 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 453 // for more information on using Contexts. 454 func (c *EKS) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error) { 455 req, out := c.CreateClusterRequest(input) 456 req.SetContext(ctx) 457 req.ApplyOptions(opts...) 458 return out, req.Send() 459 } 460 461 const opCreateFargateProfile = "CreateFargateProfile" 462 463 // CreateFargateProfileRequest generates a "aws/request.Request" representing the 464 // client's request for the CreateFargateProfile operation. The "output" return 465 // value will be populated with the request's response once the request completes 466 // successfully. 467 // 468 // Use "Send" method on the returned Request to send the API call to the service. 469 // the "output" return value is not valid until after Send returns without error. 470 // 471 // See CreateFargateProfile for more information on using the CreateFargateProfile 472 // API call, and error handling. 473 // 474 // This method is useful when you want to inject custom logic or configuration 475 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 476 // 477 // 478 // // Example sending a request using the CreateFargateProfileRequest method. 479 // req, resp := client.CreateFargateProfileRequest(params) 480 // 481 // err := req.Send() 482 // if err == nil { // resp is now filled 483 // fmt.Println(resp) 484 // } 485 // 486 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfile 487 func (c *EKS) CreateFargateProfileRequest(input *CreateFargateProfileInput) (req *request.Request, output *CreateFargateProfileOutput) { 488 op := &request.Operation{ 489 Name: opCreateFargateProfile, 490 HTTPMethod: "POST", 491 HTTPPath: "/clusters/{name}/fargate-profiles", 492 } 493 494 if input == nil { 495 input = &CreateFargateProfileInput{} 496 } 497 498 output = &CreateFargateProfileOutput{} 499 req = c.newRequest(op, input, output) 500 return 501 } 502 503 // CreateFargateProfile API operation for Amazon Elastic Kubernetes Service. 504 // 505 // Creates an Fargate profile for your Amazon EKS cluster. You must have at 506 // least one Fargate profile in a cluster to be able to run pods on Fargate. 507 // 508 // The Fargate profile allows an administrator to declare which pods run on 509 // Fargate and specify which pods run on which Fargate profile. This declaration 510 // is done through the profile’s selectors. Each profile can have up to five 511 // selectors that contain a namespace and labels. A namespace is required for 512 // every selector. The label field consists of multiple optional key-value pairs. 513 // Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled 514 // pod matches any of the selectors in the Fargate profile, then that pod is 515 // run on Fargate. 516 // 517 // When you create a Fargate profile, you must specify a pod execution role 518 // to use with the pods that are scheduled with the profile. This role is added 519 // to the cluster's Kubernetes Role Based Access Control (https://kubernetes.io/docs/admin/authorization/rbac/) 520 // (RBAC) for authorization so that the kubelet that is running on the Fargate 521 // infrastructure can register with your Amazon EKS cluster so that it can appear 522 // in your cluster as a node. The pod execution role also provides IAM permissions 523 // to the Fargate infrastructure to allow read access to Amazon ECR image repositories. 524 // For more information, see Pod Execution Role (https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html) 525 // in the Amazon EKS User Guide. 526 // 527 // Fargate profiles are immutable. However, you can create a new updated profile 528 // to replace an existing profile and then delete the original after the updated 529 // profile has finished creating. 530 // 531 // If any Fargate profiles in a cluster are in the DELETING status, you must 532 // wait for that Fargate profile to finish deleting before you can create any 533 // other profiles in that cluster. 534 // 535 // For more information, see Fargate Profile (https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html) 536 // in the Amazon EKS User Guide. 537 // 538 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 539 // with awserr.Error's Code and Message methods to get detailed information about 540 // the error. 541 // 542 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 543 // API operation CreateFargateProfile for usage and error information. 544 // 545 // Returned Error Types: 546 // * InvalidParameterException 547 // The specified parameter is invalid. Review the available parameters for the 548 // API request. 549 // 550 // * InvalidRequestException 551 // The request is invalid given the state of the cluster. Check the state of 552 // the cluster and the associated operations. 553 // 554 // * ClientException 555 // These errors are usually caused by a client action. Actions can include using 556 // an action or resource on behalf of a user that doesn't have permissions to 557 // use the action or resource or specifying an identifier that is not valid. 558 // 559 // * ServerException 560 // These errors are usually caused by a server-side issue. 561 // 562 // * ResourceLimitExceededException 563 // You have encountered a service limit on the specified resource. 564 // 565 // * UnsupportedAvailabilityZoneException 566 // At least one of your specified cluster subnets is in an Availability Zone 567 // that does not support Amazon EKS. The exception output specifies the supported 568 // Availability Zones for your account, from which you can choose subnets for 569 // your cluster. 570 // 571 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfile 572 func (c *EKS) CreateFargateProfile(input *CreateFargateProfileInput) (*CreateFargateProfileOutput, error) { 573 req, out := c.CreateFargateProfileRequest(input) 574 return out, req.Send() 575 } 576 577 // CreateFargateProfileWithContext is the same as CreateFargateProfile with the addition of 578 // the ability to pass a context and additional request options. 579 // 580 // See CreateFargateProfile for details on how to use this API operation. 581 // 582 // The context must be non-nil and will be used for request cancellation. If 583 // the context is nil a panic will occur. In the future the SDK may create 584 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 585 // for more information on using Contexts. 586 func (c *EKS) CreateFargateProfileWithContext(ctx aws.Context, input *CreateFargateProfileInput, opts ...request.Option) (*CreateFargateProfileOutput, error) { 587 req, out := c.CreateFargateProfileRequest(input) 588 req.SetContext(ctx) 589 req.ApplyOptions(opts...) 590 return out, req.Send() 591 } 592 593 const opCreateNodegroup = "CreateNodegroup" 594 595 // CreateNodegroupRequest generates a "aws/request.Request" representing the 596 // client's request for the CreateNodegroup operation. The "output" return 597 // value will be populated with the request's response once the request completes 598 // successfully. 599 // 600 // Use "Send" method on the returned Request to send the API call to the service. 601 // the "output" return value is not valid until after Send returns without error. 602 // 603 // See CreateNodegroup for more information on using the CreateNodegroup 604 // API call, and error handling. 605 // 606 // This method is useful when you want to inject custom logic or configuration 607 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 608 // 609 // 610 // // Example sending a request using the CreateNodegroupRequest method. 611 // req, resp := client.CreateNodegroupRequest(params) 612 // 613 // err := req.Send() 614 // if err == nil { // resp is now filled 615 // fmt.Println(resp) 616 // } 617 // 618 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroup 619 func (c *EKS) CreateNodegroupRequest(input *CreateNodegroupInput) (req *request.Request, output *CreateNodegroupOutput) { 620 op := &request.Operation{ 621 Name: opCreateNodegroup, 622 HTTPMethod: "POST", 623 HTTPPath: "/clusters/{name}/node-groups", 624 } 625 626 if input == nil { 627 input = &CreateNodegroupInput{} 628 } 629 630 output = &CreateNodegroupOutput{} 631 req = c.newRequest(op, input, output) 632 return 633 } 634 635 // CreateNodegroup API operation for Amazon Elastic Kubernetes Service. 636 // 637 // Creates a managed node group for an Amazon EKS cluster. You can only create 638 // a node group for your cluster that is equal to the current Kubernetes version 639 // for the cluster. All node groups are created with the latest AMI release 640 // version for the respective minor Kubernetes version of the cluster, unless 641 // you deploy a custom AMI using a launch template. For more information about 642 // using launch templates, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html). 643 // 644 // An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and 645 // associated Amazon EC2 instances that are managed by Amazon Web Services for 646 // an Amazon EKS cluster. Each node group uses a version of the Amazon EKS optimized 647 // Amazon Linux 2 AMI. For more information, see Managed Node Groups (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) 648 // in the Amazon EKS User Guide. 649 // 650 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 651 // with awserr.Error's Code and Message methods to get detailed information about 652 // the error. 653 // 654 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 655 // API operation CreateNodegroup for usage and error information. 656 // 657 // Returned Error Types: 658 // * ResourceInUseException 659 // The specified resource is in use. 660 // 661 // * ResourceLimitExceededException 662 // You have encountered a service limit on the specified resource. 663 // 664 // * InvalidRequestException 665 // The request is invalid given the state of the cluster. Check the state of 666 // the cluster and the associated operations. 667 // 668 // * InvalidParameterException 669 // The specified parameter is invalid. Review the available parameters for the 670 // API request. 671 // 672 // * ClientException 673 // These errors are usually caused by a client action. Actions can include using 674 // an action or resource on behalf of a user that doesn't have permissions to 675 // use the action or resource or specifying an identifier that is not valid. 676 // 677 // * ServerException 678 // These errors are usually caused by a server-side issue. 679 // 680 // * ServiceUnavailableException 681 // The service is unavailable. Back off and retry the operation. 682 // 683 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroup 684 func (c *EKS) CreateNodegroup(input *CreateNodegroupInput) (*CreateNodegroupOutput, error) { 685 req, out := c.CreateNodegroupRequest(input) 686 return out, req.Send() 687 } 688 689 // CreateNodegroupWithContext is the same as CreateNodegroup with the addition of 690 // the ability to pass a context and additional request options. 691 // 692 // See CreateNodegroup for details on how to use this API operation. 693 // 694 // The context must be non-nil and will be used for request cancellation. If 695 // the context is nil a panic will occur. In the future the SDK may create 696 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 697 // for more information on using Contexts. 698 func (c *EKS) CreateNodegroupWithContext(ctx aws.Context, input *CreateNodegroupInput, opts ...request.Option) (*CreateNodegroupOutput, error) { 699 req, out := c.CreateNodegroupRequest(input) 700 req.SetContext(ctx) 701 req.ApplyOptions(opts...) 702 return out, req.Send() 703 } 704 705 const opDeleteAddon = "DeleteAddon" 706 707 // DeleteAddonRequest generates a "aws/request.Request" representing the 708 // client's request for the DeleteAddon operation. The "output" return 709 // value will be populated with the request's response once the request completes 710 // successfully. 711 // 712 // Use "Send" method on the returned Request to send the API call to the service. 713 // the "output" return value is not valid until after Send returns without error. 714 // 715 // See DeleteAddon for more information on using the DeleteAddon 716 // API call, and error handling. 717 // 718 // This method is useful when you want to inject custom logic or configuration 719 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 720 // 721 // 722 // // Example sending a request using the DeleteAddonRequest method. 723 // req, resp := client.DeleteAddonRequest(params) 724 // 725 // err := req.Send() 726 // if err == nil { // resp is now filled 727 // fmt.Println(resp) 728 // } 729 // 730 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddon 731 func (c *EKS) DeleteAddonRequest(input *DeleteAddonInput) (req *request.Request, output *DeleteAddonOutput) { 732 op := &request.Operation{ 733 Name: opDeleteAddon, 734 HTTPMethod: "DELETE", 735 HTTPPath: "/clusters/{name}/addons/{addonName}", 736 } 737 738 if input == nil { 739 input = &DeleteAddonInput{} 740 } 741 742 output = &DeleteAddonOutput{} 743 req = c.newRequest(op, input, output) 744 return 745 } 746 747 // DeleteAddon API operation for Amazon Elastic Kubernetes Service. 748 // 749 // Delete an Amazon EKS add-on. 750 // 751 // When you remove the add-on, it will also be deleted from the cluster. You 752 // can always manually start an add-on on the cluster using the Kubernetes API. 753 // 754 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 755 // with awserr.Error's Code and Message methods to get detailed information about 756 // the error. 757 // 758 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 759 // API operation DeleteAddon for usage and error information. 760 // 761 // Returned Error Types: 762 // * InvalidParameterException 763 // The specified parameter is invalid. Review the available parameters for the 764 // API request. 765 // 766 // * InvalidRequestException 767 // The request is invalid given the state of the cluster. Check the state of 768 // the cluster and the associated operations. 769 // 770 // * ResourceNotFoundException 771 // The specified resource could not be found. You can view your available clusters 772 // with ListClusters. You can view your available managed node groups with ListNodegroups. 773 // Amazon EKS clusters and node groups are Region-specific. 774 // 775 // * ClientException 776 // These errors are usually caused by a client action. Actions can include using 777 // an action or resource on behalf of a user that doesn't have permissions to 778 // use the action or resource or specifying an identifier that is not valid. 779 // 780 // * ServerException 781 // These errors are usually caused by a server-side issue. 782 // 783 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddon 784 func (c *EKS) DeleteAddon(input *DeleteAddonInput) (*DeleteAddonOutput, error) { 785 req, out := c.DeleteAddonRequest(input) 786 return out, req.Send() 787 } 788 789 // DeleteAddonWithContext is the same as DeleteAddon with the addition of 790 // the ability to pass a context and additional request options. 791 // 792 // See DeleteAddon for details on how to use this API operation. 793 // 794 // The context must be non-nil and will be used for request cancellation. If 795 // the context is nil a panic will occur. In the future the SDK may create 796 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 797 // for more information on using Contexts. 798 func (c *EKS) DeleteAddonWithContext(ctx aws.Context, input *DeleteAddonInput, opts ...request.Option) (*DeleteAddonOutput, error) { 799 req, out := c.DeleteAddonRequest(input) 800 req.SetContext(ctx) 801 req.ApplyOptions(opts...) 802 return out, req.Send() 803 } 804 805 const opDeleteCluster = "DeleteCluster" 806 807 // DeleteClusterRequest generates a "aws/request.Request" representing the 808 // client's request for the DeleteCluster operation. The "output" return 809 // value will be populated with the request's response once the request completes 810 // successfully. 811 // 812 // Use "Send" method on the returned Request to send the API call to the service. 813 // the "output" return value is not valid until after Send returns without error. 814 // 815 // See DeleteCluster for more information on using the DeleteCluster 816 // API call, and error handling. 817 // 818 // This method is useful when you want to inject custom logic or configuration 819 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 820 // 821 // 822 // // Example sending a request using the DeleteClusterRequest method. 823 // req, resp := client.DeleteClusterRequest(params) 824 // 825 // err := req.Send() 826 // if err == nil { // resp is now filled 827 // fmt.Println(resp) 828 // } 829 // 830 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCluster 831 func (c *EKS) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) { 832 op := &request.Operation{ 833 Name: opDeleteCluster, 834 HTTPMethod: "DELETE", 835 HTTPPath: "/clusters/{name}", 836 } 837 838 if input == nil { 839 input = &DeleteClusterInput{} 840 } 841 842 output = &DeleteClusterOutput{} 843 req = c.newRequest(op, input, output) 844 return 845 } 846 847 // DeleteCluster API operation for Amazon Elastic Kubernetes Service. 848 // 849 // Deletes the Amazon EKS cluster control plane. 850 // 851 // If you have active services in your cluster that are associated with a load 852 // balancer, you must delete those services before deleting the cluster so that 853 // the load balancers are deleted properly. Otherwise, you can have orphaned 854 // resources in your VPC that prevent you from being able to delete the VPC. 855 // For more information, see Deleting a Cluster (https://docs.aws.amazon.com/eks/latest/userguide/delete-cluster.html) 856 // in the Amazon EKS User Guide. 857 // 858 // If you have managed node groups or Fargate profiles attached to the cluster, 859 // you must delete them first. For more information, see DeleteNodegroup and 860 // DeleteFargateProfile. 861 // 862 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 863 // with awserr.Error's Code and Message methods to get detailed information about 864 // the error. 865 // 866 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 867 // API operation DeleteCluster for usage and error information. 868 // 869 // Returned Error Types: 870 // * ResourceInUseException 871 // The specified resource is in use. 872 // 873 // * ResourceNotFoundException 874 // The specified resource could not be found. You can view your available clusters 875 // with ListClusters. You can view your available managed node groups with ListNodegroups. 876 // Amazon EKS clusters and node groups are Region-specific. 877 // 878 // * ClientException 879 // These errors are usually caused by a client action. Actions can include using 880 // an action or resource on behalf of a user that doesn't have permissions to 881 // use the action or resource or specifying an identifier that is not valid. 882 // 883 // * ServerException 884 // These errors are usually caused by a server-side issue. 885 // 886 // * ServiceUnavailableException 887 // The service is unavailable. Back off and retry the operation. 888 // 889 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCluster 890 func (c *EKS) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { 891 req, out := c.DeleteClusterRequest(input) 892 return out, req.Send() 893 } 894 895 // DeleteClusterWithContext is the same as DeleteCluster with the addition of 896 // the ability to pass a context and additional request options. 897 // 898 // See DeleteCluster for details on how to use this API operation. 899 // 900 // The context must be non-nil and will be used for request cancellation. If 901 // the context is nil a panic will occur. In the future the SDK may create 902 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 903 // for more information on using Contexts. 904 func (c *EKS) DeleteClusterWithContext(ctx aws.Context, input *DeleteClusterInput, opts ...request.Option) (*DeleteClusterOutput, error) { 905 req, out := c.DeleteClusterRequest(input) 906 req.SetContext(ctx) 907 req.ApplyOptions(opts...) 908 return out, req.Send() 909 } 910 911 const opDeleteFargateProfile = "DeleteFargateProfile" 912 913 // DeleteFargateProfileRequest generates a "aws/request.Request" representing the 914 // client's request for the DeleteFargateProfile operation. The "output" return 915 // value will be populated with the request's response once the request completes 916 // successfully. 917 // 918 // Use "Send" method on the returned Request to send the API call to the service. 919 // the "output" return value is not valid until after Send returns without error. 920 // 921 // See DeleteFargateProfile for more information on using the DeleteFargateProfile 922 // API call, and error handling. 923 // 924 // This method is useful when you want to inject custom logic or configuration 925 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 926 // 927 // 928 // // Example sending a request using the DeleteFargateProfileRequest method. 929 // req, resp := client.DeleteFargateProfileRequest(params) 930 // 931 // err := req.Send() 932 // if err == nil { // resp is now filled 933 // fmt.Println(resp) 934 // } 935 // 936 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfile 937 func (c *EKS) DeleteFargateProfileRequest(input *DeleteFargateProfileInput) (req *request.Request, output *DeleteFargateProfileOutput) { 938 op := &request.Operation{ 939 Name: opDeleteFargateProfile, 940 HTTPMethod: "DELETE", 941 HTTPPath: "/clusters/{name}/fargate-profiles/{fargateProfileName}", 942 } 943 944 if input == nil { 945 input = &DeleteFargateProfileInput{} 946 } 947 948 output = &DeleteFargateProfileOutput{} 949 req = c.newRequest(op, input, output) 950 return 951 } 952 953 // DeleteFargateProfile API operation for Amazon Elastic Kubernetes Service. 954 // 955 // Deletes an Fargate profile. 956 // 957 // When you delete a Fargate profile, any pods running on Fargate that were 958 // created with the profile are deleted. If those pods match another Fargate 959 // profile, then they are scheduled on Fargate with that profile. If they no 960 // longer match any Fargate profiles, then they are not scheduled on Fargate 961 // and they may remain in a pending state. 962 // 963 // Only one Fargate profile in a cluster can be in the DELETING status at a 964 // time. You must wait for a Fargate profile to finish deleting before you can 965 // delete any other profiles in that cluster. 966 // 967 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 968 // with awserr.Error's Code and Message methods to get detailed information about 969 // the error. 970 // 971 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 972 // API operation DeleteFargateProfile for usage and error information. 973 // 974 // Returned Error Types: 975 // * InvalidParameterException 976 // The specified parameter is invalid. Review the available parameters for the 977 // API request. 978 // 979 // * ClientException 980 // These errors are usually caused by a client action. Actions can include using 981 // an action or resource on behalf of a user that doesn't have permissions to 982 // use the action or resource or specifying an identifier that is not valid. 983 // 984 // * ServerException 985 // These errors are usually caused by a server-side issue. 986 // 987 // * ResourceNotFoundException 988 // The specified resource could not be found. You can view your available clusters 989 // with ListClusters. You can view your available managed node groups with ListNodegroups. 990 // Amazon EKS clusters and node groups are Region-specific. 991 // 992 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfile 993 func (c *EKS) DeleteFargateProfile(input *DeleteFargateProfileInput) (*DeleteFargateProfileOutput, error) { 994 req, out := c.DeleteFargateProfileRequest(input) 995 return out, req.Send() 996 } 997 998 // DeleteFargateProfileWithContext is the same as DeleteFargateProfile with the addition of 999 // the ability to pass a context and additional request options. 1000 // 1001 // See DeleteFargateProfile for details on how to use this API operation. 1002 // 1003 // The context must be non-nil and will be used for request cancellation. If 1004 // the context is nil a panic will occur. In the future the SDK may create 1005 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1006 // for more information on using Contexts. 1007 func (c *EKS) DeleteFargateProfileWithContext(ctx aws.Context, input *DeleteFargateProfileInput, opts ...request.Option) (*DeleteFargateProfileOutput, error) { 1008 req, out := c.DeleteFargateProfileRequest(input) 1009 req.SetContext(ctx) 1010 req.ApplyOptions(opts...) 1011 return out, req.Send() 1012 } 1013 1014 const opDeleteNodegroup = "DeleteNodegroup" 1015 1016 // DeleteNodegroupRequest generates a "aws/request.Request" representing the 1017 // client's request for the DeleteNodegroup operation. The "output" return 1018 // value will be populated with the request's response once the request completes 1019 // successfully. 1020 // 1021 // Use "Send" method on the returned Request to send the API call to the service. 1022 // the "output" return value is not valid until after Send returns without error. 1023 // 1024 // See DeleteNodegroup for more information on using the DeleteNodegroup 1025 // API call, and error handling. 1026 // 1027 // This method is useful when you want to inject custom logic or configuration 1028 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1029 // 1030 // 1031 // // Example sending a request using the DeleteNodegroupRequest method. 1032 // req, resp := client.DeleteNodegroupRequest(params) 1033 // 1034 // err := req.Send() 1035 // if err == nil { // resp is now filled 1036 // fmt.Println(resp) 1037 // } 1038 // 1039 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroup 1040 func (c *EKS) DeleteNodegroupRequest(input *DeleteNodegroupInput) (req *request.Request, output *DeleteNodegroupOutput) { 1041 op := &request.Operation{ 1042 Name: opDeleteNodegroup, 1043 HTTPMethod: "DELETE", 1044 HTTPPath: "/clusters/{name}/node-groups/{nodegroupName}", 1045 } 1046 1047 if input == nil { 1048 input = &DeleteNodegroupInput{} 1049 } 1050 1051 output = &DeleteNodegroupOutput{} 1052 req = c.newRequest(op, input, output) 1053 return 1054 } 1055 1056 // DeleteNodegroup API operation for Amazon Elastic Kubernetes Service. 1057 // 1058 // Deletes an Amazon EKS node group for a cluster. 1059 // 1060 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1061 // with awserr.Error's Code and Message methods to get detailed information about 1062 // the error. 1063 // 1064 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1065 // API operation DeleteNodegroup for usage and error information. 1066 // 1067 // Returned Error Types: 1068 // * ResourceInUseException 1069 // The specified resource is in use. 1070 // 1071 // * ResourceNotFoundException 1072 // The specified resource could not be found. You can view your available clusters 1073 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1074 // Amazon EKS clusters and node groups are Region-specific. 1075 // 1076 // * InvalidParameterException 1077 // The specified parameter is invalid. Review the available parameters for the 1078 // API request. 1079 // 1080 // * ClientException 1081 // These errors are usually caused by a client action. Actions can include using 1082 // an action or resource on behalf of a user that doesn't have permissions to 1083 // use the action or resource or specifying an identifier that is not valid. 1084 // 1085 // * ServerException 1086 // These errors are usually caused by a server-side issue. 1087 // 1088 // * ServiceUnavailableException 1089 // The service is unavailable. Back off and retry the operation. 1090 // 1091 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroup 1092 func (c *EKS) DeleteNodegroup(input *DeleteNodegroupInput) (*DeleteNodegroupOutput, error) { 1093 req, out := c.DeleteNodegroupRequest(input) 1094 return out, req.Send() 1095 } 1096 1097 // DeleteNodegroupWithContext is the same as DeleteNodegroup with the addition of 1098 // the ability to pass a context and additional request options. 1099 // 1100 // See DeleteNodegroup for details on how to use this API operation. 1101 // 1102 // The context must be non-nil and will be used for request cancellation. If 1103 // the context is nil a panic will occur. In the future the SDK may create 1104 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1105 // for more information on using Contexts. 1106 func (c *EKS) DeleteNodegroupWithContext(ctx aws.Context, input *DeleteNodegroupInput, opts ...request.Option) (*DeleteNodegroupOutput, error) { 1107 req, out := c.DeleteNodegroupRequest(input) 1108 req.SetContext(ctx) 1109 req.ApplyOptions(opts...) 1110 return out, req.Send() 1111 } 1112 1113 const opDeregisterCluster = "DeregisterCluster" 1114 1115 // DeregisterClusterRequest generates a "aws/request.Request" representing the 1116 // client's request for the DeregisterCluster operation. The "output" return 1117 // value will be populated with the request's response once the request completes 1118 // successfully. 1119 // 1120 // Use "Send" method on the returned Request to send the API call to the service. 1121 // the "output" return value is not valid until after Send returns without error. 1122 // 1123 // See DeregisterCluster for more information on using the DeregisterCluster 1124 // API call, and error handling. 1125 // 1126 // This method is useful when you want to inject custom logic or configuration 1127 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1128 // 1129 // 1130 // // Example sending a request using the DeregisterClusterRequest method. 1131 // req, resp := client.DeregisterClusterRequest(params) 1132 // 1133 // err := req.Send() 1134 // if err == nil { // resp is now filled 1135 // fmt.Println(resp) 1136 // } 1137 // 1138 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterCluster 1139 func (c *EKS) DeregisterClusterRequest(input *DeregisterClusterInput) (req *request.Request, output *DeregisterClusterOutput) { 1140 op := &request.Operation{ 1141 Name: opDeregisterCluster, 1142 HTTPMethod: "DELETE", 1143 HTTPPath: "/cluster-registrations/{name}", 1144 } 1145 1146 if input == nil { 1147 input = &DeregisterClusterInput{} 1148 } 1149 1150 output = &DeregisterClusterOutput{} 1151 req = c.newRequest(op, input, output) 1152 return 1153 } 1154 1155 // DeregisterCluster API operation for Amazon Elastic Kubernetes Service. 1156 // 1157 // Deregisters a connected cluster to remove it from the Amazon EKS control 1158 // plane. 1159 // 1160 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1161 // with awserr.Error's Code and Message methods to get detailed information about 1162 // the error. 1163 // 1164 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1165 // API operation DeregisterCluster for usage and error information. 1166 // 1167 // Returned Error Types: 1168 // * ResourceInUseException 1169 // The specified resource is in use. 1170 // 1171 // * ResourceNotFoundException 1172 // The specified resource could not be found. You can view your available clusters 1173 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1174 // Amazon EKS clusters and node groups are Region-specific. 1175 // 1176 // * ClientException 1177 // These errors are usually caused by a client action. Actions can include using 1178 // an action or resource on behalf of a user that doesn't have permissions to 1179 // use the action or resource or specifying an identifier that is not valid. 1180 // 1181 // * ServerException 1182 // These errors are usually caused by a server-side issue. 1183 // 1184 // * ServiceUnavailableException 1185 // The service is unavailable. Back off and retry the operation. 1186 // 1187 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterCluster 1188 func (c *EKS) DeregisterCluster(input *DeregisterClusterInput) (*DeregisterClusterOutput, error) { 1189 req, out := c.DeregisterClusterRequest(input) 1190 return out, req.Send() 1191 } 1192 1193 // DeregisterClusterWithContext is the same as DeregisterCluster with the addition of 1194 // the ability to pass a context and additional request options. 1195 // 1196 // See DeregisterCluster for details on how to use this API operation. 1197 // 1198 // The context must be non-nil and will be used for request cancellation. If 1199 // the context is nil a panic will occur. In the future the SDK may create 1200 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1201 // for more information on using Contexts. 1202 func (c *EKS) DeregisterClusterWithContext(ctx aws.Context, input *DeregisterClusterInput, opts ...request.Option) (*DeregisterClusterOutput, error) { 1203 req, out := c.DeregisterClusterRequest(input) 1204 req.SetContext(ctx) 1205 req.ApplyOptions(opts...) 1206 return out, req.Send() 1207 } 1208 1209 const opDescribeAddon = "DescribeAddon" 1210 1211 // DescribeAddonRequest generates a "aws/request.Request" representing the 1212 // client's request for the DescribeAddon operation. The "output" return 1213 // value will be populated with the request's response once the request completes 1214 // successfully. 1215 // 1216 // Use "Send" method on the returned Request to send the API call to the service. 1217 // the "output" return value is not valid until after Send returns without error. 1218 // 1219 // See DescribeAddon for more information on using the DescribeAddon 1220 // API call, and error handling. 1221 // 1222 // This method is useful when you want to inject custom logic or configuration 1223 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1224 // 1225 // 1226 // // Example sending a request using the DescribeAddonRequest method. 1227 // req, resp := client.DescribeAddonRequest(params) 1228 // 1229 // err := req.Send() 1230 // if err == nil { // resp is now filled 1231 // fmt.Println(resp) 1232 // } 1233 // 1234 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddon 1235 func (c *EKS) DescribeAddonRequest(input *DescribeAddonInput) (req *request.Request, output *DescribeAddonOutput) { 1236 op := &request.Operation{ 1237 Name: opDescribeAddon, 1238 HTTPMethod: "GET", 1239 HTTPPath: "/clusters/{name}/addons/{addonName}", 1240 } 1241 1242 if input == nil { 1243 input = &DescribeAddonInput{} 1244 } 1245 1246 output = &DescribeAddonOutput{} 1247 req = c.newRequest(op, input, output) 1248 return 1249 } 1250 1251 // DescribeAddon API operation for Amazon Elastic Kubernetes Service. 1252 // 1253 // Describes an Amazon EKS add-on. 1254 // 1255 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1256 // with awserr.Error's Code and Message methods to get detailed information about 1257 // the error. 1258 // 1259 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1260 // API operation DescribeAddon for usage and error information. 1261 // 1262 // Returned Error Types: 1263 // * InvalidParameterException 1264 // The specified parameter is invalid. Review the available parameters for the 1265 // API request. 1266 // 1267 // * InvalidRequestException 1268 // The request is invalid given the state of the cluster. Check the state of 1269 // the cluster and the associated operations. 1270 // 1271 // * ResourceNotFoundException 1272 // The specified resource could not be found. You can view your available clusters 1273 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1274 // Amazon EKS clusters and node groups are Region-specific. 1275 // 1276 // * ClientException 1277 // These errors are usually caused by a client action. Actions can include using 1278 // an action or resource on behalf of a user that doesn't have permissions to 1279 // use the action or resource or specifying an identifier that is not valid. 1280 // 1281 // * ServerException 1282 // These errors are usually caused by a server-side issue. 1283 // 1284 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddon 1285 func (c *EKS) DescribeAddon(input *DescribeAddonInput) (*DescribeAddonOutput, error) { 1286 req, out := c.DescribeAddonRequest(input) 1287 return out, req.Send() 1288 } 1289 1290 // DescribeAddonWithContext is the same as DescribeAddon with the addition of 1291 // the ability to pass a context and additional request options. 1292 // 1293 // See DescribeAddon for details on how to use this API operation. 1294 // 1295 // The context must be non-nil and will be used for request cancellation. If 1296 // the context is nil a panic will occur. In the future the SDK may create 1297 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1298 // for more information on using Contexts. 1299 func (c *EKS) DescribeAddonWithContext(ctx aws.Context, input *DescribeAddonInput, opts ...request.Option) (*DescribeAddonOutput, error) { 1300 req, out := c.DescribeAddonRequest(input) 1301 req.SetContext(ctx) 1302 req.ApplyOptions(opts...) 1303 return out, req.Send() 1304 } 1305 1306 const opDescribeAddonVersions = "DescribeAddonVersions" 1307 1308 // DescribeAddonVersionsRequest generates a "aws/request.Request" representing the 1309 // client's request for the DescribeAddonVersions operation. The "output" return 1310 // value will be populated with the request's response once the request completes 1311 // successfully. 1312 // 1313 // Use "Send" method on the returned Request to send the API call to the service. 1314 // the "output" return value is not valid until after Send returns without error. 1315 // 1316 // See DescribeAddonVersions for more information on using the DescribeAddonVersions 1317 // API call, and error handling. 1318 // 1319 // This method is useful when you want to inject custom logic or configuration 1320 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1321 // 1322 // 1323 // // Example sending a request using the DescribeAddonVersionsRequest method. 1324 // req, resp := client.DescribeAddonVersionsRequest(params) 1325 // 1326 // err := req.Send() 1327 // if err == nil { // resp is now filled 1328 // fmt.Println(resp) 1329 // } 1330 // 1331 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersions 1332 func (c *EKS) DescribeAddonVersionsRequest(input *DescribeAddonVersionsInput) (req *request.Request, output *DescribeAddonVersionsOutput) { 1333 op := &request.Operation{ 1334 Name: opDescribeAddonVersions, 1335 HTTPMethod: "GET", 1336 HTTPPath: "/addons/supported-versions", 1337 Paginator: &request.Paginator{ 1338 InputTokens: []string{"nextToken"}, 1339 OutputTokens: []string{"nextToken"}, 1340 LimitToken: "maxResults", 1341 TruncationToken: "", 1342 }, 1343 } 1344 1345 if input == nil { 1346 input = &DescribeAddonVersionsInput{} 1347 } 1348 1349 output = &DescribeAddonVersionsOutput{} 1350 req = c.newRequest(op, input, output) 1351 return 1352 } 1353 1354 // DescribeAddonVersions API operation for Amazon Elastic Kubernetes Service. 1355 // 1356 // Describes the Kubernetes versions that the add-on can be used with. 1357 // 1358 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1359 // with awserr.Error's Code and Message methods to get detailed information about 1360 // the error. 1361 // 1362 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1363 // API operation DescribeAddonVersions for usage and error information. 1364 // 1365 // Returned Error Types: 1366 // * ServerException 1367 // These errors are usually caused by a server-side issue. 1368 // 1369 // * ResourceNotFoundException 1370 // The specified resource could not be found. You can view your available clusters 1371 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1372 // Amazon EKS clusters and node groups are Region-specific. 1373 // 1374 // * InvalidParameterException 1375 // The specified parameter is invalid. Review the available parameters for the 1376 // API request. 1377 // 1378 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersions 1379 func (c *EKS) DescribeAddonVersions(input *DescribeAddonVersionsInput) (*DescribeAddonVersionsOutput, error) { 1380 req, out := c.DescribeAddonVersionsRequest(input) 1381 return out, req.Send() 1382 } 1383 1384 // DescribeAddonVersionsWithContext is the same as DescribeAddonVersions with the addition of 1385 // the ability to pass a context and additional request options. 1386 // 1387 // See DescribeAddonVersions for details on how to use this API operation. 1388 // 1389 // The context must be non-nil and will be used for request cancellation. If 1390 // the context is nil a panic will occur. In the future the SDK may create 1391 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1392 // for more information on using Contexts. 1393 func (c *EKS) DescribeAddonVersionsWithContext(ctx aws.Context, input *DescribeAddonVersionsInput, opts ...request.Option) (*DescribeAddonVersionsOutput, error) { 1394 req, out := c.DescribeAddonVersionsRequest(input) 1395 req.SetContext(ctx) 1396 req.ApplyOptions(opts...) 1397 return out, req.Send() 1398 } 1399 1400 // DescribeAddonVersionsPages iterates over the pages of a DescribeAddonVersions operation, 1401 // calling the "fn" function with the response data for each page. To stop 1402 // iterating, return false from the fn function. 1403 // 1404 // See DescribeAddonVersions method for more information on how to use this operation. 1405 // 1406 // Note: This operation can generate multiple requests to a service. 1407 // 1408 // // Example iterating over at most 3 pages of a DescribeAddonVersions operation. 1409 // pageNum := 0 1410 // err := client.DescribeAddonVersionsPages(params, 1411 // func(page *eks.DescribeAddonVersionsOutput, lastPage bool) bool { 1412 // pageNum++ 1413 // fmt.Println(page) 1414 // return pageNum <= 3 1415 // }) 1416 // 1417 func (c *EKS) DescribeAddonVersionsPages(input *DescribeAddonVersionsInput, fn func(*DescribeAddonVersionsOutput, bool) bool) error { 1418 return c.DescribeAddonVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 1419 } 1420 1421 // DescribeAddonVersionsPagesWithContext same as DescribeAddonVersionsPages except 1422 // it takes a Context and allows setting request options on the pages. 1423 // 1424 // The context must be non-nil and will be used for request cancellation. If 1425 // the context is nil a panic will occur. In the future the SDK may create 1426 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1427 // for more information on using Contexts. 1428 func (c *EKS) DescribeAddonVersionsPagesWithContext(ctx aws.Context, input *DescribeAddonVersionsInput, fn func(*DescribeAddonVersionsOutput, bool) bool, opts ...request.Option) error { 1429 p := request.Pagination{ 1430 NewRequest: func() (*request.Request, error) { 1431 var inCpy *DescribeAddonVersionsInput 1432 if input != nil { 1433 tmp := *input 1434 inCpy = &tmp 1435 } 1436 req, _ := c.DescribeAddonVersionsRequest(inCpy) 1437 req.SetContext(ctx) 1438 req.ApplyOptions(opts...) 1439 return req, nil 1440 }, 1441 } 1442 1443 for p.Next() { 1444 if !fn(p.Page().(*DescribeAddonVersionsOutput), !p.HasNextPage()) { 1445 break 1446 } 1447 } 1448 1449 return p.Err() 1450 } 1451 1452 const opDescribeCluster = "DescribeCluster" 1453 1454 // DescribeClusterRequest generates a "aws/request.Request" representing the 1455 // client's request for the DescribeCluster operation. The "output" return 1456 // value will be populated with the request's response once the request completes 1457 // successfully. 1458 // 1459 // Use "Send" method on the returned Request to send the API call to the service. 1460 // the "output" return value is not valid until after Send returns without error. 1461 // 1462 // See DescribeCluster for more information on using the DescribeCluster 1463 // API call, and error handling. 1464 // 1465 // This method is useful when you want to inject custom logic or configuration 1466 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1467 // 1468 // 1469 // // Example sending a request using the DescribeClusterRequest method. 1470 // req, resp := client.DescribeClusterRequest(params) 1471 // 1472 // err := req.Send() 1473 // if err == nil { // resp is now filled 1474 // fmt.Println(resp) 1475 // } 1476 // 1477 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster 1478 func (c *EKS) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { 1479 op := &request.Operation{ 1480 Name: opDescribeCluster, 1481 HTTPMethod: "GET", 1482 HTTPPath: "/clusters/{name}", 1483 } 1484 1485 if input == nil { 1486 input = &DescribeClusterInput{} 1487 } 1488 1489 output = &DescribeClusterOutput{} 1490 req = c.newRequest(op, input, output) 1491 return 1492 } 1493 1494 // DescribeCluster API operation for Amazon Elastic Kubernetes Service. 1495 // 1496 // Returns descriptive information about an Amazon EKS cluster. 1497 // 1498 // The API server endpoint and certificate authority data returned by this operation 1499 // are required for kubelet and kubectl to communicate with your Kubernetes 1500 // API server. For more information, see Create a kubeconfig for Amazon EKS 1501 // (https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html). 1502 // 1503 // The API server endpoint and certificate authority data aren't available until 1504 // the cluster reaches the ACTIVE state. 1505 // 1506 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1507 // with awserr.Error's Code and Message methods to get detailed information about 1508 // the error. 1509 // 1510 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1511 // API operation DescribeCluster for usage and error information. 1512 // 1513 // Returned Error Types: 1514 // * ResourceNotFoundException 1515 // The specified resource could not be found. You can view your available clusters 1516 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1517 // Amazon EKS clusters and node groups are Region-specific. 1518 // 1519 // * ClientException 1520 // These errors are usually caused by a client action. Actions can include using 1521 // an action or resource on behalf of a user that doesn't have permissions to 1522 // use the action or resource or specifying an identifier that is not valid. 1523 // 1524 // * ServerException 1525 // These errors are usually caused by a server-side issue. 1526 // 1527 // * ServiceUnavailableException 1528 // The service is unavailable. Back off and retry the operation. 1529 // 1530 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster 1531 func (c *EKS) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { 1532 req, out := c.DescribeClusterRequest(input) 1533 return out, req.Send() 1534 } 1535 1536 // DescribeClusterWithContext is the same as DescribeCluster with the addition of 1537 // the ability to pass a context and additional request options. 1538 // 1539 // See DescribeCluster for details on how to use this API operation. 1540 // 1541 // The context must be non-nil and will be used for request cancellation. If 1542 // the context is nil a panic will occur. In the future the SDK may create 1543 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1544 // for more information on using Contexts. 1545 func (c *EKS) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { 1546 req, out := c.DescribeClusterRequest(input) 1547 req.SetContext(ctx) 1548 req.ApplyOptions(opts...) 1549 return out, req.Send() 1550 } 1551 1552 const opDescribeFargateProfile = "DescribeFargateProfile" 1553 1554 // DescribeFargateProfileRequest generates a "aws/request.Request" representing the 1555 // client's request for the DescribeFargateProfile operation. The "output" return 1556 // value will be populated with the request's response once the request completes 1557 // successfully. 1558 // 1559 // Use "Send" method on the returned Request to send the API call to the service. 1560 // the "output" return value is not valid until after Send returns without error. 1561 // 1562 // See DescribeFargateProfile for more information on using the DescribeFargateProfile 1563 // API call, and error handling. 1564 // 1565 // This method is useful when you want to inject custom logic or configuration 1566 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1567 // 1568 // 1569 // // Example sending a request using the DescribeFargateProfileRequest method. 1570 // req, resp := client.DescribeFargateProfileRequest(params) 1571 // 1572 // err := req.Send() 1573 // if err == nil { // resp is now filled 1574 // fmt.Println(resp) 1575 // } 1576 // 1577 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile 1578 func (c *EKS) DescribeFargateProfileRequest(input *DescribeFargateProfileInput) (req *request.Request, output *DescribeFargateProfileOutput) { 1579 op := &request.Operation{ 1580 Name: opDescribeFargateProfile, 1581 HTTPMethod: "GET", 1582 HTTPPath: "/clusters/{name}/fargate-profiles/{fargateProfileName}", 1583 } 1584 1585 if input == nil { 1586 input = &DescribeFargateProfileInput{} 1587 } 1588 1589 output = &DescribeFargateProfileOutput{} 1590 req = c.newRequest(op, input, output) 1591 return 1592 } 1593 1594 // DescribeFargateProfile API operation for Amazon Elastic Kubernetes Service. 1595 // 1596 // Returns descriptive information about an Fargate profile. 1597 // 1598 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1599 // with awserr.Error's Code and Message methods to get detailed information about 1600 // the error. 1601 // 1602 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1603 // API operation DescribeFargateProfile for usage and error information. 1604 // 1605 // Returned Error Types: 1606 // * InvalidParameterException 1607 // The specified parameter is invalid. Review the available parameters for the 1608 // API request. 1609 // 1610 // * ClientException 1611 // These errors are usually caused by a client action. Actions can include using 1612 // an action or resource on behalf of a user that doesn't have permissions to 1613 // use the action or resource or specifying an identifier that is not valid. 1614 // 1615 // * ServerException 1616 // These errors are usually caused by a server-side issue. 1617 // 1618 // * ResourceNotFoundException 1619 // The specified resource could not be found. You can view your available clusters 1620 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1621 // Amazon EKS clusters and node groups are Region-specific. 1622 // 1623 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile 1624 func (c *EKS) DescribeFargateProfile(input *DescribeFargateProfileInput) (*DescribeFargateProfileOutput, error) { 1625 req, out := c.DescribeFargateProfileRequest(input) 1626 return out, req.Send() 1627 } 1628 1629 // DescribeFargateProfileWithContext is the same as DescribeFargateProfile with the addition of 1630 // the ability to pass a context and additional request options. 1631 // 1632 // See DescribeFargateProfile for details on how to use this API operation. 1633 // 1634 // The context must be non-nil and will be used for request cancellation. If 1635 // the context is nil a panic will occur. In the future the SDK may create 1636 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1637 // for more information on using Contexts. 1638 func (c *EKS) DescribeFargateProfileWithContext(ctx aws.Context, input *DescribeFargateProfileInput, opts ...request.Option) (*DescribeFargateProfileOutput, error) { 1639 req, out := c.DescribeFargateProfileRequest(input) 1640 req.SetContext(ctx) 1641 req.ApplyOptions(opts...) 1642 return out, req.Send() 1643 } 1644 1645 const opDescribeIdentityProviderConfig = "DescribeIdentityProviderConfig" 1646 1647 // DescribeIdentityProviderConfigRequest generates a "aws/request.Request" representing the 1648 // client's request for the DescribeIdentityProviderConfig operation. The "output" return 1649 // value will be populated with the request's response once the request completes 1650 // successfully. 1651 // 1652 // Use "Send" method on the returned Request to send the API call to the service. 1653 // the "output" return value is not valid until after Send returns without error. 1654 // 1655 // See DescribeIdentityProviderConfig for more information on using the DescribeIdentityProviderConfig 1656 // API call, and error handling. 1657 // 1658 // This method is useful when you want to inject custom logic or configuration 1659 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1660 // 1661 // 1662 // // Example sending a request using the DescribeIdentityProviderConfigRequest method. 1663 // req, resp := client.DescribeIdentityProviderConfigRequest(params) 1664 // 1665 // err := req.Send() 1666 // if err == nil { // resp is now filled 1667 // fmt.Println(resp) 1668 // } 1669 // 1670 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfig 1671 func (c *EKS) DescribeIdentityProviderConfigRequest(input *DescribeIdentityProviderConfigInput) (req *request.Request, output *DescribeIdentityProviderConfigOutput) { 1672 op := &request.Operation{ 1673 Name: opDescribeIdentityProviderConfig, 1674 HTTPMethod: "POST", 1675 HTTPPath: "/clusters/{name}/identity-provider-configs/describe", 1676 } 1677 1678 if input == nil { 1679 input = &DescribeIdentityProviderConfigInput{} 1680 } 1681 1682 output = &DescribeIdentityProviderConfigOutput{} 1683 req = c.newRequest(op, input, output) 1684 return 1685 } 1686 1687 // DescribeIdentityProviderConfig API operation for Amazon Elastic Kubernetes Service. 1688 // 1689 // Returns descriptive information about an identity provider configuration. 1690 // 1691 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1692 // with awserr.Error's Code and Message methods to get detailed information about 1693 // the error. 1694 // 1695 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1696 // API operation DescribeIdentityProviderConfig for usage and error information. 1697 // 1698 // Returned Error Types: 1699 // * InvalidParameterException 1700 // The specified parameter is invalid. Review the available parameters for the 1701 // API request. 1702 // 1703 // * ResourceNotFoundException 1704 // The specified resource could not be found. You can view your available clusters 1705 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1706 // Amazon EKS clusters and node groups are Region-specific. 1707 // 1708 // * ClientException 1709 // These errors are usually caused by a client action. Actions can include using 1710 // an action or resource on behalf of a user that doesn't have permissions to 1711 // use the action or resource or specifying an identifier that is not valid. 1712 // 1713 // * ServerException 1714 // These errors are usually caused by a server-side issue. 1715 // 1716 // * ServiceUnavailableException 1717 // The service is unavailable. Back off and retry the operation. 1718 // 1719 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfig 1720 func (c *EKS) DescribeIdentityProviderConfig(input *DescribeIdentityProviderConfigInput) (*DescribeIdentityProviderConfigOutput, error) { 1721 req, out := c.DescribeIdentityProviderConfigRequest(input) 1722 return out, req.Send() 1723 } 1724 1725 // DescribeIdentityProviderConfigWithContext is the same as DescribeIdentityProviderConfig with the addition of 1726 // the ability to pass a context and additional request options. 1727 // 1728 // See DescribeIdentityProviderConfig for details on how to use this API operation. 1729 // 1730 // The context must be non-nil and will be used for request cancellation. If 1731 // the context is nil a panic will occur. In the future the SDK may create 1732 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1733 // for more information on using Contexts. 1734 func (c *EKS) DescribeIdentityProviderConfigWithContext(ctx aws.Context, input *DescribeIdentityProviderConfigInput, opts ...request.Option) (*DescribeIdentityProviderConfigOutput, error) { 1735 req, out := c.DescribeIdentityProviderConfigRequest(input) 1736 req.SetContext(ctx) 1737 req.ApplyOptions(opts...) 1738 return out, req.Send() 1739 } 1740 1741 const opDescribeNodegroup = "DescribeNodegroup" 1742 1743 // DescribeNodegroupRequest generates a "aws/request.Request" representing the 1744 // client's request for the DescribeNodegroup operation. The "output" return 1745 // value will be populated with the request's response once the request completes 1746 // successfully. 1747 // 1748 // Use "Send" method on the returned Request to send the API call to the service. 1749 // the "output" return value is not valid until after Send returns without error. 1750 // 1751 // See DescribeNodegroup for more information on using the DescribeNodegroup 1752 // API call, and error handling. 1753 // 1754 // This method is useful when you want to inject custom logic or configuration 1755 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1756 // 1757 // 1758 // // Example sending a request using the DescribeNodegroupRequest method. 1759 // req, resp := client.DescribeNodegroupRequest(params) 1760 // 1761 // err := req.Send() 1762 // if err == nil { // resp is now filled 1763 // fmt.Println(resp) 1764 // } 1765 // 1766 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroup 1767 func (c *EKS) DescribeNodegroupRequest(input *DescribeNodegroupInput) (req *request.Request, output *DescribeNodegroupOutput) { 1768 op := &request.Operation{ 1769 Name: opDescribeNodegroup, 1770 HTTPMethod: "GET", 1771 HTTPPath: "/clusters/{name}/node-groups/{nodegroupName}", 1772 } 1773 1774 if input == nil { 1775 input = &DescribeNodegroupInput{} 1776 } 1777 1778 output = &DescribeNodegroupOutput{} 1779 req = c.newRequest(op, input, output) 1780 return 1781 } 1782 1783 // DescribeNodegroup API operation for Amazon Elastic Kubernetes Service. 1784 // 1785 // Returns descriptive information about an Amazon EKS node group. 1786 // 1787 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1788 // with awserr.Error's Code and Message methods to get detailed information about 1789 // the error. 1790 // 1791 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1792 // API operation DescribeNodegroup for usage and error information. 1793 // 1794 // Returned Error Types: 1795 // * InvalidParameterException 1796 // The specified parameter is invalid. Review the available parameters for the 1797 // API request. 1798 // 1799 // * ResourceNotFoundException 1800 // The specified resource could not be found. You can view your available clusters 1801 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1802 // Amazon EKS clusters and node groups are Region-specific. 1803 // 1804 // * ClientException 1805 // These errors are usually caused by a client action. Actions can include using 1806 // an action or resource on behalf of a user that doesn't have permissions to 1807 // use the action or resource or specifying an identifier that is not valid. 1808 // 1809 // * ServerException 1810 // These errors are usually caused by a server-side issue. 1811 // 1812 // * ServiceUnavailableException 1813 // The service is unavailable. Back off and retry the operation. 1814 // 1815 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroup 1816 func (c *EKS) DescribeNodegroup(input *DescribeNodegroupInput) (*DescribeNodegroupOutput, error) { 1817 req, out := c.DescribeNodegroupRequest(input) 1818 return out, req.Send() 1819 } 1820 1821 // DescribeNodegroupWithContext is the same as DescribeNodegroup with the addition of 1822 // the ability to pass a context and additional request options. 1823 // 1824 // See DescribeNodegroup for details on how to use this API operation. 1825 // 1826 // The context must be non-nil and will be used for request cancellation. If 1827 // the context is nil a panic will occur. In the future the SDK may create 1828 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1829 // for more information on using Contexts. 1830 func (c *EKS) DescribeNodegroupWithContext(ctx aws.Context, input *DescribeNodegroupInput, opts ...request.Option) (*DescribeNodegroupOutput, error) { 1831 req, out := c.DescribeNodegroupRequest(input) 1832 req.SetContext(ctx) 1833 req.ApplyOptions(opts...) 1834 return out, req.Send() 1835 } 1836 1837 const opDescribeUpdate = "DescribeUpdate" 1838 1839 // DescribeUpdateRequest generates a "aws/request.Request" representing the 1840 // client's request for the DescribeUpdate operation. The "output" return 1841 // value will be populated with the request's response once the request completes 1842 // successfully. 1843 // 1844 // Use "Send" method on the returned Request to send the API call to the service. 1845 // the "output" return value is not valid until after Send returns without error. 1846 // 1847 // See DescribeUpdate for more information on using the DescribeUpdate 1848 // API call, and error handling. 1849 // 1850 // This method is useful when you want to inject custom logic or configuration 1851 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1852 // 1853 // 1854 // // Example sending a request using the DescribeUpdateRequest method. 1855 // req, resp := client.DescribeUpdateRequest(params) 1856 // 1857 // err := req.Send() 1858 // if err == nil { // resp is now filled 1859 // fmt.Println(resp) 1860 // } 1861 // 1862 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdate 1863 func (c *EKS) DescribeUpdateRequest(input *DescribeUpdateInput) (req *request.Request, output *DescribeUpdateOutput) { 1864 op := &request.Operation{ 1865 Name: opDescribeUpdate, 1866 HTTPMethod: "GET", 1867 HTTPPath: "/clusters/{name}/updates/{updateId}", 1868 } 1869 1870 if input == nil { 1871 input = &DescribeUpdateInput{} 1872 } 1873 1874 output = &DescribeUpdateOutput{} 1875 req = c.newRequest(op, input, output) 1876 return 1877 } 1878 1879 // DescribeUpdate API operation for Amazon Elastic Kubernetes Service. 1880 // 1881 // Returns descriptive information about an update against your Amazon EKS cluster 1882 // or associated managed node group. 1883 // 1884 // When the status of the update is Succeeded, the update is complete. If an 1885 // update fails, the status is Failed, and an error detail explains the reason 1886 // for the failure. 1887 // 1888 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1889 // with awserr.Error's Code and Message methods to get detailed information about 1890 // the error. 1891 // 1892 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1893 // API operation DescribeUpdate for usage and error information. 1894 // 1895 // Returned Error Types: 1896 // * InvalidParameterException 1897 // The specified parameter is invalid. Review the available parameters for the 1898 // API request. 1899 // 1900 // * ClientException 1901 // These errors are usually caused by a client action. Actions can include using 1902 // an action or resource on behalf of a user that doesn't have permissions to 1903 // use the action or resource or specifying an identifier that is not valid. 1904 // 1905 // * ServerException 1906 // These errors are usually caused by a server-side issue. 1907 // 1908 // * ResourceNotFoundException 1909 // The specified resource could not be found. You can view your available clusters 1910 // with ListClusters. You can view your available managed node groups with ListNodegroups. 1911 // Amazon EKS clusters and node groups are Region-specific. 1912 // 1913 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdate 1914 func (c *EKS) DescribeUpdate(input *DescribeUpdateInput) (*DescribeUpdateOutput, error) { 1915 req, out := c.DescribeUpdateRequest(input) 1916 return out, req.Send() 1917 } 1918 1919 // DescribeUpdateWithContext is the same as DescribeUpdate with the addition of 1920 // the ability to pass a context and additional request options. 1921 // 1922 // See DescribeUpdate for details on how to use this API operation. 1923 // 1924 // The context must be non-nil and will be used for request cancellation. If 1925 // the context is nil a panic will occur. In the future the SDK may create 1926 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1927 // for more information on using Contexts. 1928 func (c *EKS) DescribeUpdateWithContext(ctx aws.Context, input *DescribeUpdateInput, opts ...request.Option) (*DescribeUpdateOutput, error) { 1929 req, out := c.DescribeUpdateRequest(input) 1930 req.SetContext(ctx) 1931 req.ApplyOptions(opts...) 1932 return out, req.Send() 1933 } 1934 1935 const opDisassociateIdentityProviderConfig = "DisassociateIdentityProviderConfig" 1936 1937 // DisassociateIdentityProviderConfigRequest generates a "aws/request.Request" representing the 1938 // client's request for the DisassociateIdentityProviderConfig operation. The "output" return 1939 // value will be populated with the request's response once the request completes 1940 // successfully. 1941 // 1942 // Use "Send" method on the returned Request to send the API call to the service. 1943 // the "output" return value is not valid until after Send returns without error. 1944 // 1945 // See DisassociateIdentityProviderConfig for more information on using the DisassociateIdentityProviderConfig 1946 // API call, and error handling. 1947 // 1948 // This method is useful when you want to inject custom logic or configuration 1949 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1950 // 1951 // 1952 // // Example sending a request using the DisassociateIdentityProviderConfigRequest method. 1953 // req, resp := client.DisassociateIdentityProviderConfigRequest(params) 1954 // 1955 // err := req.Send() 1956 // if err == nil { // resp is now filled 1957 // fmt.Println(resp) 1958 // } 1959 // 1960 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfig 1961 func (c *EKS) DisassociateIdentityProviderConfigRequest(input *DisassociateIdentityProviderConfigInput) (req *request.Request, output *DisassociateIdentityProviderConfigOutput) { 1962 op := &request.Operation{ 1963 Name: opDisassociateIdentityProviderConfig, 1964 HTTPMethod: "POST", 1965 HTTPPath: "/clusters/{name}/identity-provider-configs/disassociate", 1966 } 1967 1968 if input == nil { 1969 input = &DisassociateIdentityProviderConfigInput{} 1970 } 1971 1972 output = &DisassociateIdentityProviderConfigOutput{} 1973 req = c.newRequest(op, input, output) 1974 return 1975 } 1976 1977 // DisassociateIdentityProviderConfig API operation for Amazon Elastic Kubernetes Service. 1978 // 1979 // Disassociates an identity provider configuration from a cluster. If you disassociate 1980 // an identity provider from your cluster, users included in the provider can 1981 // no longer access the cluster. However, you can still access the cluster with 1982 // Amazon Web Services IAM users. 1983 // 1984 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1985 // with awserr.Error's Code and Message methods to get detailed information about 1986 // the error. 1987 // 1988 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 1989 // API operation DisassociateIdentityProviderConfig for usage and error information. 1990 // 1991 // Returned Error Types: 1992 // * InvalidParameterException 1993 // The specified parameter is invalid. Review the available parameters for the 1994 // API request. 1995 // 1996 // * ClientException 1997 // These errors are usually caused by a client action. Actions can include using 1998 // an action or resource on behalf of a user that doesn't have permissions to 1999 // use the action or resource or specifying an identifier that is not valid. 2000 // 2001 // * ServerException 2002 // These errors are usually caused by a server-side issue. 2003 // 2004 // * ResourceInUseException 2005 // The specified resource is in use. 2006 // 2007 // * ResourceNotFoundException 2008 // The specified resource could not be found. You can view your available clusters 2009 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2010 // Amazon EKS clusters and node groups are Region-specific. 2011 // 2012 // * InvalidRequestException 2013 // The request is invalid given the state of the cluster. Check the state of 2014 // the cluster and the associated operations. 2015 // 2016 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfig 2017 func (c *EKS) DisassociateIdentityProviderConfig(input *DisassociateIdentityProviderConfigInput) (*DisassociateIdentityProviderConfigOutput, error) { 2018 req, out := c.DisassociateIdentityProviderConfigRequest(input) 2019 return out, req.Send() 2020 } 2021 2022 // DisassociateIdentityProviderConfigWithContext is the same as DisassociateIdentityProviderConfig with the addition of 2023 // the ability to pass a context and additional request options. 2024 // 2025 // See DisassociateIdentityProviderConfig for details on how to use this API operation. 2026 // 2027 // The context must be non-nil and will be used for request cancellation. If 2028 // the context is nil a panic will occur. In the future the SDK may create 2029 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2030 // for more information on using Contexts. 2031 func (c *EKS) DisassociateIdentityProviderConfigWithContext(ctx aws.Context, input *DisassociateIdentityProviderConfigInput, opts ...request.Option) (*DisassociateIdentityProviderConfigOutput, error) { 2032 req, out := c.DisassociateIdentityProviderConfigRequest(input) 2033 req.SetContext(ctx) 2034 req.ApplyOptions(opts...) 2035 return out, req.Send() 2036 } 2037 2038 const opListAddons = "ListAddons" 2039 2040 // ListAddonsRequest generates a "aws/request.Request" representing the 2041 // client's request for the ListAddons operation. The "output" return 2042 // value will be populated with the request's response once the request completes 2043 // successfully. 2044 // 2045 // Use "Send" method on the returned Request to send the API call to the service. 2046 // the "output" return value is not valid until after Send returns without error. 2047 // 2048 // See ListAddons for more information on using the ListAddons 2049 // API call, and error handling. 2050 // 2051 // This method is useful when you want to inject custom logic or configuration 2052 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2053 // 2054 // 2055 // // Example sending a request using the ListAddonsRequest method. 2056 // req, resp := client.ListAddonsRequest(params) 2057 // 2058 // err := req.Send() 2059 // if err == nil { // resp is now filled 2060 // fmt.Println(resp) 2061 // } 2062 // 2063 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddons 2064 func (c *EKS) ListAddonsRequest(input *ListAddonsInput) (req *request.Request, output *ListAddonsOutput) { 2065 op := &request.Operation{ 2066 Name: opListAddons, 2067 HTTPMethod: "GET", 2068 HTTPPath: "/clusters/{name}/addons", 2069 Paginator: &request.Paginator{ 2070 InputTokens: []string{"nextToken"}, 2071 OutputTokens: []string{"nextToken"}, 2072 LimitToken: "maxResults", 2073 TruncationToken: "", 2074 }, 2075 } 2076 2077 if input == nil { 2078 input = &ListAddonsInput{} 2079 } 2080 2081 output = &ListAddonsOutput{} 2082 req = c.newRequest(op, input, output) 2083 return 2084 } 2085 2086 // ListAddons API operation for Amazon Elastic Kubernetes Service. 2087 // 2088 // Lists the available add-ons. 2089 // 2090 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2091 // with awserr.Error's Code and Message methods to get detailed information about 2092 // the error. 2093 // 2094 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2095 // API operation ListAddons for usage and error information. 2096 // 2097 // Returned Error Types: 2098 // * InvalidParameterException 2099 // The specified parameter is invalid. Review the available parameters for the 2100 // API request. 2101 // 2102 // * InvalidRequestException 2103 // The request is invalid given the state of the cluster. Check the state of 2104 // the cluster and the associated operations. 2105 // 2106 // * ClientException 2107 // These errors are usually caused by a client action. Actions can include using 2108 // an action or resource on behalf of a user that doesn't have permissions to 2109 // use the action or resource or specifying an identifier that is not valid. 2110 // 2111 // * ResourceNotFoundException 2112 // The specified resource could not be found. You can view your available clusters 2113 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2114 // Amazon EKS clusters and node groups are Region-specific. 2115 // 2116 // * ServerException 2117 // These errors are usually caused by a server-side issue. 2118 // 2119 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddons 2120 func (c *EKS) ListAddons(input *ListAddonsInput) (*ListAddonsOutput, error) { 2121 req, out := c.ListAddonsRequest(input) 2122 return out, req.Send() 2123 } 2124 2125 // ListAddonsWithContext is the same as ListAddons with the addition of 2126 // the ability to pass a context and additional request options. 2127 // 2128 // See ListAddons for details on how to use this API operation. 2129 // 2130 // The context must be non-nil and will be used for request cancellation. If 2131 // the context is nil a panic will occur. In the future the SDK may create 2132 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2133 // for more information on using Contexts. 2134 func (c *EKS) ListAddonsWithContext(ctx aws.Context, input *ListAddonsInput, opts ...request.Option) (*ListAddonsOutput, error) { 2135 req, out := c.ListAddonsRequest(input) 2136 req.SetContext(ctx) 2137 req.ApplyOptions(opts...) 2138 return out, req.Send() 2139 } 2140 2141 // ListAddonsPages iterates over the pages of a ListAddons operation, 2142 // calling the "fn" function with the response data for each page. To stop 2143 // iterating, return false from the fn function. 2144 // 2145 // See ListAddons method for more information on how to use this operation. 2146 // 2147 // Note: This operation can generate multiple requests to a service. 2148 // 2149 // // Example iterating over at most 3 pages of a ListAddons operation. 2150 // pageNum := 0 2151 // err := client.ListAddonsPages(params, 2152 // func(page *eks.ListAddonsOutput, lastPage bool) bool { 2153 // pageNum++ 2154 // fmt.Println(page) 2155 // return pageNum <= 3 2156 // }) 2157 // 2158 func (c *EKS) ListAddonsPages(input *ListAddonsInput, fn func(*ListAddonsOutput, bool) bool) error { 2159 return c.ListAddonsPagesWithContext(aws.BackgroundContext(), input, fn) 2160 } 2161 2162 // ListAddonsPagesWithContext same as ListAddonsPages except 2163 // it takes a Context and allows setting request options on the pages. 2164 // 2165 // The context must be non-nil and will be used for request cancellation. If 2166 // the context is nil a panic will occur. In the future the SDK may create 2167 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2168 // for more information on using Contexts. 2169 func (c *EKS) ListAddonsPagesWithContext(ctx aws.Context, input *ListAddonsInput, fn func(*ListAddonsOutput, bool) bool, opts ...request.Option) error { 2170 p := request.Pagination{ 2171 NewRequest: func() (*request.Request, error) { 2172 var inCpy *ListAddonsInput 2173 if input != nil { 2174 tmp := *input 2175 inCpy = &tmp 2176 } 2177 req, _ := c.ListAddonsRequest(inCpy) 2178 req.SetContext(ctx) 2179 req.ApplyOptions(opts...) 2180 return req, nil 2181 }, 2182 } 2183 2184 for p.Next() { 2185 if !fn(p.Page().(*ListAddonsOutput), !p.HasNextPage()) { 2186 break 2187 } 2188 } 2189 2190 return p.Err() 2191 } 2192 2193 const opListClusters = "ListClusters" 2194 2195 // ListClustersRequest generates a "aws/request.Request" representing the 2196 // client's request for the ListClusters operation. The "output" return 2197 // value will be populated with the request's response once the request completes 2198 // successfully. 2199 // 2200 // Use "Send" method on the returned Request to send the API call to the service. 2201 // the "output" return value is not valid until after Send returns without error. 2202 // 2203 // See ListClusters for more information on using the ListClusters 2204 // API call, and error handling. 2205 // 2206 // This method is useful when you want to inject custom logic or configuration 2207 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2208 // 2209 // 2210 // // Example sending a request using the ListClustersRequest method. 2211 // req, resp := client.ListClustersRequest(params) 2212 // 2213 // err := req.Send() 2214 // if err == nil { // resp is now filled 2215 // fmt.Println(resp) 2216 // } 2217 // 2218 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClusters 2219 func (c *EKS) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { 2220 op := &request.Operation{ 2221 Name: opListClusters, 2222 HTTPMethod: "GET", 2223 HTTPPath: "/clusters", 2224 Paginator: &request.Paginator{ 2225 InputTokens: []string{"nextToken"}, 2226 OutputTokens: []string{"nextToken"}, 2227 LimitToken: "maxResults", 2228 TruncationToken: "", 2229 }, 2230 } 2231 2232 if input == nil { 2233 input = &ListClustersInput{} 2234 } 2235 2236 output = &ListClustersOutput{} 2237 req = c.newRequest(op, input, output) 2238 return 2239 } 2240 2241 // ListClusters API operation for Amazon Elastic Kubernetes Service. 2242 // 2243 // Lists the Amazon EKS clusters in your Amazon Web Services account in the 2244 // specified Region. 2245 // 2246 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2247 // with awserr.Error's Code and Message methods to get detailed information about 2248 // the error. 2249 // 2250 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2251 // API operation ListClusters for usage and error information. 2252 // 2253 // Returned Error Types: 2254 // * InvalidParameterException 2255 // The specified parameter is invalid. Review the available parameters for the 2256 // API request. 2257 // 2258 // * ClientException 2259 // These errors are usually caused by a client action. Actions can include using 2260 // an action or resource on behalf of a user that doesn't have permissions to 2261 // use the action or resource or specifying an identifier that is not valid. 2262 // 2263 // * ServerException 2264 // These errors are usually caused by a server-side issue. 2265 // 2266 // * ServiceUnavailableException 2267 // The service is unavailable. Back off and retry the operation. 2268 // 2269 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClusters 2270 func (c *EKS) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { 2271 req, out := c.ListClustersRequest(input) 2272 return out, req.Send() 2273 } 2274 2275 // ListClustersWithContext is the same as ListClusters with the addition of 2276 // the ability to pass a context and additional request options. 2277 // 2278 // See ListClusters for details on how to use this API operation. 2279 // 2280 // The context must be non-nil and will be used for request cancellation. If 2281 // the context is nil a panic will occur. In the future the SDK may create 2282 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2283 // for more information on using Contexts. 2284 func (c *EKS) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) { 2285 req, out := c.ListClustersRequest(input) 2286 req.SetContext(ctx) 2287 req.ApplyOptions(opts...) 2288 return out, req.Send() 2289 } 2290 2291 // ListClustersPages iterates over the pages of a ListClusters operation, 2292 // calling the "fn" function with the response data for each page. To stop 2293 // iterating, return false from the fn function. 2294 // 2295 // See ListClusters method for more information on how to use this operation. 2296 // 2297 // Note: This operation can generate multiple requests to a service. 2298 // 2299 // // Example iterating over at most 3 pages of a ListClusters operation. 2300 // pageNum := 0 2301 // err := client.ListClustersPages(params, 2302 // func(page *eks.ListClustersOutput, lastPage bool) bool { 2303 // pageNum++ 2304 // fmt.Println(page) 2305 // return pageNum <= 3 2306 // }) 2307 // 2308 func (c *EKS) ListClustersPages(input *ListClustersInput, fn func(*ListClustersOutput, bool) bool) error { 2309 return c.ListClustersPagesWithContext(aws.BackgroundContext(), input, fn) 2310 } 2311 2312 // ListClustersPagesWithContext same as ListClustersPages except 2313 // it takes a Context and allows setting request options on the pages. 2314 // 2315 // The context must be non-nil and will be used for request cancellation. If 2316 // the context is nil a panic will occur. In the future the SDK may create 2317 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2318 // for more information on using Contexts. 2319 func (c *EKS) ListClustersPagesWithContext(ctx aws.Context, input *ListClustersInput, fn func(*ListClustersOutput, bool) bool, opts ...request.Option) error { 2320 p := request.Pagination{ 2321 NewRequest: func() (*request.Request, error) { 2322 var inCpy *ListClustersInput 2323 if input != nil { 2324 tmp := *input 2325 inCpy = &tmp 2326 } 2327 req, _ := c.ListClustersRequest(inCpy) 2328 req.SetContext(ctx) 2329 req.ApplyOptions(opts...) 2330 return req, nil 2331 }, 2332 } 2333 2334 for p.Next() { 2335 if !fn(p.Page().(*ListClustersOutput), !p.HasNextPage()) { 2336 break 2337 } 2338 } 2339 2340 return p.Err() 2341 } 2342 2343 const opListFargateProfiles = "ListFargateProfiles" 2344 2345 // ListFargateProfilesRequest generates a "aws/request.Request" representing the 2346 // client's request for the ListFargateProfiles operation. The "output" return 2347 // value will be populated with the request's response once the request completes 2348 // successfully. 2349 // 2350 // Use "Send" method on the returned Request to send the API call to the service. 2351 // the "output" return value is not valid until after Send returns without error. 2352 // 2353 // See ListFargateProfiles for more information on using the ListFargateProfiles 2354 // API call, and error handling. 2355 // 2356 // This method is useful when you want to inject custom logic or configuration 2357 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2358 // 2359 // 2360 // // Example sending a request using the ListFargateProfilesRequest method. 2361 // req, resp := client.ListFargateProfilesRequest(params) 2362 // 2363 // err := req.Send() 2364 // if err == nil { // resp is now filled 2365 // fmt.Println(resp) 2366 // } 2367 // 2368 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfiles 2369 func (c *EKS) ListFargateProfilesRequest(input *ListFargateProfilesInput) (req *request.Request, output *ListFargateProfilesOutput) { 2370 op := &request.Operation{ 2371 Name: opListFargateProfiles, 2372 HTTPMethod: "GET", 2373 HTTPPath: "/clusters/{name}/fargate-profiles", 2374 Paginator: &request.Paginator{ 2375 InputTokens: []string{"nextToken"}, 2376 OutputTokens: []string{"nextToken"}, 2377 LimitToken: "maxResults", 2378 TruncationToken: "", 2379 }, 2380 } 2381 2382 if input == nil { 2383 input = &ListFargateProfilesInput{} 2384 } 2385 2386 output = &ListFargateProfilesOutput{} 2387 req = c.newRequest(op, input, output) 2388 return 2389 } 2390 2391 // ListFargateProfiles API operation for Amazon Elastic Kubernetes Service. 2392 // 2393 // Lists the Fargate profiles associated with the specified cluster in your 2394 // Amazon Web Services account in the specified Region. 2395 // 2396 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2397 // with awserr.Error's Code and Message methods to get detailed information about 2398 // the error. 2399 // 2400 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2401 // API operation ListFargateProfiles for usage and error information. 2402 // 2403 // Returned Error Types: 2404 // * InvalidParameterException 2405 // The specified parameter is invalid. Review the available parameters for the 2406 // API request. 2407 // 2408 // * ResourceNotFoundException 2409 // The specified resource could not be found. You can view your available clusters 2410 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2411 // Amazon EKS clusters and node groups are Region-specific. 2412 // 2413 // * ClientException 2414 // These errors are usually caused by a client action. Actions can include using 2415 // an action or resource on behalf of a user that doesn't have permissions to 2416 // use the action or resource or specifying an identifier that is not valid. 2417 // 2418 // * ServerException 2419 // These errors are usually caused by a server-side issue. 2420 // 2421 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfiles 2422 func (c *EKS) ListFargateProfiles(input *ListFargateProfilesInput) (*ListFargateProfilesOutput, error) { 2423 req, out := c.ListFargateProfilesRequest(input) 2424 return out, req.Send() 2425 } 2426 2427 // ListFargateProfilesWithContext is the same as ListFargateProfiles with the addition of 2428 // the ability to pass a context and additional request options. 2429 // 2430 // See ListFargateProfiles for details on how to use this API operation. 2431 // 2432 // The context must be non-nil and will be used for request cancellation. If 2433 // the context is nil a panic will occur. In the future the SDK may create 2434 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2435 // for more information on using Contexts. 2436 func (c *EKS) ListFargateProfilesWithContext(ctx aws.Context, input *ListFargateProfilesInput, opts ...request.Option) (*ListFargateProfilesOutput, error) { 2437 req, out := c.ListFargateProfilesRequest(input) 2438 req.SetContext(ctx) 2439 req.ApplyOptions(opts...) 2440 return out, req.Send() 2441 } 2442 2443 // ListFargateProfilesPages iterates over the pages of a ListFargateProfiles operation, 2444 // calling the "fn" function with the response data for each page. To stop 2445 // iterating, return false from the fn function. 2446 // 2447 // See ListFargateProfiles method for more information on how to use this operation. 2448 // 2449 // Note: This operation can generate multiple requests to a service. 2450 // 2451 // // Example iterating over at most 3 pages of a ListFargateProfiles operation. 2452 // pageNum := 0 2453 // err := client.ListFargateProfilesPages(params, 2454 // func(page *eks.ListFargateProfilesOutput, lastPage bool) bool { 2455 // pageNum++ 2456 // fmt.Println(page) 2457 // return pageNum <= 3 2458 // }) 2459 // 2460 func (c *EKS) ListFargateProfilesPages(input *ListFargateProfilesInput, fn func(*ListFargateProfilesOutput, bool) bool) error { 2461 return c.ListFargateProfilesPagesWithContext(aws.BackgroundContext(), input, fn) 2462 } 2463 2464 // ListFargateProfilesPagesWithContext same as ListFargateProfilesPages except 2465 // it takes a Context and allows setting request options on the pages. 2466 // 2467 // The context must be non-nil and will be used for request cancellation. If 2468 // the context is nil a panic will occur. In the future the SDK may create 2469 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2470 // for more information on using Contexts. 2471 func (c *EKS) ListFargateProfilesPagesWithContext(ctx aws.Context, input *ListFargateProfilesInput, fn func(*ListFargateProfilesOutput, bool) bool, opts ...request.Option) error { 2472 p := request.Pagination{ 2473 NewRequest: func() (*request.Request, error) { 2474 var inCpy *ListFargateProfilesInput 2475 if input != nil { 2476 tmp := *input 2477 inCpy = &tmp 2478 } 2479 req, _ := c.ListFargateProfilesRequest(inCpy) 2480 req.SetContext(ctx) 2481 req.ApplyOptions(opts...) 2482 return req, nil 2483 }, 2484 } 2485 2486 for p.Next() { 2487 if !fn(p.Page().(*ListFargateProfilesOutput), !p.HasNextPage()) { 2488 break 2489 } 2490 } 2491 2492 return p.Err() 2493 } 2494 2495 const opListIdentityProviderConfigs = "ListIdentityProviderConfigs" 2496 2497 // ListIdentityProviderConfigsRequest generates a "aws/request.Request" representing the 2498 // client's request for the ListIdentityProviderConfigs operation. The "output" return 2499 // value will be populated with the request's response once the request completes 2500 // successfully. 2501 // 2502 // Use "Send" method on the returned Request to send the API call to the service. 2503 // the "output" return value is not valid until after Send returns without error. 2504 // 2505 // See ListIdentityProviderConfigs for more information on using the ListIdentityProviderConfigs 2506 // API call, and error handling. 2507 // 2508 // This method is useful when you want to inject custom logic or configuration 2509 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2510 // 2511 // 2512 // // Example sending a request using the ListIdentityProviderConfigsRequest method. 2513 // req, resp := client.ListIdentityProviderConfigsRequest(params) 2514 // 2515 // err := req.Send() 2516 // if err == nil { // resp is now filled 2517 // fmt.Println(resp) 2518 // } 2519 // 2520 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigs 2521 func (c *EKS) ListIdentityProviderConfigsRequest(input *ListIdentityProviderConfigsInput) (req *request.Request, output *ListIdentityProviderConfigsOutput) { 2522 op := &request.Operation{ 2523 Name: opListIdentityProviderConfigs, 2524 HTTPMethod: "GET", 2525 HTTPPath: "/clusters/{name}/identity-provider-configs", 2526 Paginator: &request.Paginator{ 2527 InputTokens: []string{"nextToken"}, 2528 OutputTokens: []string{"nextToken"}, 2529 LimitToken: "maxResults", 2530 TruncationToken: "", 2531 }, 2532 } 2533 2534 if input == nil { 2535 input = &ListIdentityProviderConfigsInput{} 2536 } 2537 2538 output = &ListIdentityProviderConfigsOutput{} 2539 req = c.newRequest(op, input, output) 2540 return 2541 } 2542 2543 // ListIdentityProviderConfigs API operation for Amazon Elastic Kubernetes Service. 2544 // 2545 // A list of identity provider configurations. 2546 // 2547 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2548 // with awserr.Error's Code and Message methods to get detailed information about 2549 // the error. 2550 // 2551 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2552 // API operation ListIdentityProviderConfigs for usage and error information. 2553 // 2554 // Returned Error Types: 2555 // * InvalidParameterException 2556 // The specified parameter is invalid. Review the available parameters for the 2557 // API request. 2558 // 2559 // * ClientException 2560 // These errors are usually caused by a client action. Actions can include using 2561 // an action or resource on behalf of a user that doesn't have permissions to 2562 // use the action or resource or specifying an identifier that is not valid. 2563 // 2564 // * ServerException 2565 // These errors are usually caused by a server-side issue. 2566 // 2567 // * ServiceUnavailableException 2568 // The service is unavailable. Back off and retry the operation. 2569 // 2570 // * ResourceNotFoundException 2571 // The specified resource could not be found. You can view your available clusters 2572 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2573 // Amazon EKS clusters and node groups are Region-specific. 2574 // 2575 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigs 2576 func (c *EKS) ListIdentityProviderConfigs(input *ListIdentityProviderConfigsInput) (*ListIdentityProviderConfigsOutput, error) { 2577 req, out := c.ListIdentityProviderConfigsRequest(input) 2578 return out, req.Send() 2579 } 2580 2581 // ListIdentityProviderConfigsWithContext is the same as ListIdentityProviderConfigs with the addition of 2582 // the ability to pass a context and additional request options. 2583 // 2584 // See ListIdentityProviderConfigs for details on how to use this API operation. 2585 // 2586 // The context must be non-nil and will be used for request cancellation. If 2587 // the context is nil a panic will occur. In the future the SDK may create 2588 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2589 // for more information on using Contexts. 2590 func (c *EKS) ListIdentityProviderConfigsWithContext(ctx aws.Context, input *ListIdentityProviderConfigsInput, opts ...request.Option) (*ListIdentityProviderConfigsOutput, error) { 2591 req, out := c.ListIdentityProviderConfigsRequest(input) 2592 req.SetContext(ctx) 2593 req.ApplyOptions(opts...) 2594 return out, req.Send() 2595 } 2596 2597 // ListIdentityProviderConfigsPages iterates over the pages of a ListIdentityProviderConfigs operation, 2598 // calling the "fn" function with the response data for each page. To stop 2599 // iterating, return false from the fn function. 2600 // 2601 // See ListIdentityProviderConfigs method for more information on how to use this operation. 2602 // 2603 // Note: This operation can generate multiple requests to a service. 2604 // 2605 // // Example iterating over at most 3 pages of a ListIdentityProviderConfigs operation. 2606 // pageNum := 0 2607 // err := client.ListIdentityProviderConfigsPages(params, 2608 // func(page *eks.ListIdentityProviderConfigsOutput, lastPage bool) bool { 2609 // pageNum++ 2610 // fmt.Println(page) 2611 // return pageNum <= 3 2612 // }) 2613 // 2614 func (c *EKS) ListIdentityProviderConfigsPages(input *ListIdentityProviderConfigsInput, fn func(*ListIdentityProviderConfigsOutput, bool) bool) error { 2615 return c.ListIdentityProviderConfigsPagesWithContext(aws.BackgroundContext(), input, fn) 2616 } 2617 2618 // ListIdentityProviderConfigsPagesWithContext same as ListIdentityProviderConfigsPages except 2619 // it takes a Context and allows setting request options on the pages. 2620 // 2621 // The context must be non-nil and will be used for request cancellation. If 2622 // the context is nil a panic will occur. In the future the SDK may create 2623 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2624 // for more information on using Contexts. 2625 func (c *EKS) ListIdentityProviderConfigsPagesWithContext(ctx aws.Context, input *ListIdentityProviderConfigsInput, fn func(*ListIdentityProviderConfigsOutput, bool) bool, opts ...request.Option) error { 2626 p := request.Pagination{ 2627 NewRequest: func() (*request.Request, error) { 2628 var inCpy *ListIdentityProviderConfigsInput 2629 if input != nil { 2630 tmp := *input 2631 inCpy = &tmp 2632 } 2633 req, _ := c.ListIdentityProviderConfigsRequest(inCpy) 2634 req.SetContext(ctx) 2635 req.ApplyOptions(opts...) 2636 return req, nil 2637 }, 2638 } 2639 2640 for p.Next() { 2641 if !fn(p.Page().(*ListIdentityProviderConfigsOutput), !p.HasNextPage()) { 2642 break 2643 } 2644 } 2645 2646 return p.Err() 2647 } 2648 2649 const opListNodegroups = "ListNodegroups" 2650 2651 // ListNodegroupsRequest generates a "aws/request.Request" representing the 2652 // client's request for the ListNodegroups operation. The "output" return 2653 // value will be populated with the request's response once the request completes 2654 // successfully. 2655 // 2656 // Use "Send" method on the returned Request to send the API call to the service. 2657 // the "output" return value is not valid until after Send returns without error. 2658 // 2659 // See ListNodegroups for more information on using the ListNodegroups 2660 // API call, and error handling. 2661 // 2662 // This method is useful when you want to inject custom logic or configuration 2663 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2664 // 2665 // 2666 // // Example sending a request using the ListNodegroupsRequest method. 2667 // req, resp := client.ListNodegroupsRequest(params) 2668 // 2669 // err := req.Send() 2670 // if err == nil { // resp is now filled 2671 // fmt.Println(resp) 2672 // } 2673 // 2674 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroups 2675 func (c *EKS) ListNodegroupsRequest(input *ListNodegroupsInput) (req *request.Request, output *ListNodegroupsOutput) { 2676 op := &request.Operation{ 2677 Name: opListNodegroups, 2678 HTTPMethod: "GET", 2679 HTTPPath: "/clusters/{name}/node-groups", 2680 Paginator: &request.Paginator{ 2681 InputTokens: []string{"nextToken"}, 2682 OutputTokens: []string{"nextToken"}, 2683 LimitToken: "maxResults", 2684 TruncationToken: "", 2685 }, 2686 } 2687 2688 if input == nil { 2689 input = &ListNodegroupsInput{} 2690 } 2691 2692 output = &ListNodegroupsOutput{} 2693 req = c.newRequest(op, input, output) 2694 return 2695 } 2696 2697 // ListNodegroups API operation for Amazon Elastic Kubernetes Service. 2698 // 2699 // Lists the Amazon EKS managed node groups associated with the specified cluster 2700 // in your Amazon Web Services account in the specified Region. Self-managed 2701 // node groups are not listed. 2702 // 2703 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2704 // with awserr.Error's Code and Message methods to get detailed information about 2705 // the error. 2706 // 2707 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2708 // API operation ListNodegroups for usage and error information. 2709 // 2710 // Returned Error Types: 2711 // * InvalidParameterException 2712 // The specified parameter is invalid. Review the available parameters for the 2713 // API request. 2714 // 2715 // * ClientException 2716 // These errors are usually caused by a client action. Actions can include using 2717 // an action or resource on behalf of a user that doesn't have permissions to 2718 // use the action or resource or specifying an identifier that is not valid. 2719 // 2720 // * ServerException 2721 // These errors are usually caused by a server-side issue. 2722 // 2723 // * ServiceUnavailableException 2724 // The service is unavailable. Back off and retry the operation. 2725 // 2726 // * ResourceNotFoundException 2727 // The specified resource could not be found. You can view your available clusters 2728 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2729 // Amazon EKS clusters and node groups are Region-specific. 2730 // 2731 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroups 2732 func (c *EKS) ListNodegroups(input *ListNodegroupsInput) (*ListNodegroupsOutput, error) { 2733 req, out := c.ListNodegroupsRequest(input) 2734 return out, req.Send() 2735 } 2736 2737 // ListNodegroupsWithContext is the same as ListNodegroups with the addition of 2738 // the ability to pass a context and additional request options. 2739 // 2740 // See ListNodegroups for details on how to use this API operation. 2741 // 2742 // The context must be non-nil and will be used for request cancellation. If 2743 // the context is nil a panic will occur. In the future the SDK may create 2744 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2745 // for more information on using Contexts. 2746 func (c *EKS) ListNodegroupsWithContext(ctx aws.Context, input *ListNodegroupsInput, opts ...request.Option) (*ListNodegroupsOutput, error) { 2747 req, out := c.ListNodegroupsRequest(input) 2748 req.SetContext(ctx) 2749 req.ApplyOptions(opts...) 2750 return out, req.Send() 2751 } 2752 2753 // ListNodegroupsPages iterates over the pages of a ListNodegroups operation, 2754 // calling the "fn" function with the response data for each page. To stop 2755 // iterating, return false from the fn function. 2756 // 2757 // See ListNodegroups method for more information on how to use this operation. 2758 // 2759 // Note: This operation can generate multiple requests to a service. 2760 // 2761 // // Example iterating over at most 3 pages of a ListNodegroups operation. 2762 // pageNum := 0 2763 // err := client.ListNodegroupsPages(params, 2764 // func(page *eks.ListNodegroupsOutput, lastPage bool) bool { 2765 // pageNum++ 2766 // fmt.Println(page) 2767 // return pageNum <= 3 2768 // }) 2769 // 2770 func (c *EKS) ListNodegroupsPages(input *ListNodegroupsInput, fn func(*ListNodegroupsOutput, bool) bool) error { 2771 return c.ListNodegroupsPagesWithContext(aws.BackgroundContext(), input, fn) 2772 } 2773 2774 // ListNodegroupsPagesWithContext same as ListNodegroupsPages except 2775 // it takes a Context and allows setting request options on the pages. 2776 // 2777 // The context must be non-nil and will be used for request cancellation. If 2778 // the context is nil a panic will occur. In the future the SDK may create 2779 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2780 // for more information on using Contexts. 2781 func (c *EKS) ListNodegroupsPagesWithContext(ctx aws.Context, input *ListNodegroupsInput, fn func(*ListNodegroupsOutput, bool) bool, opts ...request.Option) error { 2782 p := request.Pagination{ 2783 NewRequest: func() (*request.Request, error) { 2784 var inCpy *ListNodegroupsInput 2785 if input != nil { 2786 tmp := *input 2787 inCpy = &tmp 2788 } 2789 req, _ := c.ListNodegroupsRequest(inCpy) 2790 req.SetContext(ctx) 2791 req.ApplyOptions(opts...) 2792 return req, nil 2793 }, 2794 } 2795 2796 for p.Next() { 2797 if !fn(p.Page().(*ListNodegroupsOutput), !p.HasNextPage()) { 2798 break 2799 } 2800 } 2801 2802 return p.Err() 2803 } 2804 2805 const opListTagsForResource = "ListTagsForResource" 2806 2807 // ListTagsForResourceRequest generates a "aws/request.Request" representing the 2808 // client's request for the ListTagsForResource operation. The "output" return 2809 // value will be populated with the request's response once the request completes 2810 // successfully. 2811 // 2812 // Use "Send" method on the returned Request to send the API call to the service. 2813 // the "output" return value is not valid until after Send returns without error. 2814 // 2815 // See ListTagsForResource for more information on using the ListTagsForResource 2816 // API call, and error handling. 2817 // 2818 // This method is useful when you want to inject custom logic or configuration 2819 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2820 // 2821 // 2822 // // Example sending a request using the ListTagsForResourceRequest method. 2823 // req, resp := client.ListTagsForResourceRequest(params) 2824 // 2825 // err := req.Send() 2826 // if err == nil { // resp is now filled 2827 // fmt.Println(resp) 2828 // } 2829 // 2830 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListTagsForResource 2831 func (c *EKS) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 2832 op := &request.Operation{ 2833 Name: opListTagsForResource, 2834 HTTPMethod: "GET", 2835 HTTPPath: "/tags/{resourceArn}", 2836 } 2837 2838 if input == nil { 2839 input = &ListTagsForResourceInput{} 2840 } 2841 2842 output = &ListTagsForResourceOutput{} 2843 req = c.newRequest(op, input, output) 2844 return 2845 } 2846 2847 // ListTagsForResource API operation for Amazon Elastic Kubernetes Service. 2848 // 2849 // List the tags for an Amazon EKS resource. 2850 // 2851 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2852 // with awserr.Error's Code and Message methods to get detailed information about 2853 // the error. 2854 // 2855 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2856 // API operation ListTagsForResource for usage and error information. 2857 // 2858 // Returned Error Types: 2859 // * BadRequestException 2860 // This exception is thrown if the request contains a semantic error. The precise 2861 // meaning will depend on the API, and will be documented in the error message. 2862 // 2863 // * NotFoundException 2864 // A service resource associated with the request could not be found. Clients 2865 // should not retry such requests. 2866 // 2867 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListTagsForResource 2868 func (c *EKS) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 2869 req, out := c.ListTagsForResourceRequest(input) 2870 return out, req.Send() 2871 } 2872 2873 // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 2874 // the ability to pass a context and additional request options. 2875 // 2876 // See ListTagsForResource for details on how to use this API operation. 2877 // 2878 // The context must be non-nil and will be used for request cancellation. If 2879 // the context is nil a panic will occur. In the future the SDK may create 2880 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2881 // for more information on using Contexts. 2882 func (c *EKS) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 2883 req, out := c.ListTagsForResourceRequest(input) 2884 req.SetContext(ctx) 2885 req.ApplyOptions(opts...) 2886 return out, req.Send() 2887 } 2888 2889 const opListUpdates = "ListUpdates" 2890 2891 // ListUpdatesRequest generates a "aws/request.Request" representing the 2892 // client's request for the ListUpdates operation. The "output" return 2893 // value will be populated with the request's response once the request completes 2894 // successfully. 2895 // 2896 // Use "Send" method on the returned Request to send the API call to the service. 2897 // the "output" return value is not valid until after Send returns without error. 2898 // 2899 // See ListUpdates for more information on using the ListUpdates 2900 // API call, and error handling. 2901 // 2902 // This method is useful when you want to inject custom logic or configuration 2903 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2904 // 2905 // 2906 // // Example sending a request using the ListUpdatesRequest method. 2907 // req, resp := client.ListUpdatesRequest(params) 2908 // 2909 // err := req.Send() 2910 // if err == nil { // resp is now filled 2911 // fmt.Println(resp) 2912 // } 2913 // 2914 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdates 2915 func (c *EKS) ListUpdatesRequest(input *ListUpdatesInput) (req *request.Request, output *ListUpdatesOutput) { 2916 op := &request.Operation{ 2917 Name: opListUpdates, 2918 HTTPMethod: "GET", 2919 HTTPPath: "/clusters/{name}/updates", 2920 Paginator: &request.Paginator{ 2921 InputTokens: []string{"nextToken"}, 2922 OutputTokens: []string{"nextToken"}, 2923 LimitToken: "maxResults", 2924 TruncationToken: "", 2925 }, 2926 } 2927 2928 if input == nil { 2929 input = &ListUpdatesInput{} 2930 } 2931 2932 output = &ListUpdatesOutput{} 2933 req = c.newRequest(op, input, output) 2934 return 2935 } 2936 2937 // ListUpdates API operation for Amazon Elastic Kubernetes Service. 2938 // 2939 // Lists the updates associated with an Amazon EKS cluster or managed node group 2940 // in your Amazon Web Services account, in the specified Region. 2941 // 2942 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2943 // with awserr.Error's Code and Message methods to get detailed information about 2944 // the error. 2945 // 2946 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 2947 // API operation ListUpdates for usage and error information. 2948 // 2949 // Returned Error Types: 2950 // * InvalidParameterException 2951 // The specified parameter is invalid. Review the available parameters for the 2952 // API request. 2953 // 2954 // * ClientException 2955 // These errors are usually caused by a client action. Actions can include using 2956 // an action or resource on behalf of a user that doesn't have permissions to 2957 // use the action or resource or specifying an identifier that is not valid. 2958 // 2959 // * ServerException 2960 // These errors are usually caused by a server-side issue. 2961 // 2962 // * ResourceNotFoundException 2963 // The specified resource could not be found. You can view your available clusters 2964 // with ListClusters. You can view your available managed node groups with ListNodegroups. 2965 // Amazon EKS clusters and node groups are Region-specific. 2966 // 2967 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdates 2968 func (c *EKS) ListUpdates(input *ListUpdatesInput) (*ListUpdatesOutput, error) { 2969 req, out := c.ListUpdatesRequest(input) 2970 return out, req.Send() 2971 } 2972 2973 // ListUpdatesWithContext is the same as ListUpdates with the addition of 2974 // the ability to pass a context and additional request options. 2975 // 2976 // See ListUpdates for details on how to use this API operation. 2977 // 2978 // The context must be non-nil and will be used for request cancellation. If 2979 // the context is nil a panic will occur. In the future the SDK may create 2980 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2981 // for more information on using Contexts. 2982 func (c *EKS) ListUpdatesWithContext(ctx aws.Context, input *ListUpdatesInput, opts ...request.Option) (*ListUpdatesOutput, error) { 2983 req, out := c.ListUpdatesRequest(input) 2984 req.SetContext(ctx) 2985 req.ApplyOptions(opts...) 2986 return out, req.Send() 2987 } 2988 2989 // ListUpdatesPages iterates over the pages of a ListUpdates operation, 2990 // calling the "fn" function with the response data for each page. To stop 2991 // iterating, return false from the fn function. 2992 // 2993 // See ListUpdates method for more information on how to use this operation. 2994 // 2995 // Note: This operation can generate multiple requests to a service. 2996 // 2997 // // Example iterating over at most 3 pages of a ListUpdates operation. 2998 // pageNum := 0 2999 // err := client.ListUpdatesPages(params, 3000 // func(page *eks.ListUpdatesOutput, lastPage bool) bool { 3001 // pageNum++ 3002 // fmt.Println(page) 3003 // return pageNum <= 3 3004 // }) 3005 // 3006 func (c *EKS) ListUpdatesPages(input *ListUpdatesInput, fn func(*ListUpdatesOutput, bool) bool) error { 3007 return c.ListUpdatesPagesWithContext(aws.BackgroundContext(), input, fn) 3008 } 3009 3010 // ListUpdatesPagesWithContext same as ListUpdatesPages except 3011 // it takes a Context and allows setting request options on the pages. 3012 // 3013 // The context must be non-nil and will be used for request cancellation. If 3014 // the context is nil a panic will occur. In the future the SDK may create 3015 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3016 // for more information on using Contexts. 3017 func (c *EKS) ListUpdatesPagesWithContext(ctx aws.Context, input *ListUpdatesInput, fn func(*ListUpdatesOutput, bool) bool, opts ...request.Option) error { 3018 p := request.Pagination{ 3019 NewRequest: func() (*request.Request, error) { 3020 var inCpy *ListUpdatesInput 3021 if input != nil { 3022 tmp := *input 3023 inCpy = &tmp 3024 } 3025 req, _ := c.ListUpdatesRequest(inCpy) 3026 req.SetContext(ctx) 3027 req.ApplyOptions(opts...) 3028 return req, nil 3029 }, 3030 } 3031 3032 for p.Next() { 3033 if !fn(p.Page().(*ListUpdatesOutput), !p.HasNextPage()) { 3034 break 3035 } 3036 } 3037 3038 return p.Err() 3039 } 3040 3041 const opRegisterCluster = "RegisterCluster" 3042 3043 // RegisterClusterRequest generates a "aws/request.Request" representing the 3044 // client's request for the RegisterCluster operation. The "output" return 3045 // value will be populated with the request's response once the request completes 3046 // successfully. 3047 // 3048 // Use "Send" method on the returned Request to send the API call to the service. 3049 // the "output" return value is not valid until after Send returns without error. 3050 // 3051 // See RegisterCluster for more information on using the RegisterCluster 3052 // API call, and error handling. 3053 // 3054 // This method is useful when you want to inject custom logic or configuration 3055 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3056 // 3057 // 3058 // // Example sending a request using the RegisterClusterRequest method. 3059 // req, resp := client.RegisterClusterRequest(params) 3060 // 3061 // err := req.Send() 3062 // if err == nil { // resp is now filled 3063 // fmt.Println(resp) 3064 // } 3065 // 3066 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RegisterCluster 3067 func (c *EKS) RegisterClusterRequest(input *RegisterClusterInput) (req *request.Request, output *RegisterClusterOutput) { 3068 op := &request.Operation{ 3069 Name: opRegisterCluster, 3070 HTTPMethod: "POST", 3071 HTTPPath: "/cluster-registrations", 3072 } 3073 3074 if input == nil { 3075 input = &RegisterClusterInput{} 3076 } 3077 3078 output = &RegisterClusterOutput{} 3079 req = c.newRequest(op, input, output) 3080 return 3081 } 3082 3083 // RegisterCluster API operation for Amazon Elastic Kubernetes Service. 3084 // 3085 // Connects a Kubernetes cluster to the Amazon EKS control plane. 3086 // 3087 // Any Kubernetes cluster can be connected to the Amazon EKS control plane to 3088 // view current information about the cluster and its nodes. 3089 // 3090 // Cluster connection requires two steps. First, send a RegisterClusterRequest 3091 // to add it to the Amazon EKS control plane. 3092 // 3093 // Second, a Manifest (https://amazon-eks.s3.us-west-2.amazonaws.com/eks-connector/manifests/eks-connector/latest/eks-connector.yaml) 3094 // containing the activationID and activationCode must be applied to the Kubernetes 3095 // cluster through it's native provider to provide visibility. 3096 // 3097 // After the Manifest is updated and applied, then the connected cluster is 3098 // visible to the Amazon EKS control plane. If the Manifest is not applied within 3099 // a set amount of time, then the connected cluster will no longer be visible 3100 // and must be deregistered. See DeregisterCluster. 3101 // 3102 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3103 // with awserr.Error's Code and Message methods to get detailed information about 3104 // the error. 3105 // 3106 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3107 // API operation RegisterCluster for usage and error information. 3108 // 3109 // Returned Error Types: 3110 // * ResourceLimitExceededException 3111 // You have encountered a service limit on the specified resource. 3112 // 3113 // * InvalidParameterException 3114 // The specified parameter is invalid. Review the available parameters for the 3115 // API request. 3116 // 3117 // * ClientException 3118 // These errors are usually caused by a client action. Actions can include using 3119 // an action or resource on behalf of a user that doesn't have permissions to 3120 // use the action or resource or specifying an identifier that is not valid. 3121 // 3122 // * ServerException 3123 // These errors are usually caused by a server-side issue. 3124 // 3125 // * ServiceUnavailableException 3126 // The service is unavailable. Back off and retry the operation. 3127 // 3128 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RegisterCluster 3129 func (c *EKS) RegisterCluster(input *RegisterClusterInput) (*RegisterClusterOutput, error) { 3130 req, out := c.RegisterClusterRequest(input) 3131 return out, req.Send() 3132 } 3133 3134 // RegisterClusterWithContext is the same as RegisterCluster with the addition of 3135 // the ability to pass a context and additional request options. 3136 // 3137 // See RegisterCluster for details on how to use this API operation. 3138 // 3139 // The context must be non-nil and will be used for request cancellation. If 3140 // the context is nil a panic will occur. In the future the SDK may create 3141 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3142 // for more information on using Contexts. 3143 func (c *EKS) RegisterClusterWithContext(ctx aws.Context, input *RegisterClusterInput, opts ...request.Option) (*RegisterClusterOutput, error) { 3144 req, out := c.RegisterClusterRequest(input) 3145 req.SetContext(ctx) 3146 req.ApplyOptions(opts...) 3147 return out, req.Send() 3148 } 3149 3150 const opTagResource = "TagResource" 3151 3152 // TagResourceRequest generates a "aws/request.Request" representing the 3153 // client's request for the TagResource operation. The "output" return 3154 // value will be populated with the request's response once the request completes 3155 // successfully. 3156 // 3157 // Use "Send" method on the returned Request to send the API call to the service. 3158 // the "output" return value is not valid until after Send returns without error. 3159 // 3160 // See TagResource for more information on using the TagResource 3161 // API call, and error handling. 3162 // 3163 // This method is useful when you want to inject custom logic or configuration 3164 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3165 // 3166 // 3167 // // Example sending a request using the TagResourceRequest method. 3168 // req, resp := client.TagResourceRequest(params) 3169 // 3170 // err := req.Send() 3171 // if err == nil { // resp is now filled 3172 // fmt.Println(resp) 3173 // } 3174 // 3175 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/TagResource 3176 func (c *EKS) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 3177 op := &request.Operation{ 3178 Name: opTagResource, 3179 HTTPMethod: "POST", 3180 HTTPPath: "/tags/{resourceArn}", 3181 } 3182 3183 if input == nil { 3184 input = &TagResourceInput{} 3185 } 3186 3187 output = &TagResourceOutput{} 3188 req = c.newRequest(op, input, output) 3189 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3190 return 3191 } 3192 3193 // TagResource API operation for Amazon Elastic Kubernetes Service. 3194 // 3195 // Associates the specified tags to a resource with the specified resourceArn. 3196 // If existing tags on a resource are not specified in the request parameters, 3197 // they are not changed. When a resource is deleted, the tags associated with 3198 // that resource are deleted as well. Tags that you create for Amazon EKS resources 3199 // do not propagate to any other resources associated with the cluster. For 3200 // example, if you tag a cluster with this operation, that tag does not automatically 3201 // propagate to the subnets and nodes associated with the cluster. 3202 // 3203 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3204 // with awserr.Error's Code and Message methods to get detailed information about 3205 // the error. 3206 // 3207 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3208 // API operation TagResource for usage and error information. 3209 // 3210 // Returned Error Types: 3211 // * BadRequestException 3212 // This exception is thrown if the request contains a semantic error. The precise 3213 // meaning will depend on the API, and will be documented in the error message. 3214 // 3215 // * NotFoundException 3216 // A service resource associated with the request could not be found. Clients 3217 // should not retry such requests. 3218 // 3219 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/TagResource 3220 func (c *EKS) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 3221 req, out := c.TagResourceRequest(input) 3222 return out, req.Send() 3223 } 3224 3225 // TagResourceWithContext is the same as TagResource with the addition of 3226 // the ability to pass a context and additional request options. 3227 // 3228 // See TagResource for details on how to use this API operation. 3229 // 3230 // The context must be non-nil and will be used for request cancellation. If 3231 // the context is nil a panic will occur. In the future the SDK may create 3232 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3233 // for more information on using Contexts. 3234 func (c *EKS) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 3235 req, out := c.TagResourceRequest(input) 3236 req.SetContext(ctx) 3237 req.ApplyOptions(opts...) 3238 return out, req.Send() 3239 } 3240 3241 const opUntagResource = "UntagResource" 3242 3243 // UntagResourceRequest generates a "aws/request.Request" representing the 3244 // client's request for the UntagResource operation. The "output" return 3245 // value will be populated with the request's response once the request completes 3246 // successfully. 3247 // 3248 // Use "Send" method on the returned Request to send the API call to the service. 3249 // the "output" return value is not valid until after Send returns without error. 3250 // 3251 // See UntagResource for more information on using the UntagResource 3252 // API call, and error handling. 3253 // 3254 // This method is useful when you want to inject custom logic or configuration 3255 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3256 // 3257 // 3258 // // Example sending a request using the UntagResourceRequest method. 3259 // req, resp := client.UntagResourceRequest(params) 3260 // 3261 // err := req.Send() 3262 // if err == nil { // resp is now filled 3263 // fmt.Println(resp) 3264 // } 3265 // 3266 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResource 3267 func (c *EKS) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 3268 op := &request.Operation{ 3269 Name: opUntagResource, 3270 HTTPMethod: "DELETE", 3271 HTTPPath: "/tags/{resourceArn}", 3272 } 3273 3274 if input == nil { 3275 input = &UntagResourceInput{} 3276 } 3277 3278 output = &UntagResourceOutput{} 3279 req = c.newRequest(op, input, output) 3280 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3281 return 3282 } 3283 3284 // UntagResource API operation for Amazon Elastic Kubernetes Service. 3285 // 3286 // Deletes specified tags from a resource. 3287 // 3288 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3289 // with awserr.Error's Code and Message methods to get detailed information about 3290 // the error. 3291 // 3292 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3293 // API operation UntagResource for usage and error information. 3294 // 3295 // Returned Error Types: 3296 // * BadRequestException 3297 // This exception is thrown if the request contains a semantic error. The precise 3298 // meaning will depend on the API, and will be documented in the error message. 3299 // 3300 // * NotFoundException 3301 // A service resource associated with the request could not be found. Clients 3302 // should not retry such requests. 3303 // 3304 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResource 3305 func (c *EKS) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 3306 req, out := c.UntagResourceRequest(input) 3307 return out, req.Send() 3308 } 3309 3310 // UntagResourceWithContext is the same as UntagResource with the addition of 3311 // the ability to pass a context and additional request options. 3312 // 3313 // See UntagResource for details on how to use this API operation. 3314 // 3315 // The context must be non-nil and will be used for request cancellation. If 3316 // the context is nil a panic will occur. In the future the SDK may create 3317 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3318 // for more information on using Contexts. 3319 func (c *EKS) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 3320 req, out := c.UntagResourceRequest(input) 3321 req.SetContext(ctx) 3322 req.ApplyOptions(opts...) 3323 return out, req.Send() 3324 } 3325 3326 const opUpdateAddon = "UpdateAddon" 3327 3328 // UpdateAddonRequest generates a "aws/request.Request" representing the 3329 // client's request for the UpdateAddon operation. The "output" return 3330 // value will be populated with the request's response once the request completes 3331 // successfully. 3332 // 3333 // Use "Send" method on the returned Request to send the API call to the service. 3334 // the "output" return value is not valid until after Send returns without error. 3335 // 3336 // See UpdateAddon for more information on using the UpdateAddon 3337 // API call, and error handling. 3338 // 3339 // This method is useful when you want to inject custom logic or configuration 3340 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3341 // 3342 // 3343 // // Example sending a request using the UpdateAddonRequest method. 3344 // req, resp := client.UpdateAddonRequest(params) 3345 // 3346 // err := req.Send() 3347 // if err == nil { // resp is now filled 3348 // fmt.Println(resp) 3349 // } 3350 // 3351 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddon 3352 func (c *EKS) UpdateAddonRequest(input *UpdateAddonInput) (req *request.Request, output *UpdateAddonOutput) { 3353 op := &request.Operation{ 3354 Name: opUpdateAddon, 3355 HTTPMethod: "POST", 3356 HTTPPath: "/clusters/{name}/addons/{addonName}/update", 3357 } 3358 3359 if input == nil { 3360 input = &UpdateAddonInput{} 3361 } 3362 3363 output = &UpdateAddonOutput{} 3364 req = c.newRequest(op, input, output) 3365 return 3366 } 3367 3368 // UpdateAddon API operation for Amazon Elastic Kubernetes Service. 3369 // 3370 // Updates an Amazon EKS add-on. 3371 // 3372 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3373 // with awserr.Error's Code and Message methods to get detailed information about 3374 // the error. 3375 // 3376 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3377 // API operation UpdateAddon for usage and error information. 3378 // 3379 // Returned Error Types: 3380 // * InvalidParameterException 3381 // The specified parameter is invalid. Review the available parameters for the 3382 // API request. 3383 // 3384 // * InvalidRequestException 3385 // The request is invalid given the state of the cluster. Check the state of 3386 // the cluster and the associated operations. 3387 // 3388 // * ResourceNotFoundException 3389 // The specified resource could not be found. You can view your available clusters 3390 // with ListClusters. You can view your available managed node groups with ListNodegroups. 3391 // Amazon EKS clusters and node groups are Region-specific. 3392 // 3393 // * ResourceInUseException 3394 // The specified resource is in use. 3395 // 3396 // * ClientException 3397 // These errors are usually caused by a client action. Actions can include using 3398 // an action or resource on behalf of a user that doesn't have permissions to 3399 // use the action or resource or specifying an identifier that is not valid. 3400 // 3401 // * ServerException 3402 // These errors are usually caused by a server-side issue. 3403 // 3404 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddon 3405 func (c *EKS) UpdateAddon(input *UpdateAddonInput) (*UpdateAddonOutput, error) { 3406 req, out := c.UpdateAddonRequest(input) 3407 return out, req.Send() 3408 } 3409 3410 // UpdateAddonWithContext is the same as UpdateAddon with the addition of 3411 // the ability to pass a context and additional request options. 3412 // 3413 // See UpdateAddon for details on how to use this API operation. 3414 // 3415 // The context must be non-nil and will be used for request cancellation. If 3416 // the context is nil a panic will occur. In the future the SDK may create 3417 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3418 // for more information on using Contexts. 3419 func (c *EKS) UpdateAddonWithContext(ctx aws.Context, input *UpdateAddonInput, opts ...request.Option) (*UpdateAddonOutput, error) { 3420 req, out := c.UpdateAddonRequest(input) 3421 req.SetContext(ctx) 3422 req.ApplyOptions(opts...) 3423 return out, req.Send() 3424 } 3425 3426 const opUpdateClusterConfig = "UpdateClusterConfig" 3427 3428 // UpdateClusterConfigRequest generates a "aws/request.Request" representing the 3429 // client's request for the UpdateClusterConfig operation. The "output" return 3430 // value will be populated with the request's response once the request completes 3431 // successfully. 3432 // 3433 // Use "Send" method on the returned Request to send the API call to the service. 3434 // the "output" return value is not valid until after Send returns without error. 3435 // 3436 // See UpdateClusterConfig for more information on using the UpdateClusterConfig 3437 // API call, and error handling. 3438 // 3439 // This method is useful when you want to inject custom logic or configuration 3440 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3441 // 3442 // 3443 // // Example sending a request using the UpdateClusterConfigRequest method. 3444 // req, resp := client.UpdateClusterConfigRequest(params) 3445 // 3446 // err := req.Send() 3447 // if err == nil { // resp is now filled 3448 // fmt.Println(resp) 3449 // } 3450 // 3451 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterConfig 3452 func (c *EKS) UpdateClusterConfigRequest(input *UpdateClusterConfigInput) (req *request.Request, output *UpdateClusterConfigOutput) { 3453 op := &request.Operation{ 3454 Name: opUpdateClusterConfig, 3455 HTTPMethod: "POST", 3456 HTTPPath: "/clusters/{name}/update-config", 3457 } 3458 3459 if input == nil { 3460 input = &UpdateClusterConfigInput{} 3461 } 3462 3463 output = &UpdateClusterConfigOutput{} 3464 req = c.newRequest(op, input, output) 3465 return 3466 } 3467 3468 // UpdateClusterConfig API operation for Amazon Elastic Kubernetes Service. 3469 // 3470 // Updates an Amazon EKS cluster configuration. Your cluster continues to function 3471 // during the update. The response output includes an update ID that you can 3472 // use to track the status of your cluster update with the DescribeUpdate API 3473 // operation. 3474 // 3475 // You can use this API operation to enable or disable exporting the Kubernetes 3476 // control plane logs for your cluster to CloudWatch Logs. By default, cluster 3477 // control plane logs aren't exported to CloudWatch Logs. For more information, 3478 // see Amazon EKS Cluster Control Plane Logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) 3479 // in the Amazon EKS User Guide . 3480 // 3481 // CloudWatch Logs ingestion, archive storage, and data scanning rates apply 3482 // to exported control plane logs. For more information, see CloudWatch Pricing 3483 // (http://aws.amazon.com/cloudwatch/pricing/). 3484 // 3485 // You can also use this API operation to enable or disable public and private 3486 // access to your cluster's Kubernetes API server endpoint. By default, public 3487 // access is enabled, and private access is disabled. For more information, 3488 // see Amazon EKS cluster endpoint access control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 3489 // in the Amazon EKS User Guide . 3490 // 3491 // You can't update the subnets or security group IDs for an existing cluster. 3492 // 3493 // Cluster updates are asynchronous, and they should finish within a few minutes. 3494 // During an update, the cluster status moves to UPDATING (this status transition 3495 // is eventually consistent). When the update is complete (either Failed or 3496 // Successful), the cluster status moves to Active. 3497 // 3498 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3499 // with awserr.Error's Code and Message methods to get detailed information about 3500 // the error. 3501 // 3502 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3503 // API operation UpdateClusterConfig for usage and error information. 3504 // 3505 // Returned Error Types: 3506 // * InvalidParameterException 3507 // The specified parameter is invalid. Review the available parameters for the 3508 // API request. 3509 // 3510 // * ClientException 3511 // These errors are usually caused by a client action. Actions can include using 3512 // an action or resource on behalf of a user that doesn't have permissions to 3513 // use the action or resource or specifying an identifier that is not valid. 3514 // 3515 // * ServerException 3516 // These errors are usually caused by a server-side issue. 3517 // 3518 // * ResourceInUseException 3519 // The specified resource is in use. 3520 // 3521 // * ResourceNotFoundException 3522 // The specified resource could not be found. You can view your available clusters 3523 // with ListClusters. You can view your available managed node groups with ListNodegroups. 3524 // Amazon EKS clusters and node groups are Region-specific. 3525 // 3526 // * InvalidRequestException 3527 // The request is invalid given the state of the cluster. Check the state of 3528 // the cluster and the associated operations. 3529 // 3530 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterConfig 3531 func (c *EKS) UpdateClusterConfig(input *UpdateClusterConfigInput) (*UpdateClusterConfigOutput, error) { 3532 req, out := c.UpdateClusterConfigRequest(input) 3533 return out, req.Send() 3534 } 3535 3536 // UpdateClusterConfigWithContext is the same as UpdateClusterConfig with the addition of 3537 // the ability to pass a context and additional request options. 3538 // 3539 // See UpdateClusterConfig for details on how to use this API operation. 3540 // 3541 // The context must be non-nil and will be used for request cancellation. If 3542 // the context is nil a panic will occur. In the future the SDK may create 3543 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3544 // for more information on using Contexts. 3545 func (c *EKS) UpdateClusterConfigWithContext(ctx aws.Context, input *UpdateClusterConfigInput, opts ...request.Option) (*UpdateClusterConfigOutput, error) { 3546 req, out := c.UpdateClusterConfigRequest(input) 3547 req.SetContext(ctx) 3548 req.ApplyOptions(opts...) 3549 return out, req.Send() 3550 } 3551 3552 const opUpdateClusterVersion = "UpdateClusterVersion" 3553 3554 // UpdateClusterVersionRequest generates a "aws/request.Request" representing the 3555 // client's request for the UpdateClusterVersion operation. The "output" return 3556 // value will be populated with the request's response once the request completes 3557 // successfully. 3558 // 3559 // Use "Send" method on the returned Request to send the API call to the service. 3560 // the "output" return value is not valid until after Send returns without error. 3561 // 3562 // See UpdateClusterVersion for more information on using the UpdateClusterVersion 3563 // API call, and error handling. 3564 // 3565 // This method is useful when you want to inject custom logic or configuration 3566 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3567 // 3568 // 3569 // // Example sending a request using the UpdateClusterVersionRequest method. 3570 // req, resp := client.UpdateClusterVersionRequest(params) 3571 // 3572 // err := req.Send() 3573 // if err == nil { // resp is now filled 3574 // fmt.Println(resp) 3575 // } 3576 // 3577 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersion 3578 func (c *EKS) UpdateClusterVersionRequest(input *UpdateClusterVersionInput) (req *request.Request, output *UpdateClusterVersionOutput) { 3579 op := &request.Operation{ 3580 Name: opUpdateClusterVersion, 3581 HTTPMethod: "POST", 3582 HTTPPath: "/clusters/{name}/updates", 3583 } 3584 3585 if input == nil { 3586 input = &UpdateClusterVersionInput{} 3587 } 3588 3589 output = &UpdateClusterVersionOutput{} 3590 req = c.newRequest(op, input, output) 3591 return 3592 } 3593 3594 // UpdateClusterVersion API operation for Amazon Elastic Kubernetes Service. 3595 // 3596 // Updates an Amazon EKS cluster to the specified Kubernetes version. Your cluster 3597 // continues to function during the update. The response output includes an 3598 // update ID that you can use to track the status of your cluster update with 3599 // the DescribeUpdate API operation. 3600 // 3601 // Cluster updates are asynchronous, and they should finish within a few minutes. 3602 // During an update, the cluster status moves to UPDATING (this status transition 3603 // is eventually consistent). When the update is complete (either Failed or 3604 // Successful), the cluster status moves to Active. 3605 // 3606 // If your cluster has managed node groups attached to it, all of your node 3607 // groups’ Kubernetes versions must match the cluster’s Kubernetes version 3608 // in order to update the cluster to a new Kubernetes version. 3609 // 3610 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3611 // with awserr.Error's Code and Message methods to get detailed information about 3612 // the error. 3613 // 3614 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3615 // API operation UpdateClusterVersion for usage and error information. 3616 // 3617 // Returned Error Types: 3618 // * InvalidParameterException 3619 // The specified parameter is invalid. Review the available parameters for the 3620 // API request. 3621 // 3622 // * ClientException 3623 // These errors are usually caused by a client action. Actions can include using 3624 // an action or resource on behalf of a user that doesn't have permissions to 3625 // use the action or resource or specifying an identifier that is not valid. 3626 // 3627 // * ServerException 3628 // These errors are usually caused by a server-side issue. 3629 // 3630 // * ResourceInUseException 3631 // The specified resource is in use. 3632 // 3633 // * ResourceNotFoundException 3634 // The specified resource could not be found. You can view your available clusters 3635 // with ListClusters. You can view your available managed node groups with ListNodegroups. 3636 // Amazon EKS clusters and node groups are Region-specific. 3637 // 3638 // * InvalidRequestException 3639 // The request is invalid given the state of the cluster. Check the state of 3640 // the cluster and the associated operations. 3641 // 3642 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersion 3643 func (c *EKS) UpdateClusterVersion(input *UpdateClusterVersionInput) (*UpdateClusterVersionOutput, error) { 3644 req, out := c.UpdateClusterVersionRequest(input) 3645 return out, req.Send() 3646 } 3647 3648 // UpdateClusterVersionWithContext is the same as UpdateClusterVersion with the addition of 3649 // the ability to pass a context and additional request options. 3650 // 3651 // See UpdateClusterVersion for details on how to use this API operation. 3652 // 3653 // The context must be non-nil and will be used for request cancellation. If 3654 // the context is nil a panic will occur. In the future the SDK may create 3655 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3656 // for more information on using Contexts. 3657 func (c *EKS) UpdateClusterVersionWithContext(ctx aws.Context, input *UpdateClusterVersionInput, opts ...request.Option) (*UpdateClusterVersionOutput, error) { 3658 req, out := c.UpdateClusterVersionRequest(input) 3659 req.SetContext(ctx) 3660 req.ApplyOptions(opts...) 3661 return out, req.Send() 3662 } 3663 3664 const opUpdateNodegroupConfig = "UpdateNodegroupConfig" 3665 3666 // UpdateNodegroupConfigRequest generates a "aws/request.Request" representing the 3667 // client's request for the UpdateNodegroupConfig operation. The "output" return 3668 // value will be populated with the request's response once the request completes 3669 // successfully. 3670 // 3671 // Use "Send" method on the returned Request to send the API call to the service. 3672 // the "output" return value is not valid until after Send returns without error. 3673 // 3674 // See UpdateNodegroupConfig for more information on using the UpdateNodegroupConfig 3675 // API call, and error handling. 3676 // 3677 // This method is useful when you want to inject custom logic or configuration 3678 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3679 // 3680 // 3681 // // Example sending a request using the UpdateNodegroupConfigRequest method. 3682 // req, resp := client.UpdateNodegroupConfigRequest(params) 3683 // 3684 // err := req.Send() 3685 // if err == nil { // resp is now filled 3686 // fmt.Println(resp) 3687 // } 3688 // 3689 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfig 3690 func (c *EKS) UpdateNodegroupConfigRequest(input *UpdateNodegroupConfigInput) (req *request.Request, output *UpdateNodegroupConfigOutput) { 3691 op := &request.Operation{ 3692 Name: opUpdateNodegroupConfig, 3693 HTTPMethod: "POST", 3694 HTTPPath: "/clusters/{name}/node-groups/{nodegroupName}/update-config", 3695 } 3696 3697 if input == nil { 3698 input = &UpdateNodegroupConfigInput{} 3699 } 3700 3701 output = &UpdateNodegroupConfigOutput{} 3702 req = c.newRequest(op, input, output) 3703 return 3704 } 3705 3706 // UpdateNodegroupConfig API operation for Amazon Elastic Kubernetes Service. 3707 // 3708 // Updates an Amazon EKS managed node group configuration. Your node group continues 3709 // to function during the update. The response output includes an update ID 3710 // that you can use to track the status of your node group update with the DescribeUpdate 3711 // API operation. Currently you can update the Kubernetes labels for a node 3712 // group or the scaling configuration. 3713 // 3714 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3715 // with awserr.Error's Code and Message methods to get detailed information about 3716 // the error. 3717 // 3718 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3719 // API operation UpdateNodegroupConfig for usage and error information. 3720 // 3721 // Returned Error Types: 3722 // * InvalidParameterException 3723 // The specified parameter is invalid. Review the available parameters for the 3724 // API request. 3725 // 3726 // * ClientException 3727 // These errors are usually caused by a client action. Actions can include using 3728 // an action or resource on behalf of a user that doesn't have permissions to 3729 // use the action or resource or specifying an identifier that is not valid. 3730 // 3731 // * ServerException 3732 // These errors are usually caused by a server-side issue. 3733 // 3734 // * ResourceInUseException 3735 // The specified resource is in use. 3736 // 3737 // * ResourceNotFoundException 3738 // The specified resource could not be found. You can view your available clusters 3739 // with ListClusters. You can view your available managed node groups with ListNodegroups. 3740 // Amazon EKS clusters and node groups are Region-specific. 3741 // 3742 // * InvalidRequestException 3743 // The request is invalid given the state of the cluster. Check the state of 3744 // the cluster and the associated operations. 3745 // 3746 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfig 3747 func (c *EKS) UpdateNodegroupConfig(input *UpdateNodegroupConfigInput) (*UpdateNodegroupConfigOutput, error) { 3748 req, out := c.UpdateNodegroupConfigRequest(input) 3749 return out, req.Send() 3750 } 3751 3752 // UpdateNodegroupConfigWithContext is the same as UpdateNodegroupConfig with the addition of 3753 // the ability to pass a context and additional request options. 3754 // 3755 // See UpdateNodegroupConfig for details on how to use this API operation. 3756 // 3757 // The context must be non-nil and will be used for request cancellation. If 3758 // the context is nil a panic will occur. In the future the SDK may create 3759 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3760 // for more information on using Contexts. 3761 func (c *EKS) UpdateNodegroupConfigWithContext(ctx aws.Context, input *UpdateNodegroupConfigInput, opts ...request.Option) (*UpdateNodegroupConfigOutput, error) { 3762 req, out := c.UpdateNodegroupConfigRequest(input) 3763 req.SetContext(ctx) 3764 req.ApplyOptions(opts...) 3765 return out, req.Send() 3766 } 3767 3768 const opUpdateNodegroupVersion = "UpdateNodegroupVersion" 3769 3770 // UpdateNodegroupVersionRequest generates a "aws/request.Request" representing the 3771 // client's request for the UpdateNodegroupVersion operation. The "output" return 3772 // value will be populated with the request's response once the request completes 3773 // successfully. 3774 // 3775 // Use "Send" method on the returned Request to send the API call to the service. 3776 // the "output" return value is not valid until after Send returns without error. 3777 // 3778 // See UpdateNodegroupVersion for more information on using the UpdateNodegroupVersion 3779 // API call, and error handling. 3780 // 3781 // This method is useful when you want to inject custom logic or configuration 3782 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3783 // 3784 // 3785 // // Example sending a request using the UpdateNodegroupVersionRequest method. 3786 // req, resp := client.UpdateNodegroupVersionRequest(params) 3787 // 3788 // err := req.Send() 3789 // if err == nil { // resp is now filled 3790 // fmt.Println(resp) 3791 // } 3792 // 3793 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion 3794 func (c *EKS) UpdateNodegroupVersionRequest(input *UpdateNodegroupVersionInput) (req *request.Request, output *UpdateNodegroupVersionOutput) { 3795 op := &request.Operation{ 3796 Name: opUpdateNodegroupVersion, 3797 HTTPMethod: "POST", 3798 HTTPPath: "/clusters/{name}/node-groups/{nodegroupName}/update-version", 3799 } 3800 3801 if input == nil { 3802 input = &UpdateNodegroupVersionInput{} 3803 } 3804 3805 output = &UpdateNodegroupVersionOutput{} 3806 req = c.newRequest(op, input, output) 3807 return 3808 } 3809 3810 // UpdateNodegroupVersion API operation for Amazon Elastic Kubernetes Service. 3811 // 3812 // Updates the Kubernetes version or AMI version of an Amazon EKS managed node 3813 // group. 3814 // 3815 // You can update a node group using a launch template only if the node group 3816 // was originally deployed with a launch template. If you need to update a custom 3817 // AMI in a node group that was deployed with a launch template, then update 3818 // your custom AMI, specify the new ID in a new version of the launch template, 3819 // and then update the node group to the new version of the launch template. 3820 // 3821 // If you update without a launch template, then you can update to the latest 3822 // available AMI version of a node group's current Kubernetes version by not 3823 // specifying a Kubernetes version in the request. You can update to the latest 3824 // AMI version of your cluster's current Kubernetes version by specifying your 3825 // cluster's Kubernetes version in the request. For more information, see Amazon 3826 // EKS optimized Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) 3827 // in the Amazon EKS User Guide. 3828 // 3829 // You cannot roll back a node group to an earlier Kubernetes version or AMI 3830 // version. 3831 // 3832 // When a node in a managed node group is terminated due to a scaling action 3833 // or update, the pods in that node are drained first. Amazon EKS attempts to 3834 // drain the nodes gracefully and will fail if it is unable to do so. You can 3835 // force the update if Amazon EKS is unable to drain the nodes as a result of 3836 // a pod disruption budget issue. 3837 // 3838 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3839 // with awserr.Error's Code and Message methods to get detailed information about 3840 // the error. 3841 // 3842 // See the AWS API reference guide for Amazon Elastic Kubernetes Service's 3843 // API operation UpdateNodegroupVersion for usage and error information. 3844 // 3845 // Returned Error Types: 3846 // * InvalidParameterException 3847 // The specified parameter is invalid. Review the available parameters for the 3848 // API request. 3849 // 3850 // * ClientException 3851 // These errors are usually caused by a client action. Actions can include using 3852 // an action or resource on behalf of a user that doesn't have permissions to 3853 // use the action or resource or specifying an identifier that is not valid. 3854 // 3855 // * ServerException 3856 // These errors are usually caused by a server-side issue. 3857 // 3858 // * ResourceInUseException 3859 // The specified resource is in use. 3860 // 3861 // * ResourceNotFoundException 3862 // The specified resource could not be found. You can view your available clusters 3863 // with ListClusters. You can view your available managed node groups with ListNodegroups. 3864 // Amazon EKS clusters and node groups are Region-specific. 3865 // 3866 // * InvalidRequestException 3867 // The request is invalid given the state of the cluster. Check the state of 3868 // the cluster and the associated operations. 3869 // 3870 // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion 3871 func (c *EKS) UpdateNodegroupVersion(input *UpdateNodegroupVersionInput) (*UpdateNodegroupVersionOutput, error) { 3872 req, out := c.UpdateNodegroupVersionRequest(input) 3873 return out, req.Send() 3874 } 3875 3876 // UpdateNodegroupVersionWithContext is the same as UpdateNodegroupVersion with the addition of 3877 // the ability to pass a context and additional request options. 3878 // 3879 // See UpdateNodegroupVersion for details on how to use this API operation. 3880 // 3881 // The context must be non-nil and will be used for request cancellation. If 3882 // the context is nil a panic will occur. In the future the SDK may create 3883 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3884 // for more information on using Contexts. 3885 func (c *EKS) UpdateNodegroupVersionWithContext(ctx aws.Context, input *UpdateNodegroupVersionInput, opts ...request.Option) (*UpdateNodegroupVersionOutput, error) { 3886 req, out := c.UpdateNodegroupVersionRequest(input) 3887 req.SetContext(ctx) 3888 req.ApplyOptions(opts...) 3889 return out, req.Send() 3890 } 3891 3892 // An Amazon EKS add-on. 3893 type Addon struct { 3894 _ struct{} `type:"structure"` 3895 3896 // The Amazon Resource Name (ARN) of the add-on. 3897 AddonArn *string `locationName:"addonArn" type:"string"` 3898 3899 // The name of the add-on. 3900 AddonName *string `locationName:"addonName" type:"string"` 3901 3902 // The version of the add-on. 3903 AddonVersion *string `locationName:"addonVersion" type:"string"` 3904 3905 // The name of the cluster. 3906 ClusterName *string `locationName:"clusterName" min:"1" type:"string"` 3907 3908 // The date and time that the add-on was created. 3909 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` 3910 3911 // An object that represents the health of the add-on. 3912 Health *AddonHealth `locationName:"health" type:"structure"` 3913 3914 // The date and time that the add-on was last modified. 3915 ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp"` 3916 3917 // The Amazon Resource Name (ARN) of the IAM role that is bound to the Kubernetes 3918 // service account used by the add-on. 3919 ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" type:"string"` 3920 3921 // The status of the add-on. 3922 Status *string `locationName:"status" type:"string" enum:"AddonStatus"` 3923 3924 // The metadata that you apply to the add-on to assist with categorization and 3925 // organization. Each tag consists of a key and an optional value, both of which 3926 // you define. Add-on tags do not propagate to any other resources associated 3927 // with the cluster. 3928 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 3929 } 3930 3931 // String returns the string representation. 3932 // 3933 // API parameter values that are decorated as "sensitive" in the API will not 3934 // be included in the string output. The member name will be present, but the 3935 // value will be replaced with "sensitive". 3936 func (s Addon) String() string { 3937 return awsutil.Prettify(s) 3938 } 3939 3940 // GoString returns the string representation. 3941 // 3942 // API parameter values that are decorated as "sensitive" in the API will not 3943 // be included in the string output. The member name will be present, but the 3944 // value will be replaced with "sensitive". 3945 func (s Addon) GoString() string { 3946 return s.String() 3947 } 3948 3949 // SetAddonArn sets the AddonArn field's value. 3950 func (s *Addon) SetAddonArn(v string) *Addon { 3951 s.AddonArn = &v 3952 return s 3953 } 3954 3955 // SetAddonName sets the AddonName field's value. 3956 func (s *Addon) SetAddonName(v string) *Addon { 3957 s.AddonName = &v 3958 return s 3959 } 3960 3961 // SetAddonVersion sets the AddonVersion field's value. 3962 func (s *Addon) SetAddonVersion(v string) *Addon { 3963 s.AddonVersion = &v 3964 return s 3965 } 3966 3967 // SetClusterName sets the ClusterName field's value. 3968 func (s *Addon) SetClusterName(v string) *Addon { 3969 s.ClusterName = &v 3970 return s 3971 } 3972 3973 // SetCreatedAt sets the CreatedAt field's value. 3974 func (s *Addon) SetCreatedAt(v time.Time) *Addon { 3975 s.CreatedAt = &v 3976 return s 3977 } 3978 3979 // SetHealth sets the Health field's value. 3980 func (s *Addon) SetHealth(v *AddonHealth) *Addon { 3981 s.Health = v 3982 return s 3983 } 3984 3985 // SetModifiedAt sets the ModifiedAt field's value. 3986 func (s *Addon) SetModifiedAt(v time.Time) *Addon { 3987 s.ModifiedAt = &v 3988 return s 3989 } 3990 3991 // SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. 3992 func (s *Addon) SetServiceAccountRoleArn(v string) *Addon { 3993 s.ServiceAccountRoleArn = &v 3994 return s 3995 } 3996 3997 // SetStatus sets the Status field's value. 3998 func (s *Addon) SetStatus(v string) *Addon { 3999 s.Status = &v 4000 return s 4001 } 4002 4003 // SetTags sets the Tags field's value. 4004 func (s *Addon) SetTags(v map[string]*string) *Addon { 4005 s.Tags = v 4006 return s 4007 } 4008 4009 // The health of the add-on. 4010 type AddonHealth struct { 4011 _ struct{} `type:"structure"` 4012 4013 // An object that represents the add-on's health issues. 4014 Issues []*AddonIssue `locationName:"issues" type:"list"` 4015 } 4016 4017 // String returns the string representation. 4018 // 4019 // API parameter values that are decorated as "sensitive" in the API will not 4020 // be included in the string output. The member name will be present, but the 4021 // value will be replaced with "sensitive". 4022 func (s AddonHealth) String() string { 4023 return awsutil.Prettify(s) 4024 } 4025 4026 // GoString returns the string representation. 4027 // 4028 // API parameter values that are decorated as "sensitive" in the API will not 4029 // be included in the string output. The member name will be present, but the 4030 // value will be replaced with "sensitive". 4031 func (s AddonHealth) GoString() string { 4032 return s.String() 4033 } 4034 4035 // SetIssues sets the Issues field's value. 4036 func (s *AddonHealth) SetIssues(v []*AddonIssue) *AddonHealth { 4037 s.Issues = v 4038 return s 4039 } 4040 4041 // Information about an add-on. 4042 type AddonInfo struct { 4043 _ struct{} `type:"structure"` 4044 4045 // The name of the add-on. 4046 AddonName *string `locationName:"addonName" type:"string"` 4047 4048 // An object that represents information about available add-on versions and 4049 // compatible Kubernetes versions. 4050 AddonVersions []*AddonVersionInfo `locationName:"addonVersions" type:"list"` 4051 4052 // The type of the add-on. 4053 Type *string `locationName:"type" type:"string"` 4054 } 4055 4056 // String returns the string representation. 4057 // 4058 // API parameter values that are decorated as "sensitive" in the API will not 4059 // be included in the string output. The member name will be present, but the 4060 // value will be replaced with "sensitive". 4061 func (s AddonInfo) String() string { 4062 return awsutil.Prettify(s) 4063 } 4064 4065 // GoString returns the string representation. 4066 // 4067 // API parameter values that are decorated as "sensitive" in the API will not 4068 // be included in the string output. The member name will be present, but the 4069 // value will be replaced with "sensitive". 4070 func (s AddonInfo) GoString() string { 4071 return s.String() 4072 } 4073 4074 // SetAddonName sets the AddonName field's value. 4075 func (s *AddonInfo) SetAddonName(v string) *AddonInfo { 4076 s.AddonName = &v 4077 return s 4078 } 4079 4080 // SetAddonVersions sets the AddonVersions field's value. 4081 func (s *AddonInfo) SetAddonVersions(v []*AddonVersionInfo) *AddonInfo { 4082 s.AddonVersions = v 4083 return s 4084 } 4085 4086 // SetType sets the Type field's value. 4087 func (s *AddonInfo) SetType(v string) *AddonInfo { 4088 s.Type = &v 4089 return s 4090 } 4091 4092 // An issue related to an add-on. 4093 type AddonIssue struct { 4094 _ struct{} `type:"structure"` 4095 4096 // A code that describes the type of issue. 4097 Code *string `locationName:"code" type:"string" enum:"AddonIssueCode"` 4098 4099 // A message that provides details about the issue and what might cause it. 4100 Message *string `locationName:"message" type:"string"` 4101 4102 // The resource IDs of the issue. 4103 ResourceIds []*string `locationName:"resourceIds" type:"list"` 4104 } 4105 4106 // String returns the string representation. 4107 // 4108 // API parameter values that are decorated as "sensitive" in the API will not 4109 // be included in the string output. The member name will be present, but the 4110 // value will be replaced with "sensitive". 4111 func (s AddonIssue) String() string { 4112 return awsutil.Prettify(s) 4113 } 4114 4115 // GoString returns the string representation. 4116 // 4117 // API parameter values that are decorated as "sensitive" in the API will not 4118 // be included in the string output. The member name will be present, but the 4119 // value will be replaced with "sensitive". 4120 func (s AddonIssue) GoString() string { 4121 return s.String() 4122 } 4123 4124 // SetCode sets the Code field's value. 4125 func (s *AddonIssue) SetCode(v string) *AddonIssue { 4126 s.Code = &v 4127 return s 4128 } 4129 4130 // SetMessage sets the Message field's value. 4131 func (s *AddonIssue) SetMessage(v string) *AddonIssue { 4132 s.Message = &v 4133 return s 4134 } 4135 4136 // SetResourceIds sets the ResourceIds field's value. 4137 func (s *AddonIssue) SetResourceIds(v []*string) *AddonIssue { 4138 s.ResourceIds = v 4139 return s 4140 } 4141 4142 // Information about an add-on version. 4143 type AddonVersionInfo struct { 4144 _ struct{} `type:"structure"` 4145 4146 // The version of the add-on. 4147 AddonVersion *string `locationName:"addonVersion" type:"string"` 4148 4149 // The architectures that the version supports. 4150 Architecture []*string `locationName:"architecture" type:"list"` 4151 4152 // An object that represents the compatibilities of a version. 4153 Compatibilities []*Compatibility `locationName:"compatibilities" type:"list"` 4154 } 4155 4156 // String returns the string representation. 4157 // 4158 // API parameter values that are decorated as "sensitive" in the API will not 4159 // be included in the string output. The member name will be present, but the 4160 // value will be replaced with "sensitive". 4161 func (s AddonVersionInfo) String() string { 4162 return awsutil.Prettify(s) 4163 } 4164 4165 // GoString returns the string representation. 4166 // 4167 // API parameter values that are decorated as "sensitive" in the API will not 4168 // be included in the string output. The member name will be present, but the 4169 // value will be replaced with "sensitive". 4170 func (s AddonVersionInfo) GoString() string { 4171 return s.String() 4172 } 4173 4174 // SetAddonVersion sets the AddonVersion field's value. 4175 func (s *AddonVersionInfo) SetAddonVersion(v string) *AddonVersionInfo { 4176 s.AddonVersion = &v 4177 return s 4178 } 4179 4180 // SetArchitecture sets the Architecture field's value. 4181 func (s *AddonVersionInfo) SetArchitecture(v []*string) *AddonVersionInfo { 4182 s.Architecture = v 4183 return s 4184 } 4185 4186 // SetCompatibilities sets the Compatibilities field's value. 4187 func (s *AddonVersionInfo) SetCompatibilities(v []*Compatibility) *AddonVersionInfo { 4188 s.Compatibilities = v 4189 return s 4190 } 4191 4192 type AssociateEncryptionConfigInput struct { 4193 _ struct{} `type:"structure"` 4194 4195 // The client request token you are using with the encryption configuration. 4196 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 4197 4198 // The name of the cluster that you are associating with encryption configuration. 4199 // 4200 // ClusterName is a required field 4201 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 4202 4203 // The configuration you are using for encryption. 4204 // 4205 // EncryptionConfig is a required field 4206 EncryptionConfig []*EncryptionConfig `locationName:"encryptionConfig" type:"list" required:"true"` 4207 } 4208 4209 // String returns the string representation. 4210 // 4211 // API parameter values that are decorated as "sensitive" in the API will not 4212 // be included in the string output. The member name will be present, but the 4213 // value will be replaced with "sensitive". 4214 func (s AssociateEncryptionConfigInput) String() string { 4215 return awsutil.Prettify(s) 4216 } 4217 4218 // GoString returns the string representation. 4219 // 4220 // API parameter values that are decorated as "sensitive" in the API will not 4221 // be included in the string output. The member name will be present, but the 4222 // value will be replaced with "sensitive". 4223 func (s AssociateEncryptionConfigInput) GoString() string { 4224 return s.String() 4225 } 4226 4227 // Validate inspects the fields of the type to determine if they are valid. 4228 func (s *AssociateEncryptionConfigInput) Validate() error { 4229 invalidParams := request.ErrInvalidParams{Context: "AssociateEncryptionConfigInput"} 4230 if s.ClusterName == nil { 4231 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 4232 } 4233 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 4234 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 4235 } 4236 if s.EncryptionConfig == nil { 4237 invalidParams.Add(request.NewErrParamRequired("EncryptionConfig")) 4238 } 4239 4240 if invalidParams.Len() > 0 { 4241 return invalidParams 4242 } 4243 return nil 4244 } 4245 4246 // SetClientRequestToken sets the ClientRequestToken field's value. 4247 func (s *AssociateEncryptionConfigInput) SetClientRequestToken(v string) *AssociateEncryptionConfigInput { 4248 s.ClientRequestToken = &v 4249 return s 4250 } 4251 4252 // SetClusterName sets the ClusterName field's value. 4253 func (s *AssociateEncryptionConfigInput) SetClusterName(v string) *AssociateEncryptionConfigInput { 4254 s.ClusterName = &v 4255 return s 4256 } 4257 4258 // SetEncryptionConfig sets the EncryptionConfig field's value. 4259 func (s *AssociateEncryptionConfigInput) SetEncryptionConfig(v []*EncryptionConfig) *AssociateEncryptionConfigInput { 4260 s.EncryptionConfig = v 4261 return s 4262 } 4263 4264 type AssociateEncryptionConfigOutput struct { 4265 _ struct{} `type:"structure"` 4266 4267 // An object representing an asynchronous update. 4268 Update *Update `locationName:"update" type:"structure"` 4269 } 4270 4271 // String returns the string representation. 4272 // 4273 // API parameter values that are decorated as "sensitive" in the API will not 4274 // be included in the string output. The member name will be present, but the 4275 // value will be replaced with "sensitive". 4276 func (s AssociateEncryptionConfigOutput) String() string { 4277 return awsutil.Prettify(s) 4278 } 4279 4280 // GoString returns the string representation. 4281 // 4282 // API parameter values that are decorated as "sensitive" in the API will not 4283 // be included in the string output. The member name will be present, but the 4284 // value will be replaced with "sensitive". 4285 func (s AssociateEncryptionConfigOutput) GoString() string { 4286 return s.String() 4287 } 4288 4289 // SetUpdate sets the Update field's value. 4290 func (s *AssociateEncryptionConfigOutput) SetUpdate(v *Update) *AssociateEncryptionConfigOutput { 4291 s.Update = v 4292 return s 4293 } 4294 4295 type AssociateIdentityProviderConfigInput struct { 4296 _ struct{} `type:"structure"` 4297 4298 // Unique, case-sensitive identifier that you provide to ensure the idempotency 4299 // of the request. 4300 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 4301 4302 // The name of the cluster to associate the configuration to. 4303 // 4304 // ClusterName is a required field 4305 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 4306 4307 // An object that represents an OpenID Connect (OIDC) identity provider configuration. 4308 // 4309 // Oidc is a required field 4310 Oidc *OidcIdentityProviderConfigRequest `locationName:"oidc" type:"structure" required:"true"` 4311 4312 // The metadata to apply to the configuration to assist with categorization 4313 // and organization. Each tag consists of a key and an optional value, both 4314 // of which you define. 4315 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 4316 } 4317 4318 // String returns the string representation. 4319 // 4320 // API parameter values that are decorated as "sensitive" in the API will not 4321 // be included in the string output. The member name will be present, but the 4322 // value will be replaced with "sensitive". 4323 func (s AssociateIdentityProviderConfigInput) String() string { 4324 return awsutil.Prettify(s) 4325 } 4326 4327 // GoString returns the string representation. 4328 // 4329 // API parameter values that are decorated as "sensitive" in the API will not 4330 // be included in the string output. The member name will be present, but the 4331 // value will be replaced with "sensitive". 4332 func (s AssociateIdentityProviderConfigInput) GoString() string { 4333 return s.String() 4334 } 4335 4336 // Validate inspects the fields of the type to determine if they are valid. 4337 func (s *AssociateIdentityProviderConfigInput) Validate() error { 4338 invalidParams := request.ErrInvalidParams{Context: "AssociateIdentityProviderConfigInput"} 4339 if s.ClusterName == nil { 4340 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 4341 } 4342 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 4343 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 4344 } 4345 if s.Oidc == nil { 4346 invalidParams.Add(request.NewErrParamRequired("Oidc")) 4347 } 4348 if s.Tags != nil && len(s.Tags) < 1 { 4349 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4350 } 4351 if s.Oidc != nil { 4352 if err := s.Oidc.Validate(); err != nil { 4353 invalidParams.AddNested("Oidc", err.(request.ErrInvalidParams)) 4354 } 4355 } 4356 4357 if invalidParams.Len() > 0 { 4358 return invalidParams 4359 } 4360 return nil 4361 } 4362 4363 // SetClientRequestToken sets the ClientRequestToken field's value. 4364 func (s *AssociateIdentityProviderConfigInput) SetClientRequestToken(v string) *AssociateIdentityProviderConfigInput { 4365 s.ClientRequestToken = &v 4366 return s 4367 } 4368 4369 // SetClusterName sets the ClusterName field's value. 4370 func (s *AssociateIdentityProviderConfigInput) SetClusterName(v string) *AssociateIdentityProviderConfigInput { 4371 s.ClusterName = &v 4372 return s 4373 } 4374 4375 // SetOidc sets the Oidc field's value. 4376 func (s *AssociateIdentityProviderConfigInput) SetOidc(v *OidcIdentityProviderConfigRequest) *AssociateIdentityProviderConfigInput { 4377 s.Oidc = v 4378 return s 4379 } 4380 4381 // SetTags sets the Tags field's value. 4382 func (s *AssociateIdentityProviderConfigInput) SetTags(v map[string]*string) *AssociateIdentityProviderConfigInput { 4383 s.Tags = v 4384 return s 4385 } 4386 4387 type AssociateIdentityProviderConfigOutput struct { 4388 _ struct{} `type:"structure"` 4389 4390 // The tags for the resource. 4391 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 4392 4393 // An object representing an asynchronous update. 4394 Update *Update `locationName:"update" type:"structure"` 4395 } 4396 4397 // String returns the string representation. 4398 // 4399 // API parameter values that are decorated as "sensitive" in the API will not 4400 // be included in the string output. The member name will be present, but the 4401 // value will be replaced with "sensitive". 4402 func (s AssociateIdentityProviderConfigOutput) String() string { 4403 return awsutil.Prettify(s) 4404 } 4405 4406 // GoString returns the string representation. 4407 // 4408 // API parameter values that are decorated as "sensitive" in the API will not 4409 // be included in the string output. The member name will be present, but the 4410 // value will be replaced with "sensitive". 4411 func (s AssociateIdentityProviderConfigOutput) GoString() string { 4412 return s.String() 4413 } 4414 4415 // SetTags sets the Tags field's value. 4416 func (s *AssociateIdentityProviderConfigOutput) SetTags(v map[string]*string) *AssociateIdentityProviderConfigOutput { 4417 s.Tags = v 4418 return s 4419 } 4420 4421 // SetUpdate sets the Update field's value. 4422 func (s *AssociateIdentityProviderConfigOutput) SetUpdate(v *Update) *AssociateIdentityProviderConfigOutput { 4423 s.Update = v 4424 return s 4425 } 4426 4427 // An Auto Scaling group that is associated with an Amazon EKS managed node 4428 // group. 4429 type AutoScalingGroup struct { 4430 _ struct{} `type:"structure"` 4431 4432 // The name of the Auto Scaling group associated with an Amazon EKS managed 4433 // node group. 4434 Name *string `locationName:"name" type:"string"` 4435 } 4436 4437 // String returns the string representation. 4438 // 4439 // API parameter values that are decorated as "sensitive" in the API will not 4440 // be included in the string output. The member name will be present, but the 4441 // value will be replaced with "sensitive". 4442 func (s AutoScalingGroup) String() string { 4443 return awsutil.Prettify(s) 4444 } 4445 4446 // GoString returns the string representation. 4447 // 4448 // API parameter values that are decorated as "sensitive" in the API will not 4449 // be included in the string output. The member name will be present, but the 4450 // value will be replaced with "sensitive". 4451 func (s AutoScalingGroup) GoString() string { 4452 return s.String() 4453 } 4454 4455 // SetName sets the Name field's value. 4456 func (s *AutoScalingGroup) SetName(v string) *AutoScalingGroup { 4457 s.Name = &v 4458 return s 4459 } 4460 4461 // This exception is thrown if the request contains a semantic error. The precise 4462 // meaning will depend on the API, and will be documented in the error message. 4463 type BadRequestException struct { 4464 _ struct{} `type:"structure"` 4465 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4466 4467 Message_ *string `locationName:"message" type:"string"` 4468 } 4469 4470 // String returns the string representation. 4471 // 4472 // API parameter values that are decorated as "sensitive" in the API will not 4473 // be included in the string output. The member name will be present, but the 4474 // value will be replaced with "sensitive". 4475 func (s BadRequestException) String() string { 4476 return awsutil.Prettify(s) 4477 } 4478 4479 // GoString returns the string representation. 4480 // 4481 // API parameter values that are decorated as "sensitive" in the API will not 4482 // be included in the string output. The member name will be present, but the 4483 // value will be replaced with "sensitive". 4484 func (s BadRequestException) GoString() string { 4485 return s.String() 4486 } 4487 4488 func newErrorBadRequestException(v protocol.ResponseMetadata) error { 4489 return &BadRequestException{ 4490 RespMetadata: v, 4491 } 4492 } 4493 4494 // Code returns the exception type name. 4495 func (s *BadRequestException) Code() string { 4496 return "BadRequestException" 4497 } 4498 4499 // Message returns the exception's message. 4500 func (s *BadRequestException) Message() string { 4501 if s.Message_ != nil { 4502 return *s.Message_ 4503 } 4504 return "" 4505 } 4506 4507 // OrigErr always returns nil, satisfies awserr.Error interface. 4508 func (s *BadRequestException) OrigErr() error { 4509 return nil 4510 } 4511 4512 func (s *BadRequestException) Error() string { 4513 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4514 } 4515 4516 // Status code returns the HTTP status code for the request's response error. 4517 func (s *BadRequestException) StatusCode() int { 4518 return s.RespMetadata.StatusCode 4519 } 4520 4521 // RequestID returns the service's response RequestID for request. 4522 func (s *BadRequestException) RequestID() string { 4523 return s.RespMetadata.RequestID 4524 } 4525 4526 // An object representing the certificate-authority-data for your cluster. 4527 type Certificate struct { 4528 _ struct{} `type:"structure"` 4529 4530 // The Base64-encoded certificate data required to communicate with your cluster. 4531 // Add this to the certificate-authority-data section of the kubeconfig file 4532 // for your cluster. 4533 Data *string `locationName:"data" type:"string"` 4534 } 4535 4536 // String returns the string representation. 4537 // 4538 // API parameter values that are decorated as "sensitive" in the API will not 4539 // be included in the string output. The member name will be present, but the 4540 // value will be replaced with "sensitive". 4541 func (s Certificate) String() string { 4542 return awsutil.Prettify(s) 4543 } 4544 4545 // GoString returns the string representation. 4546 // 4547 // API parameter values that are decorated as "sensitive" in the API will not 4548 // be included in the string output. The member name will be present, but the 4549 // value will be replaced with "sensitive". 4550 func (s Certificate) GoString() string { 4551 return s.String() 4552 } 4553 4554 // SetData sets the Data field's value. 4555 func (s *Certificate) SetData(v string) *Certificate { 4556 s.Data = &v 4557 return s 4558 } 4559 4560 // These errors are usually caused by a client action. Actions can include using 4561 // an action or resource on behalf of a user that doesn't have permissions to 4562 // use the action or resource or specifying an identifier that is not valid. 4563 type ClientException struct { 4564 _ struct{} `type:"structure"` 4565 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4566 4567 AddonName *string `locationName:"addonName" type:"string"` 4568 4569 // The Amazon EKS cluster associated with the exception. 4570 ClusterName *string `locationName:"clusterName" type:"string"` 4571 4572 Message_ *string `locationName:"message" type:"string"` 4573 4574 // The Amazon EKS managed node group associated with the exception. 4575 NodegroupName *string `locationName:"nodegroupName" type:"string"` 4576 } 4577 4578 // String returns the string representation. 4579 // 4580 // API parameter values that are decorated as "sensitive" in the API will not 4581 // be included in the string output. The member name will be present, but the 4582 // value will be replaced with "sensitive". 4583 func (s ClientException) String() string { 4584 return awsutil.Prettify(s) 4585 } 4586 4587 // GoString returns the string representation. 4588 // 4589 // API parameter values that are decorated as "sensitive" in the API will not 4590 // be included in the string output. The member name will be present, but the 4591 // value will be replaced with "sensitive". 4592 func (s ClientException) GoString() string { 4593 return s.String() 4594 } 4595 4596 func newErrorClientException(v protocol.ResponseMetadata) error { 4597 return &ClientException{ 4598 RespMetadata: v, 4599 } 4600 } 4601 4602 // Code returns the exception type name. 4603 func (s *ClientException) Code() string { 4604 return "ClientException" 4605 } 4606 4607 // Message returns the exception's message. 4608 func (s *ClientException) Message() string { 4609 if s.Message_ != nil { 4610 return *s.Message_ 4611 } 4612 return "" 4613 } 4614 4615 // OrigErr always returns nil, satisfies awserr.Error interface. 4616 func (s *ClientException) OrigErr() error { 4617 return nil 4618 } 4619 4620 func (s *ClientException) Error() string { 4621 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 4622 } 4623 4624 // Status code returns the HTTP status code for the request's response error. 4625 func (s *ClientException) StatusCode() int { 4626 return s.RespMetadata.StatusCode 4627 } 4628 4629 // RequestID returns the service's response RequestID for request. 4630 func (s *ClientException) RequestID() string { 4631 return s.RespMetadata.RequestID 4632 } 4633 4634 // An object representing an Amazon EKS cluster. 4635 type Cluster struct { 4636 _ struct{} `type:"structure"` 4637 4638 // The Amazon Resource Name (ARN) of the cluster. 4639 Arn *string `locationName:"arn" type:"string"` 4640 4641 // The certificate-authority-data for your cluster. 4642 CertificateAuthority *Certificate `locationName:"certificateAuthority" type:"structure"` 4643 4644 // Unique, case-sensitive identifier that you provide to ensure the idempotency 4645 // of the request. 4646 ClientRequestToken *string `locationName:"clientRequestToken" type:"string"` 4647 4648 // The configuration used to connect to a cluster for registration. 4649 ConnectorConfig *ConnectorConfigResponse `locationName:"connectorConfig" type:"structure"` 4650 4651 // The Unix epoch timestamp in seconds for when the cluster was created. 4652 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` 4653 4654 // The encryption configuration for the cluster. 4655 EncryptionConfig []*EncryptionConfig `locationName:"encryptionConfig" type:"list"` 4656 4657 // The endpoint for your Kubernetes API server. 4658 Endpoint *string `locationName:"endpoint" type:"string"` 4659 4660 // The identity provider information for the cluster. 4661 Identity *Identity `locationName:"identity" type:"structure"` 4662 4663 // The Kubernetes network configuration for the cluster. 4664 KubernetesNetworkConfig *KubernetesNetworkConfigResponse `locationName:"kubernetesNetworkConfig" type:"structure"` 4665 4666 // The logging configuration for your cluster. 4667 Logging *Logging `locationName:"logging" type:"structure"` 4668 4669 // The name of the cluster. 4670 Name *string `locationName:"name" type:"string"` 4671 4672 // The platform version of your Amazon EKS cluster. For more information, see 4673 // Platform Versions (https://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html) 4674 // in the Amazon EKS User Guide . 4675 PlatformVersion *string `locationName:"platformVersion" type:"string"` 4676 4677 // The VPC configuration used by the cluster control plane. Amazon EKS VPC resources 4678 // have specific requirements to work properly with Kubernetes. For more information, 4679 // see Cluster VPC Considerations (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) 4680 // and Cluster Security Group Considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) 4681 // in the Amazon EKS User Guide. 4682 ResourcesVpcConfig *VpcConfigResponse `locationName:"resourcesVpcConfig" type:"structure"` 4683 4684 // The Amazon Resource Name (ARN) of the IAM role that provides permissions 4685 // for the Kubernetes control plane to make calls to Amazon Web Services API 4686 // operations on your behalf. 4687 RoleArn *string `locationName:"roleArn" type:"string"` 4688 4689 // The current status of the cluster. 4690 Status *string `locationName:"status" type:"string" enum:"ClusterStatus"` 4691 4692 // The metadata that you apply to the cluster to assist with categorization 4693 // and organization. Each tag consists of a key and an optional value, both 4694 // of which you define. Cluster tags do not propagate to any other resources 4695 // associated with the cluster. 4696 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 4697 4698 // The Kubernetes server version for the cluster. 4699 Version *string `locationName:"version" type:"string"` 4700 } 4701 4702 // String returns the string representation. 4703 // 4704 // API parameter values that are decorated as "sensitive" in the API will not 4705 // be included in the string output. The member name will be present, but the 4706 // value will be replaced with "sensitive". 4707 func (s Cluster) String() string { 4708 return awsutil.Prettify(s) 4709 } 4710 4711 // GoString returns the string representation. 4712 // 4713 // API parameter values that are decorated as "sensitive" in the API will not 4714 // be included in the string output. The member name will be present, but the 4715 // value will be replaced with "sensitive". 4716 func (s Cluster) GoString() string { 4717 return s.String() 4718 } 4719 4720 // SetArn sets the Arn field's value. 4721 func (s *Cluster) SetArn(v string) *Cluster { 4722 s.Arn = &v 4723 return s 4724 } 4725 4726 // SetCertificateAuthority sets the CertificateAuthority field's value. 4727 func (s *Cluster) SetCertificateAuthority(v *Certificate) *Cluster { 4728 s.CertificateAuthority = v 4729 return s 4730 } 4731 4732 // SetClientRequestToken sets the ClientRequestToken field's value. 4733 func (s *Cluster) SetClientRequestToken(v string) *Cluster { 4734 s.ClientRequestToken = &v 4735 return s 4736 } 4737 4738 // SetConnectorConfig sets the ConnectorConfig field's value. 4739 func (s *Cluster) SetConnectorConfig(v *ConnectorConfigResponse) *Cluster { 4740 s.ConnectorConfig = v 4741 return s 4742 } 4743 4744 // SetCreatedAt sets the CreatedAt field's value. 4745 func (s *Cluster) SetCreatedAt(v time.Time) *Cluster { 4746 s.CreatedAt = &v 4747 return s 4748 } 4749 4750 // SetEncryptionConfig sets the EncryptionConfig field's value. 4751 func (s *Cluster) SetEncryptionConfig(v []*EncryptionConfig) *Cluster { 4752 s.EncryptionConfig = v 4753 return s 4754 } 4755 4756 // SetEndpoint sets the Endpoint field's value. 4757 func (s *Cluster) SetEndpoint(v string) *Cluster { 4758 s.Endpoint = &v 4759 return s 4760 } 4761 4762 // SetIdentity sets the Identity field's value. 4763 func (s *Cluster) SetIdentity(v *Identity) *Cluster { 4764 s.Identity = v 4765 return s 4766 } 4767 4768 // SetKubernetesNetworkConfig sets the KubernetesNetworkConfig field's value. 4769 func (s *Cluster) SetKubernetesNetworkConfig(v *KubernetesNetworkConfigResponse) *Cluster { 4770 s.KubernetesNetworkConfig = v 4771 return s 4772 } 4773 4774 // SetLogging sets the Logging field's value. 4775 func (s *Cluster) SetLogging(v *Logging) *Cluster { 4776 s.Logging = v 4777 return s 4778 } 4779 4780 // SetName sets the Name field's value. 4781 func (s *Cluster) SetName(v string) *Cluster { 4782 s.Name = &v 4783 return s 4784 } 4785 4786 // SetPlatformVersion sets the PlatformVersion field's value. 4787 func (s *Cluster) SetPlatformVersion(v string) *Cluster { 4788 s.PlatformVersion = &v 4789 return s 4790 } 4791 4792 // SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. 4793 func (s *Cluster) SetResourcesVpcConfig(v *VpcConfigResponse) *Cluster { 4794 s.ResourcesVpcConfig = v 4795 return s 4796 } 4797 4798 // SetRoleArn sets the RoleArn field's value. 4799 func (s *Cluster) SetRoleArn(v string) *Cluster { 4800 s.RoleArn = &v 4801 return s 4802 } 4803 4804 // SetStatus sets the Status field's value. 4805 func (s *Cluster) SetStatus(v string) *Cluster { 4806 s.Status = &v 4807 return s 4808 } 4809 4810 // SetTags sets the Tags field's value. 4811 func (s *Cluster) SetTags(v map[string]*string) *Cluster { 4812 s.Tags = v 4813 return s 4814 } 4815 4816 // SetVersion sets the Version field's value. 4817 func (s *Cluster) SetVersion(v string) *Cluster { 4818 s.Version = &v 4819 return s 4820 } 4821 4822 // Compatibility information. 4823 type Compatibility struct { 4824 _ struct{} `type:"structure"` 4825 4826 // The supported Kubernetes version of the cluster. 4827 ClusterVersion *string `locationName:"clusterVersion" type:"string"` 4828 4829 // The supported default version. 4830 DefaultVersion *bool `locationName:"defaultVersion" type:"boolean"` 4831 4832 // The supported compute platform. 4833 PlatformVersions []*string `locationName:"platformVersions" type:"list"` 4834 } 4835 4836 // String returns the string representation. 4837 // 4838 // API parameter values that are decorated as "sensitive" in the API will not 4839 // be included in the string output. The member name will be present, but the 4840 // value will be replaced with "sensitive". 4841 func (s Compatibility) String() string { 4842 return awsutil.Prettify(s) 4843 } 4844 4845 // GoString returns the string representation. 4846 // 4847 // API parameter values that are decorated as "sensitive" in the API will not 4848 // be included in the string output. The member name will be present, but the 4849 // value will be replaced with "sensitive". 4850 func (s Compatibility) GoString() string { 4851 return s.String() 4852 } 4853 4854 // SetClusterVersion sets the ClusterVersion field's value. 4855 func (s *Compatibility) SetClusterVersion(v string) *Compatibility { 4856 s.ClusterVersion = &v 4857 return s 4858 } 4859 4860 // SetDefaultVersion sets the DefaultVersion field's value. 4861 func (s *Compatibility) SetDefaultVersion(v bool) *Compatibility { 4862 s.DefaultVersion = &v 4863 return s 4864 } 4865 4866 // SetPlatformVersions sets the PlatformVersions field's value. 4867 func (s *Compatibility) SetPlatformVersions(v []*string) *Compatibility { 4868 s.PlatformVersions = v 4869 return s 4870 } 4871 4872 // The configuration sent to a cluster for configuration. 4873 type ConnectorConfigRequest struct { 4874 _ struct{} `type:"structure"` 4875 4876 // The cloud provider for the target cluster to connect. 4877 // 4878 // Provider is a required field 4879 Provider *string `locationName:"provider" type:"string" required:"true" enum:"ConnectorConfigProvider"` 4880 4881 // The Amazon Resource Name (ARN) of the role that is authorized to request 4882 // the connector configuration. 4883 // 4884 // RoleArn is a required field 4885 RoleArn *string `locationName:"roleArn" type:"string" required:"true"` 4886 } 4887 4888 // String returns the string representation. 4889 // 4890 // API parameter values that are decorated as "sensitive" in the API will not 4891 // be included in the string output. The member name will be present, but the 4892 // value will be replaced with "sensitive". 4893 func (s ConnectorConfigRequest) String() string { 4894 return awsutil.Prettify(s) 4895 } 4896 4897 // GoString returns the string representation. 4898 // 4899 // API parameter values that are decorated as "sensitive" in the API will not 4900 // be included in the string output. The member name will be present, but the 4901 // value will be replaced with "sensitive". 4902 func (s ConnectorConfigRequest) GoString() string { 4903 return s.String() 4904 } 4905 4906 // Validate inspects the fields of the type to determine if they are valid. 4907 func (s *ConnectorConfigRequest) Validate() error { 4908 invalidParams := request.ErrInvalidParams{Context: "ConnectorConfigRequest"} 4909 if s.Provider == nil { 4910 invalidParams.Add(request.NewErrParamRequired("Provider")) 4911 } 4912 if s.RoleArn == nil { 4913 invalidParams.Add(request.NewErrParamRequired("RoleArn")) 4914 } 4915 4916 if invalidParams.Len() > 0 { 4917 return invalidParams 4918 } 4919 return nil 4920 } 4921 4922 // SetProvider sets the Provider field's value. 4923 func (s *ConnectorConfigRequest) SetProvider(v string) *ConnectorConfigRequest { 4924 s.Provider = &v 4925 return s 4926 } 4927 4928 // SetRoleArn sets the RoleArn field's value. 4929 func (s *ConnectorConfigRequest) SetRoleArn(v string) *ConnectorConfigRequest { 4930 s.RoleArn = &v 4931 return s 4932 } 4933 4934 // The full description of your connected cluster. 4935 type ConnectorConfigResponse struct { 4936 _ struct{} `type:"structure"` 4937 4938 // A unique code associated with the cluster for registration purposes. 4939 ActivationCode *string `locationName:"activationCode" type:"string"` 4940 4941 // The expiration time of the connected cluster. The cluster's YAML file must 4942 // be applied through the native provider. 4943 ActivationExpiry *time.Time `locationName:"activationExpiry" type:"timestamp"` 4944 4945 // A unique ID associated with the cluster for registration purposes. 4946 ActivationId *string `locationName:"activationId" type:"string"` 4947 4948 // The cluster's cloud service provider. 4949 Provider *string `locationName:"provider" type:"string"` 4950 4951 // The Amazon Resource Name (ARN) of the role that is used by the EKS connector 4952 // to communicate with AWS services from the connected Kubernetes cluster. 4953 RoleArn *string `locationName:"roleArn" type:"string"` 4954 } 4955 4956 // String returns the string representation. 4957 // 4958 // API parameter values that are decorated as "sensitive" in the API will not 4959 // be included in the string output. The member name will be present, but the 4960 // value will be replaced with "sensitive". 4961 func (s ConnectorConfigResponse) String() string { 4962 return awsutil.Prettify(s) 4963 } 4964 4965 // GoString returns the string representation. 4966 // 4967 // API parameter values that are decorated as "sensitive" in the API will not 4968 // be included in the string output. The member name will be present, but the 4969 // value will be replaced with "sensitive". 4970 func (s ConnectorConfigResponse) GoString() string { 4971 return s.String() 4972 } 4973 4974 // SetActivationCode sets the ActivationCode field's value. 4975 func (s *ConnectorConfigResponse) SetActivationCode(v string) *ConnectorConfigResponse { 4976 s.ActivationCode = &v 4977 return s 4978 } 4979 4980 // SetActivationExpiry sets the ActivationExpiry field's value. 4981 func (s *ConnectorConfigResponse) SetActivationExpiry(v time.Time) *ConnectorConfigResponse { 4982 s.ActivationExpiry = &v 4983 return s 4984 } 4985 4986 // SetActivationId sets the ActivationId field's value. 4987 func (s *ConnectorConfigResponse) SetActivationId(v string) *ConnectorConfigResponse { 4988 s.ActivationId = &v 4989 return s 4990 } 4991 4992 // SetProvider sets the Provider field's value. 4993 func (s *ConnectorConfigResponse) SetProvider(v string) *ConnectorConfigResponse { 4994 s.Provider = &v 4995 return s 4996 } 4997 4998 // SetRoleArn sets the RoleArn field's value. 4999 func (s *ConnectorConfigResponse) SetRoleArn(v string) *ConnectorConfigResponse { 5000 s.RoleArn = &v 5001 return s 5002 } 5003 5004 type CreateAddonInput struct { 5005 _ struct{} `type:"structure"` 5006 5007 // The name of the add-on. The name must match one of the names returned by 5008 // DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). 5009 // 5010 // AddonName is a required field 5011 AddonName *string `locationName:"addonName" type:"string" required:"true"` 5012 5013 // The version of the add-on. The version must match one of the versions returned 5014 // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). 5015 AddonVersion *string `locationName:"addonVersion" type:"string"` 5016 5017 // A unique, case-sensitive identifier that you provide to ensure the idempotency 5018 // of the request. 5019 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 5020 5021 // The name of the cluster to create the add-on for. 5022 // 5023 // ClusterName is a required field 5024 ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5025 5026 // How to resolve parameter value conflicts when migrating an existing add-on 5027 // to an Amazon EKS add-on. 5028 ResolveConflicts *string `locationName:"resolveConflicts" type:"string" enum:"ResolveConflicts"` 5029 5030 // The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's 5031 // service account. The role must be assigned the IAM permissions required by 5032 // the add-on. If you don't specify an existing IAM role, then the add-on uses 5033 // the permissions assigned to the node IAM role. For more information, see 5034 // Amazon EKS node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html) 5035 // in the Amazon EKS User Guide. 5036 // 5037 // To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) 5038 // provider created for your cluster. For more information, see Enabling IAM 5039 // roles for service accounts on your cluster (https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html) 5040 // in the Amazon EKS User Guide. 5041 ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" min:"1" type:"string"` 5042 5043 // The metadata to apply to the cluster to assist with categorization and organization. 5044 // Each tag consists of a key and an optional value, both of which you define. 5045 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 5046 } 5047 5048 // String returns the string representation. 5049 // 5050 // API parameter values that are decorated as "sensitive" in the API will not 5051 // be included in the string output. The member name will be present, but the 5052 // value will be replaced with "sensitive". 5053 func (s CreateAddonInput) String() string { 5054 return awsutil.Prettify(s) 5055 } 5056 5057 // GoString returns the string representation. 5058 // 5059 // API parameter values that are decorated as "sensitive" in the API will not 5060 // be included in the string output. The member name will be present, but the 5061 // value will be replaced with "sensitive". 5062 func (s CreateAddonInput) GoString() string { 5063 return s.String() 5064 } 5065 5066 // Validate inspects the fields of the type to determine if they are valid. 5067 func (s *CreateAddonInput) Validate() error { 5068 invalidParams := request.ErrInvalidParams{Context: "CreateAddonInput"} 5069 if s.AddonName == nil { 5070 invalidParams.Add(request.NewErrParamRequired("AddonName")) 5071 } 5072 if s.ClusterName == nil { 5073 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 5074 } 5075 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 5076 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 5077 } 5078 if s.ServiceAccountRoleArn != nil && len(*s.ServiceAccountRoleArn) < 1 { 5079 invalidParams.Add(request.NewErrParamMinLen("ServiceAccountRoleArn", 1)) 5080 } 5081 if s.Tags != nil && len(s.Tags) < 1 { 5082 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 5083 } 5084 5085 if invalidParams.Len() > 0 { 5086 return invalidParams 5087 } 5088 return nil 5089 } 5090 5091 // SetAddonName sets the AddonName field's value. 5092 func (s *CreateAddonInput) SetAddonName(v string) *CreateAddonInput { 5093 s.AddonName = &v 5094 return s 5095 } 5096 5097 // SetAddonVersion sets the AddonVersion field's value. 5098 func (s *CreateAddonInput) SetAddonVersion(v string) *CreateAddonInput { 5099 s.AddonVersion = &v 5100 return s 5101 } 5102 5103 // SetClientRequestToken sets the ClientRequestToken field's value. 5104 func (s *CreateAddonInput) SetClientRequestToken(v string) *CreateAddonInput { 5105 s.ClientRequestToken = &v 5106 return s 5107 } 5108 5109 // SetClusterName sets the ClusterName field's value. 5110 func (s *CreateAddonInput) SetClusterName(v string) *CreateAddonInput { 5111 s.ClusterName = &v 5112 return s 5113 } 5114 5115 // SetResolveConflicts sets the ResolveConflicts field's value. 5116 func (s *CreateAddonInput) SetResolveConflicts(v string) *CreateAddonInput { 5117 s.ResolveConflicts = &v 5118 return s 5119 } 5120 5121 // SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. 5122 func (s *CreateAddonInput) SetServiceAccountRoleArn(v string) *CreateAddonInput { 5123 s.ServiceAccountRoleArn = &v 5124 return s 5125 } 5126 5127 // SetTags sets the Tags field's value. 5128 func (s *CreateAddonInput) SetTags(v map[string]*string) *CreateAddonInput { 5129 s.Tags = v 5130 return s 5131 } 5132 5133 type CreateAddonOutput struct { 5134 _ struct{} `type:"structure"` 5135 5136 // An Amazon EKS add-on. 5137 Addon *Addon `locationName:"addon" type:"structure"` 5138 } 5139 5140 // String returns the string representation. 5141 // 5142 // API parameter values that are decorated as "sensitive" in the API will not 5143 // be included in the string output. The member name will be present, but the 5144 // value will be replaced with "sensitive". 5145 func (s CreateAddonOutput) String() string { 5146 return awsutil.Prettify(s) 5147 } 5148 5149 // GoString returns the string representation. 5150 // 5151 // API parameter values that are decorated as "sensitive" in the API will not 5152 // be included in the string output. The member name will be present, but the 5153 // value will be replaced with "sensitive". 5154 func (s CreateAddonOutput) GoString() string { 5155 return s.String() 5156 } 5157 5158 // SetAddon sets the Addon field's value. 5159 func (s *CreateAddonOutput) SetAddon(v *Addon) *CreateAddonOutput { 5160 s.Addon = v 5161 return s 5162 } 5163 5164 type CreateClusterInput struct { 5165 _ struct{} `type:"structure"` 5166 5167 // Unique, case-sensitive identifier that you provide to ensure the idempotency 5168 // of the request. 5169 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 5170 5171 // The encryption configuration for the cluster. 5172 EncryptionConfig []*EncryptionConfig `locationName:"encryptionConfig" type:"list"` 5173 5174 // The Kubernetes network configuration for the cluster. 5175 KubernetesNetworkConfig *KubernetesNetworkConfigRequest `locationName:"kubernetesNetworkConfig" type:"structure"` 5176 5177 // Enable or disable exporting the Kubernetes control plane logs for your cluster 5178 // to CloudWatch Logs. By default, cluster control plane logs aren't exported 5179 // to CloudWatch Logs. For more information, see Amazon EKS Cluster control 5180 // plane logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) 5181 // in the Amazon EKS User Guide . 5182 // 5183 // CloudWatch Logs ingestion, archive storage, and data scanning rates apply 5184 // to exported control plane logs. For more information, see CloudWatch Pricing 5185 // (http://aws.amazon.com/cloudwatch/pricing/). 5186 Logging *Logging `locationName:"logging" type:"structure"` 5187 5188 // The unique name to give to your cluster. 5189 // 5190 // Name is a required field 5191 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 5192 5193 // The VPC configuration used by the cluster control plane. Amazon EKS VPC resources 5194 // have specific requirements to work properly with Kubernetes. For more information, 5195 // see Cluster VPC Considerations (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) 5196 // and Cluster Security Group Considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) 5197 // in the Amazon EKS User Guide. You must specify at least two subnets. You 5198 // can specify up to five security groups, but we recommend that you use a dedicated 5199 // security group for your cluster control plane. 5200 // 5201 // ResourcesVpcConfig is a required field 5202 ResourcesVpcConfig *VpcConfigRequest `locationName:"resourcesVpcConfig" type:"structure" required:"true"` 5203 5204 // The Amazon Resource Name (ARN) of the IAM role that provides permissions 5205 // for the Kubernetes control plane to make calls to Amazon Web Services API 5206 // operations on your behalf. For more information, see Amazon EKS Service IAM 5207 // Role (https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html) 5208 // in the Amazon EKS User Guide . 5209 // 5210 // RoleArn is a required field 5211 RoleArn *string `locationName:"roleArn" type:"string" required:"true"` 5212 5213 // The metadata to apply to the cluster to assist with categorization and organization. 5214 // Each tag consists of a key and an optional value, both of which you define. 5215 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 5216 5217 // The desired Kubernetes version for your cluster. If you don't specify a value 5218 // here, the latest version available in Amazon EKS is used. 5219 Version *string `locationName:"version" type:"string"` 5220 } 5221 5222 // String returns the string representation. 5223 // 5224 // API parameter values that are decorated as "sensitive" in the API will not 5225 // be included in the string output. The member name will be present, but the 5226 // value will be replaced with "sensitive". 5227 func (s CreateClusterInput) String() string { 5228 return awsutil.Prettify(s) 5229 } 5230 5231 // GoString returns the string representation. 5232 // 5233 // API parameter values that are decorated as "sensitive" in the API will not 5234 // be included in the string output. The member name will be present, but the 5235 // value will be replaced with "sensitive". 5236 func (s CreateClusterInput) GoString() string { 5237 return s.String() 5238 } 5239 5240 // Validate inspects the fields of the type to determine if they are valid. 5241 func (s *CreateClusterInput) Validate() error { 5242 invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"} 5243 if s.Name == nil { 5244 invalidParams.Add(request.NewErrParamRequired("Name")) 5245 } 5246 if s.Name != nil && len(*s.Name) < 1 { 5247 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5248 } 5249 if s.ResourcesVpcConfig == nil { 5250 invalidParams.Add(request.NewErrParamRequired("ResourcesVpcConfig")) 5251 } 5252 if s.RoleArn == nil { 5253 invalidParams.Add(request.NewErrParamRequired("RoleArn")) 5254 } 5255 if s.Tags != nil && len(s.Tags) < 1 { 5256 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 5257 } 5258 5259 if invalidParams.Len() > 0 { 5260 return invalidParams 5261 } 5262 return nil 5263 } 5264 5265 // SetClientRequestToken sets the ClientRequestToken field's value. 5266 func (s *CreateClusterInput) SetClientRequestToken(v string) *CreateClusterInput { 5267 s.ClientRequestToken = &v 5268 return s 5269 } 5270 5271 // SetEncryptionConfig sets the EncryptionConfig field's value. 5272 func (s *CreateClusterInput) SetEncryptionConfig(v []*EncryptionConfig) *CreateClusterInput { 5273 s.EncryptionConfig = v 5274 return s 5275 } 5276 5277 // SetKubernetesNetworkConfig sets the KubernetesNetworkConfig field's value. 5278 func (s *CreateClusterInput) SetKubernetesNetworkConfig(v *KubernetesNetworkConfigRequest) *CreateClusterInput { 5279 s.KubernetesNetworkConfig = v 5280 return s 5281 } 5282 5283 // SetLogging sets the Logging field's value. 5284 func (s *CreateClusterInput) SetLogging(v *Logging) *CreateClusterInput { 5285 s.Logging = v 5286 return s 5287 } 5288 5289 // SetName sets the Name field's value. 5290 func (s *CreateClusterInput) SetName(v string) *CreateClusterInput { 5291 s.Name = &v 5292 return s 5293 } 5294 5295 // SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. 5296 func (s *CreateClusterInput) SetResourcesVpcConfig(v *VpcConfigRequest) *CreateClusterInput { 5297 s.ResourcesVpcConfig = v 5298 return s 5299 } 5300 5301 // SetRoleArn sets the RoleArn field's value. 5302 func (s *CreateClusterInput) SetRoleArn(v string) *CreateClusterInput { 5303 s.RoleArn = &v 5304 return s 5305 } 5306 5307 // SetTags sets the Tags field's value. 5308 func (s *CreateClusterInput) SetTags(v map[string]*string) *CreateClusterInput { 5309 s.Tags = v 5310 return s 5311 } 5312 5313 // SetVersion sets the Version field's value. 5314 func (s *CreateClusterInput) SetVersion(v string) *CreateClusterInput { 5315 s.Version = &v 5316 return s 5317 } 5318 5319 type CreateClusterOutput struct { 5320 _ struct{} `type:"structure"` 5321 5322 // The full description of your new cluster. 5323 Cluster *Cluster `locationName:"cluster" type:"structure"` 5324 } 5325 5326 // String returns the string representation. 5327 // 5328 // API parameter values that are decorated as "sensitive" in the API will not 5329 // be included in the string output. The member name will be present, but the 5330 // value will be replaced with "sensitive". 5331 func (s CreateClusterOutput) String() string { 5332 return awsutil.Prettify(s) 5333 } 5334 5335 // GoString returns the string representation. 5336 // 5337 // API parameter values that are decorated as "sensitive" in the API will not 5338 // be included in the string output. The member name will be present, but the 5339 // value will be replaced with "sensitive". 5340 func (s CreateClusterOutput) GoString() string { 5341 return s.String() 5342 } 5343 5344 // SetCluster sets the Cluster field's value. 5345 func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput { 5346 s.Cluster = v 5347 return s 5348 } 5349 5350 type CreateFargateProfileInput struct { 5351 _ struct{} `type:"structure"` 5352 5353 // Unique, case-sensitive identifier that you provide to ensure the idempotency 5354 // of the request. 5355 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 5356 5357 // The name of the Amazon EKS cluster to apply the Fargate profile to. 5358 // 5359 // ClusterName is a required field 5360 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 5361 5362 // The name of the Fargate profile. 5363 // 5364 // FargateProfileName is a required field 5365 FargateProfileName *string `locationName:"fargateProfileName" type:"string" required:"true"` 5366 5367 // The Amazon Resource Name (ARN) of the pod execution role to use for pods 5368 // that match the selectors in the Fargate profile. The pod execution role allows 5369 // Fargate infrastructure to register with your cluster as a node, and it provides 5370 // read access to Amazon ECR image repositories. For more information, see Pod 5371 // Execution Role (https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html) 5372 // in the Amazon EKS User Guide. 5373 // 5374 // PodExecutionRoleArn is a required field 5375 PodExecutionRoleArn *string `locationName:"podExecutionRoleArn" type:"string" required:"true"` 5376 5377 // The selectors to match for pods to use this Fargate profile. Each selector 5378 // must have an associated namespace. Optionally, you can also specify labels 5379 // for a namespace. You may specify up to five selectors in a Fargate profile. 5380 Selectors []*FargateProfileSelector `locationName:"selectors" type:"list"` 5381 5382 // The IDs of subnets to launch your pods into. At this time, pods running on 5383 // Fargate are not assigned public IP addresses, so only private subnets (with 5384 // no direct route to an Internet Gateway) are accepted for this parameter. 5385 Subnets []*string `locationName:"subnets" type:"list"` 5386 5387 // The metadata to apply to the Fargate profile to assist with categorization 5388 // and organization. Each tag consists of a key and an optional value, both 5389 // of which you define. Fargate profile tags do not propagate to any other resources 5390 // associated with the Fargate profile, such as the pods that are scheduled 5391 // with it. 5392 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 5393 } 5394 5395 // String returns the string representation. 5396 // 5397 // API parameter values that are decorated as "sensitive" in the API will not 5398 // be included in the string output. The member name will be present, but the 5399 // value will be replaced with "sensitive". 5400 func (s CreateFargateProfileInput) String() string { 5401 return awsutil.Prettify(s) 5402 } 5403 5404 // GoString returns the string representation. 5405 // 5406 // API parameter values that are decorated as "sensitive" in the API will not 5407 // be included in the string output. The member name will be present, but the 5408 // value will be replaced with "sensitive". 5409 func (s CreateFargateProfileInput) GoString() string { 5410 return s.String() 5411 } 5412 5413 // Validate inspects the fields of the type to determine if they are valid. 5414 func (s *CreateFargateProfileInput) Validate() error { 5415 invalidParams := request.ErrInvalidParams{Context: "CreateFargateProfileInput"} 5416 if s.ClusterName == nil { 5417 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 5418 } 5419 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 5420 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 5421 } 5422 if s.FargateProfileName == nil { 5423 invalidParams.Add(request.NewErrParamRequired("FargateProfileName")) 5424 } 5425 if s.PodExecutionRoleArn == nil { 5426 invalidParams.Add(request.NewErrParamRequired("PodExecutionRoleArn")) 5427 } 5428 if s.Tags != nil && len(s.Tags) < 1 { 5429 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 5430 } 5431 5432 if invalidParams.Len() > 0 { 5433 return invalidParams 5434 } 5435 return nil 5436 } 5437 5438 // SetClientRequestToken sets the ClientRequestToken field's value. 5439 func (s *CreateFargateProfileInput) SetClientRequestToken(v string) *CreateFargateProfileInput { 5440 s.ClientRequestToken = &v 5441 return s 5442 } 5443 5444 // SetClusterName sets the ClusterName field's value. 5445 func (s *CreateFargateProfileInput) SetClusterName(v string) *CreateFargateProfileInput { 5446 s.ClusterName = &v 5447 return s 5448 } 5449 5450 // SetFargateProfileName sets the FargateProfileName field's value. 5451 func (s *CreateFargateProfileInput) SetFargateProfileName(v string) *CreateFargateProfileInput { 5452 s.FargateProfileName = &v 5453 return s 5454 } 5455 5456 // SetPodExecutionRoleArn sets the PodExecutionRoleArn field's value. 5457 func (s *CreateFargateProfileInput) SetPodExecutionRoleArn(v string) *CreateFargateProfileInput { 5458 s.PodExecutionRoleArn = &v 5459 return s 5460 } 5461 5462 // SetSelectors sets the Selectors field's value. 5463 func (s *CreateFargateProfileInput) SetSelectors(v []*FargateProfileSelector) *CreateFargateProfileInput { 5464 s.Selectors = v 5465 return s 5466 } 5467 5468 // SetSubnets sets the Subnets field's value. 5469 func (s *CreateFargateProfileInput) SetSubnets(v []*string) *CreateFargateProfileInput { 5470 s.Subnets = v 5471 return s 5472 } 5473 5474 // SetTags sets the Tags field's value. 5475 func (s *CreateFargateProfileInput) SetTags(v map[string]*string) *CreateFargateProfileInput { 5476 s.Tags = v 5477 return s 5478 } 5479 5480 type CreateFargateProfileOutput struct { 5481 _ struct{} `type:"structure"` 5482 5483 // The full description of your new Fargate profile. 5484 FargateProfile *FargateProfile `locationName:"fargateProfile" type:"structure"` 5485 } 5486 5487 // String returns the string representation. 5488 // 5489 // API parameter values that are decorated as "sensitive" in the API will not 5490 // be included in the string output. The member name will be present, but the 5491 // value will be replaced with "sensitive". 5492 func (s CreateFargateProfileOutput) String() string { 5493 return awsutil.Prettify(s) 5494 } 5495 5496 // GoString returns the string representation. 5497 // 5498 // API parameter values that are decorated as "sensitive" in the API will not 5499 // be included in the string output. The member name will be present, but the 5500 // value will be replaced with "sensitive". 5501 func (s CreateFargateProfileOutput) GoString() string { 5502 return s.String() 5503 } 5504 5505 // SetFargateProfile sets the FargateProfile field's value. 5506 func (s *CreateFargateProfileOutput) SetFargateProfile(v *FargateProfile) *CreateFargateProfileOutput { 5507 s.FargateProfile = v 5508 return s 5509 } 5510 5511 type CreateNodegroupInput struct { 5512 _ struct{} `type:"structure"` 5513 5514 // The AMI type for your node group. GPU instance types should use the AL2_x86_64_GPU 5515 // AMI type. Non-GPU instances should use the AL2_x86_64 AMI type. Arm instances 5516 // should use the AL2_ARM_64 AMI type. All types use the Amazon EKS optimized 5517 // Amazon Linux 2 AMI. If you specify launchTemplate, and your launch template 5518 // uses a custom AMI, then don't specify amiType, or the node group deployment 5519 // will fail. For more information about using launch templates with Amazon 5520 // EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5521 // in the Amazon EKS User Guide. 5522 AmiType *string `locationName:"amiType" type:"string" enum:"AMITypes"` 5523 5524 // The capacity type for your node group. 5525 CapacityType *string `locationName:"capacityType" type:"string" enum:"CapacityTypes"` 5526 5527 // Unique, case-sensitive identifier that you provide to ensure the idempotency 5528 // of the request. 5529 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 5530 5531 // The name of the cluster to create the node group in. 5532 // 5533 // ClusterName is a required field 5534 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 5535 5536 // The root device disk size (in GiB) for your node group instances. The default 5537 // disk size is 20 GiB. If you specify launchTemplate, then don't specify diskSize, 5538 // or the node group deployment will fail. For more information about using 5539 // launch templates with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5540 // in the Amazon EKS User Guide. 5541 DiskSize *int64 `locationName:"diskSize" type:"integer"` 5542 5543 // Specify the instance types for a node group. If you specify a GPU instance 5544 // type, be sure to specify AL2_x86_64_GPU with the amiType parameter. If you 5545 // specify launchTemplate, then you can specify zero or one instance type in 5546 // your launch template or you can specify 0-20 instance types for instanceTypes. 5547 // If however, you specify an instance type in your launch template and specify 5548 // any instanceTypes, the node group deployment will fail. If you don't specify 5549 // an instance type in a launch template or for instanceTypes, then t3.medium 5550 // is used, by default. If you specify Spot for capacityType, then we recommend 5551 // specifying multiple values for instanceTypes. For more information, see Managed 5552 // node group capacity types (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types) 5553 // and Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5554 // in the Amazon EKS User Guide. 5555 InstanceTypes []*string `locationName:"instanceTypes" type:"list"` 5556 5557 // The Kubernetes labels to be applied to the nodes in the node group when they 5558 // are created. 5559 Labels map[string]*string `locationName:"labels" type:"map"` 5560 5561 // An object representing a node group's launch template specification. If specified, 5562 // then do not specify instanceTypes, diskSize, or remoteAccess and make sure 5563 // that the launch template meets the requirements in launchTemplateSpecification. 5564 LaunchTemplate *LaunchTemplateSpecification `locationName:"launchTemplate" type:"structure"` 5565 5566 // The Amazon Resource Name (ARN) of the IAM role to associate with your node 5567 // group. The Amazon EKS worker node kubelet daemon makes calls to Amazon Web 5568 // Services APIs on your behalf. Nodes receive permissions for these API calls 5569 // through an IAM instance profile and associated policies. Before you can launch 5570 // nodes and register them into a cluster, you must create an IAM role for those 5571 // nodes to use when they are launched. For more information, see Amazon EKS 5572 // node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html) 5573 // in the Amazon EKS User Guide . If you specify launchTemplate, then don't 5574 // specify IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html) 5575 // in your launch template, or the node group deployment will fail. For more 5576 // information about using launch templates with Amazon EKS, see Launch template 5577 // support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5578 // in the Amazon EKS User Guide. 5579 // 5580 // NodeRole is a required field 5581 NodeRole *string `locationName:"nodeRole" type:"string" required:"true"` 5582 5583 // The unique name to give your node group. 5584 // 5585 // NodegroupName is a required field 5586 NodegroupName *string `locationName:"nodegroupName" type:"string" required:"true"` 5587 5588 // The AMI version of the Amazon EKS optimized AMI to use with your node group. 5589 // By default, the latest available AMI version for the node group's current 5590 // Kubernetes version is used. For more information, see Amazon EKS optimized 5591 // Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) 5592 // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch 5593 // template uses a custom AMI, then don't specify releaseVersion, or the node 5594 // group deployment will fail. For more information about using launch templates 5595 // with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5596 // in the Amazon EKS User Guide. 5597 ReleaseVersion *string `locationName:"releaseVersion" type:"string"` 5598 5599 // The remote access (SSH) configuration to use with your node group. If you 5600 // specify launchTemplate, then don't specify remoteAccess, or the node group 5601 // deployment will fail. For more information about using launch templates with 5602 // Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5603 // in the Amazon EKS User Guide. 5604 RemoteAccess *RemoteAccessConfig `locationName:"remoteAccess" type:"structure"` 5605 5606 // The scaling configuration details for the Auto Scaling group that is created 5607 // for your node group. 5608 ScalingConfig *NodegroupScalingConfig `locationName:"scalingConfig" type:"structure"` 5609 5610 // The subnets to use for the Auto Scaling group that is created for your node 5611 // group. If you specify launchTemplate, then don't specify SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html) 5612 // in your launch template, or the node group deployment will fail. For more 5613 // information about using launch templates with Amazon EKS, see Launch template 5614 // support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5615 // in the Amazon EKS User Guide. 5616 // 5617 // Subnets is a required field 5618 Subnets []*string `locationName:"subnets" type:"list" required:"true"` 5619 5620 // The metadata to apply to the node group to assist with categorization and 5621 // organization. Each tag consists of a key and an optional value, both of which 5622 // you define. Node group tags do not propagate to any other resources associated 5623 // with the node group, such as the Amazon EC2 instances or subnets. 5624 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 5625 5626 // The Kubernetes taints to be applied to the nodes in the node group. 5627 Taints []*Taint `locationName:"taints" type:"list"` 5628 5629 // The node group update configuration. 5630 UpdateConfig *NodegroupUpdateConfig `locationName:"updateConfig" type:"structure"` 5631 5632 // The Kubernetes version to use for your managed nodes. By default, the Kubernetes 5633 // version of the cluster is used, and this is the only accepted specified value. 5634 // If you specify launchTemplate, and your launch template uses a custom AMI, 5635 // then don't specify version, or the node group deployment will fail. For more 5636 // information about using launch templates with Amazon EKS, see Launch template 5637 // support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 5638 // in the Amazon EKS User Guide. 5639 Version *string `locationName:"version" type:"string"` 5640 } 5641 5642 // String returns the string representation. 5643 // 5644 // API parameter values that are decorated as "sensitive" in the API will not 5645 // be included in the string output. The member name will be present, but the 5646 // value will be replaced with "sensitive". 5647 func (s CreateNodegroupInput) String() string { 5648 return awsutil.Prettify(s) 5649 } 5650 5651 // GoString returns the string representation. 5652 // 5653 // API parameter values that are decorated as "sensitive" in the API will not 5654 // be included in the string output. The member name will be present, but the 5655 // value will be replaced with "sensitive". 5656 func (s CreateNodegroupInput) GoString() string { 5657 return s.String() 5658 } 5659 5660 // Validate inspects the fields of the type to determine if they are valid. 5661 func (s *CreateNodegroupInput) Validate() error { 5662 invalidParams := request.ErrInvalidParams{Context: "CreateNodegroupInput"} 5663 if s.ClusterName == nil { 5664 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 5665 } 5666 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 5667 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 5668 } 5669 if s.NodeRole == nil { 5670 invalidParams.Add(request.NewErrParamRequired("NodeRole")) 5671 } 5672 if s.NodegroupName == nil { 5673 invalidParams.Add(request.NewErrParamRequired("NodegroupName")) 5674 } 5675 if s.Subnets == nil { 5676 invalidParams.Add(request.NewErrParamRequired("Subnets")) 5677 } 5678 if s.Tags != nil && len(s.Tags) < 1 { 5679 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 5680 } 5681 if s.ScalingConfig != nil { 5682 if err := s.ScalingConfig.Validate(); err != nil { 5683 invalidParams.AddNested("ScalingConfig", err.(request.ErrInvalidParams)) 5684 } 5685 } 5686 if s.Taints != nil { 5687 for i, v := range s.Taints { 5688 if v == nil { 5689 continue 5690 } 5691 if err := v.Validate(); err != nil { 5692 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Taints", i), err.(request.ErrInvalidParams)) 5693 } 5694 } 5695 } 5696 if s.UpdateConfig != nil { 5697 if err := s.UpdateConfig.Validate(); err != nil { 5698 invalidParams.AddNested("UpdateConfig", err.(request.ErrInvalidParams)) 5699 } 5700 } 5701 5702 if invalidParams.Len() > 0 { 5703 return invalidParams 5704 } 5705 return nil 5706 } 5707 5708 // SetAmiType sets the AmiType field's value. 5709 func (s *CreateNodegroupInput) SetAmiType(v string) *CreateNodegroupInput { 5710 s.AmiType = &v 5711 return s 5712 } 5713 5714 // SetCapacityType sets the CapacityType field's value. 5715 func (s *CreateNodegroupInput) SetCapacityType(v string) *CreateNodegroupInput { 5716 s.CapacityType = &v 5717 return s 5718 } 5719 5720 // SetClientRequestToken sets the ClientRequestToken field's value. 5721 func (s *CreateNodegroupInput) SetClientRequestToken(v string) *CreateNodegroupInput { 5722 s.ClientRequestToken = &v 5723 return s 5724 } 5725 5726 // SetClusterName sets the ClusterName field's value. 5727 func (s *CreateNodegroupInput) SetClusterName(v string) *CreateNodegroupInput { 5728 s.ClusterName = &v 5729 return s 5730 } 5731 5732 // SetDiskSize sets the DiskSize field's value. 5733 func (s *CreateNodegroupInput) SetDiskSize(v int64) *CreateNodegroupInput { 5734 s.DiskSize = &v 5735 return s 5736 } 5737 5738 // SetInstanceTypes sets the InstanceTypes field's value. 5739 func (s *CreateNodegroupInput) SetInstanceTypes(v []*string) *CreateNodegroupInput { 5740 s.InstanceTypes = v 5741 return s 5742 } 5743 5744 // SetLabels sets the Labels field's value. 5745 func (s *CreateNodegroupInput) SetLabels(v map[string]*string) *CreateNodegroupInput { 5746 s.Labels = v 5747 return s 5748 } 5749 5750 // SetLaunchTemplate sets the LaunchTemplate field's value. 5751 func (s *CreateNodegroupInput) SetLaunchTemplate(v *LaunchTemplateSpecification) *CreateNodegroupInput { 5752 s.LaunchTemplate = v 5753 return s 5754 } 5755 5756 // SetNodeRole sets the NodeRole field's value. 5757 func (s *CreateNodegroupInput) SetNodeRole(v string) *CreateNodegroupInput { 5758 s.NodeRole = &v 5759 return s 5760 } 5761 5762 // SetNodegroupName sets the NodegroupName field's value. 5763 func (s *CreateNodegroupInput) SetNodegroupName(v string) *CreateNodegroupInput { 5764 s.NodegroupName = &v 5765 return s 5766 } 5767 5768 // SetReleaseVersion sets the ReleaseVersion field's value. 5769 func (s *CreateNodegroupInput) SetReleaseVersion(v string) *CreateNodegroupInput { 5770 s.ReleaseVersion = &v 5771 return s 5772 } 5773 5774 // SetRemoteAccess sets the RemoteAccess field's value. 5775 func (s *CreateNodegroupInput) SetRemoteAccess(v *RemoteAccessConfig) *CreateNodegroupInput { 5776 s.RemoteAccess = v 5777 return s 5778 } 5779 5780 // SetScalingConfig sets the ScalingConfig field's value. 5781 func (s *CreateNodegroupInput) SetScalingConfig(v *NodegroupScalingConfig) *CreateNodegroupInput { 5782 s.ScalingConfig = v 5783 return s 5784 } 5785 5786 // SetSubnets sets the Subnets field's value. 5787 func (s *CreateNodegroupInput) SetSubnets(v []*string) *CreateNodegroupInput { 5788 s.Subnets = v 5789 return s 5790 } 5791 5792 // SetTags sets the Tags field's value. 5793 func (s *CreateNodegroupInput) SetTags(v map[string]*string) *CreateNodegroupInput { 5794 s.Tags = v 5795 return s 5796 } 5797 5798 // SetTaints sets the Taints field's value. 5799 func (s *CreateNodegroupInput) SetTaints(v []*Taint) *CreateNodegroupInput { 5800 s.Taints = v 5801 return s 5802 } 5803 5804 // SetUpdateConfig sets the UpdateConfig field's value. 5805 func (s *CreateNodegroupInput) SetUpdateConfig(v *NodegroupUpdateConfig) *CreateNodegroupInput { 5806 s.UpdateConfig = v 5807 return s 5808 } 5809 5810 // SetVersion sets the Version field's value. 5811 func (s *CreateNodegroupInput) SetVersion(v string) *CreateNodegroupInput { 5812 s.Version = &v 5813 return s 5814 } 5815 5816 type CreateNodegroupOutput struct { 5817 _ struct{} `type:"structure"` 5818 5819 // The full description of your new node group. 5820 Nodegroup *Nodegroup `locationName:"nodegroup" type:"structure"` 5821 } 5822 5823 // String returns the string representation. 5824 // 5825 // API parameter values that are decorated as "sensitive" in the API will not 5826 // be included in the string output. The member name will be present, but the 5827 // value will be replaced with "sensitive". 5828 func (s CreateNodegroupOutput) String() string { 5829 return awsutil.Prettify(s) 5830 } 5831 5832 // GoString returns the string representation. 5833 // 5834 // API parameter values that are decorated as "sensitive" in the API will not 5835 // be included in the string output. The member name will be present, but the 5836 // value will be replaced with "sensitive". 5837 func (s CreateNodegroupOutput) GoString() string { 5838 return s.String() 5839 } 5840 5841 // SetNodegroup sets the Nodegroup field's value. 5842 func (s *CreateNodegroupOutput) SetNodegroup(v *Nodegroup) *CreateNodegroupOutput { 5843 s.Nodegroup = v 5844 return s 5845 } 5846 5847 type DeleteAddonInput struct { 5848 _ struct{} `type:"structure" nopayload:"true"` 5849 5850 // The name of the add-on. The name must match one of the names returned by 5851 // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). 5852 // 5853 // AddonName is a required field 5854 AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` 5855 5856 // The name of the cluster to delete the add-on from. 5857 // 5858 // ClusterName is a required field 5859 ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5860 5861 // Specifying this option preserves the add-on software on your cluster but 5862 // Amazon EKS stops managing any settings for the add-on. If an IAM account 5863 // is associated with the add-on, it is not removed. 5864 Preserve *bool `location:"querystring" locationName:"preserve" type:"boolean"` 5865 } 5866 5867 // String returns the string representation. 5868 // 5869 // API parameter values that are decorated as "sensitive" in the API will not 5870 // be included in the string output. The member name will be present, but the 5871 // value will be replaced with "sensitive". 5872 func (s DeleteAddonInput) String() string { 5873 return awsutil.Prettify(s) 5874 } 5875 5876 // GoString returns the string representation. 5877 // 5878 // API parameter values that are decorated as "sensitive" in the API will not 5879 // be included in the string output. The member name will be present, but the 5880 // value will be replaced with "sensitive". 5881 func (s DeleteAddonInput) GoString() string { 5882 return s.String() 5883 } 5884 5885 // Validate inspects the fields of the type to determine if they are valid. 5886 func (s *DeleteAddonInput) Validate() error { 5887 invalidParams := request.ErrInvalidParams{Context: "DeleteAddonInput"} 5888 if s.AddonName == nil { 5889 invalidParams.Add(request.NewErrParamRequired("AddonName")) 5890 } 5891 if s.AddonName != nil && len(*s.AddonName) < 1 { 5892 invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) 5893 } 5894 if s.ClusterName == nil { 5895 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 5896 } 5897 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 5898 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 5899 } 5900 5901 if invalidParams.Len() > 0 { 5902 return invalidParams 5903 } 5904 return nil 5905 } 5906 5907 // SetAddonName sets the AddonName field's value. 5908 func (s *DeleteAddonInput) SetAddonName(v string) *DeleteAddonInput { 5909 s.AddonName = &v 5910 return s 5911 } 5912 5913 // SetClusterName sets the ClusterName field's value. 5914 func (s *DeleteAddonInput) SetClusterName(v string) *DeleteAddonInput { 5915 s.ClusterName = &v 5916 return s 5917 } 5918 5919 // SetPreserve sets the Preserve field's value. 5920 func (s *DeleteAddonInput) SetPreserve(v bool) *DeleteAddonInput { 5921 s.Preserve = &v 5922 return s 5923 } 5924 5925 type DeleteAddonOutput struct { 5926 _ struct{} `type:"structure"` 5927 5928 // An Amazon EKS add-on. 5929 Addon *Addon `locationName:"addon" type:"structure"` 5930 } 5931 5932 // String returns the string representation. 5933 // 5934 // API parameter values that are decorated as "sensitive" in the API will not 5935 // be included in the string output. The member name will be present, but the 5936 // value will be replaced with "sensitive". 5937 func (s DeleteAddonOutput) String() string { 5938 return awsutil.Prettify(s) 5939 } 5940 5941 // GoString returns the string representation. 5942 // 5943 // API parameter values that are decorated as "sensitive" in the API will not 5944 // be included in the string output. The member name will be present, but the 5945 // value will be replaced with "sensitive". 5946 func (s DeleteAddonOutput) GoString() string { 5947 return s.String() 5948 } 5949 5950 // SetAddon sets the Addon field's value. 5951 func (s *DeleteAddonOutput) SetAddon(v *Addon) *DeleteAddonOutput { 5952 s.Addon = v 5953 return s 5954 } 5955 5956 type DeleteClusterInput struct { 5957 _ struct{} `type:"structure" nopayload:"true"` 5958 5959 // The name of the cluster to delete. 5960 // 5961 // Name is a required field 5962 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 5963 } 5964 5965 // String returns the string representation. 5966 // 5967 // API parameter values that are decorated as "sensitive" in the API will not 5968 // be included in the string output. The member name will be present, but the 5969 // value will be replaced with "sensitive". 5970 func (s DeleteClusterInput) String() string { 5971 return awsutil.Prettify(s) 5972 } 5973 5974 // GoString returns the string representation. 5975 // 5976 // API parameter values that are decorated as "sensitive" in the API will not 5977 // be included in the string output. The member name will be present, but the 5978 // value will be replaced with "sensitive". 5979 func (s DeleteClusterInput) GoString() string { 5980 return s.String() 5981 } 5982 5983 // Validate inspects the fields of the type to determine if they are valid. 5984 func (s *DeleteClusterInput) Validate() error { 5985 invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"} 5986 if s.Name == nil { 5987 invalidParams.Add(request.NewErrParamRequired("Name")) 5988 } 5989 if s.Name != nil && len(*s.Name) < 1 { 5990 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5991 } 5992 5993 if invalidParams.Len() > 0 { 5994 return invalidParams 5995 } 5996 return nil 5997 } 5998 5999 // SetName sets the Name field's value. 6000 func (s *DeleteClusterInput) SetName(v string) *DeleteClusterInput { 6001 s.Name = &v 6002 return s 6003 } 6004 6005 type DeleteClusterOutput struct { 6006 _ struct{} `type:"structure"` 6007 6008 // The full description of the cluster to delete. 6009 Cluster *Cluster `locationName:"cluster" type:"structure"` 6010 } 6011 6012 // String returns the string representation. 6013 // 6014 // API parameter values that are decorated as "sensitive" in the API will not 6015 // be included in the string output. The member name will be present, but the 6016 // value will be replaced with "sensitive". 6017 func (s DeleteClusterOutput) String() string { 6018 return awsutil.Prettify(s) 6019 } 6020 6021 // GoString returns the string representation. 6022 // 6023 // API parameter values that are decorated as "sensitive" in the API will not 6024 // be included in the string output. The member name will be present, but the 6025 // value will be replaced with "sensitive". 6026 func (s DeleteClusterOutput) GoString() string { 6027 return s.String() 6028 } 6029 6030 // SetCluster sets the Cluster field's value. 6031 func (s *DeleteClusterOutput) SetCluster(v *Cluster) *DeleteClusterOutput { 6032 s.Cluster = v 6033 return s 6034 } 6035 6036 type DeleteFargateProfileInput struct { 6037 _ struct{} `type:"structure" nopayload:"true"` 6038 6039 // The name of the Amazon EKS cluster associated with the Fargate profile to 6040 // delete. 6041 // 6042 // ClusterName is a required field 6043 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 6044 6045 // The name of the Fargate profile to delete. 6046 // 6047 // FargateProfileName is a required field 6048 FargateProfileName *string `location:"uri" locationName:"fargateProfileName" type:"string" required:"true"` 6049 } 6050 6051 // String returns the string representation. 6052 // 6053 // API parameter values that are decorated as "sensitive" in the API will not 6054 // be included in the string output. The member name will be present, but the 6055 // value will be replaced with "sensitive". 6056 func (s DeleteFargateProfileInput) String() string { 6057 return awsutil.Prettify(s) 6058 } 6059 6060 // GoString returns the string representation. 6061 // 6062 // API parameter values that are decorated as "sensitive" in the API will not 6063 // be included in the string output. The member name will be present, but the 6064 // value will be replaced with "sensitive". 6065 func (s DeleteFargateProfileInput) GoString() string { 6066 return s.String() 6067 } 6068 6069 // Validate inspects the fields of the type to determine if they are valid. 6070 func (s *DeleteFargateProfileInput) Validate() error { 6071 invalidParams := request.ErrInvalidParams{Context: "DeleteFargateProfileInput"} 6072 if s.ClusterName == nil { 6073 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6074 } 6075 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6076 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6077 } 6078 if s.FargateProfileName == nil { 6079 invalidParams.Add(request.NewErrParamRequired("FargateProfileName")) 6080 } 6081 if s.FargateProfileName != nil && len(*s.FargateProfileName) < 1 { 6082 invalidParams.Add(request.NewErrParamMinLen("FargateProfileName", 1)) 6083 } 6084 6085 if invalidParams.Len() > 0 { 6086 return invalidParams 6087 } 6088 return nil 6089 } 6090 6091 // SetClusterName sets the ClusterName field's value. 6092 func (s *DeleteFargateProfileInput) SetClusterName(v string) *DeleteFargateProfileInput { 6093 s.ClusterName = &v 6094 return s 6095 } 6096 6097 // SetFargateProfileName sets the FargateProfileName field's value. 6098 func (s *DeleteFargateProfileInput) SetFargateProfileName(v string) *DeleteFargateProfileInput { 6099 s.FargateProfileName = &v 6100 return s 6101 } 6102 6103 type DeleteFargateProfileOutput struct { 6104 _ struct{} `type:"structure"` 6105 6106 // The deleted Fargate profile. 6107 FargateProfile *FargateProfile `locationName:"fargateProfile" type:"structure"` 6108 } 6109 6110 // String returns the string representation. 6111 // 6112 // API parameter values that are decorated as "sensitive" in the API will not 6113 // be included in the string output. The member name will be present, but the 6114 // value will be replaced with "sensitive". 6115 func (s DeleteFargateProfileOutput) String() string { 6116 return awsutil.Prettify(s) 6117 } 6118 6119 // GoString returns the string representation. 6120 // 6121 // API parameter values that are decorated as "sensitive" in the API will not 6122 // be included in the string output. The member name will be present, but the 6123 // value will be replaced with "sensitive". 6124 func (s DeleteFargateProfileOutput) GoString() string { 6125 return s.String() 6126 } 6127 6128 // SetFargateProfile sets the FargateProfile field's value. 6129 func (s *DeleteFargateProfileOutput) SetFargateProfile(v *FargateProfile) *DeleteFargateProfileOutput { 6130 s.FargateProfile = v 6131 return s 6132 } 6133 6134 type DeleteNodegroupInput struct { 6135 _ struct{} `type:"structure" nopayload:"true"` 6136 6137 // The name of the Amazon EKS cluster that is associated with your node group. 6138 // 6139 // ClusterName is a required field 6140 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 6141 6142 // The name of the node group to delete. 6143 // 6144 // NodegroupName is a required field 6145 NodegroupName *string `location:"uri" locationName:"nodegroupName" type:"string" required:"true"` 6146 } 6147 6148 // String returns the string representation. 6149 // 6150 // API parameter values that are decorated as "sensitive" in the API will not 6151 // be included in the string output. The member name will be present, but the 6152 // value will be replaced with "sensitive". 6153 func (s DeleteNodegroupInput) String() string { 6154 return awsutil.Prettify(s) 6155 } 6156 6157 // GoString returns the string representation. 6158 // 6159 // API parameter values that are decorated as "sensitive" in the API will not 6160 // be included in the string output. The member name will be present, but the 6161 // value will be replaced with "sensitive". 6162 func (s DeleteNodegroupInput) GoString() string { 6163 return s.String() 6164 } 6165 6166 // Validate inspects the fields of the type to determine if they are valid. 6167 func (s *DeleteNodegroupInput) Validate() error { 6168 invalidParams := request.ErrInvalidParams{Context: "DeleteNodegroupInput"} 6169 if s.ClusterName == nil { 6170 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6171 } 6172 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6173 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6174 } 6175 if s.NodegroupName == nil { 6176 invalidParams.Add(request.NewErrParamRequired("NodegroupName")) 6177 } 6178 if s.NodegroupName != nil && len(*s.NodegroupName) < 1 { 6179 invalidParams.Add(request.NewErrParamMinLen("NodegroupName", 1)) 6180 } 6181 6182 if invalidParams.Len() > 0 { 6183 return invalidParams 6184 } 6185 return nil 6186 } 6187 6188 // SetClusterName sets the ClusterName field's value. 6189 func (s *DeleteNodegroupInput) SetClusterName(v string) *DeleteNodegroupInput { 6190 s.ClusterName = &v 6191 return s 6192 } 6193 6194 // SetNodegroupName sets the NodegroupName field's value. 6195 func (s *DeleteNodegroupInput) SetNodegroupName(v string) *DeleteNodegroupInput { 6196 s.NodegroupName = &v 6197 return s 6198 } 6199 6200 type DeleteNodegroupOutput struct { 6201 _ struct{} `type:"structure"` 6202 6203 // The full description of your deleted node group. 6204 Nodegroup *Nodegroup `locationName:"nodegroup" type:"structure"` 6205 } 6206 6207 // String returns the string representation. 6208 // 6209 // API parameter values that are decorated as "sensitive" in the API will not 6210 // be included in the string output. The member name will be present, but the 6211 // value will be replaced with "sensitive". 6212 func (s DeleteNodegroupOutput) String() string { 6213 return awsutil.Prettify(s) 6214 } 6215 6216 // GoString returns the string representation. 6217 // 6218 // API parameter values that are decorated as "sensitive" in the API will not 6219 // be included in the string output. The member name will be present, but the 6220 // value will be replaced with "sensitive". 6221 func (s DeleteNodegroupOutput) GoString() string { 6222 return s.String() 6223 } 6224 6225 // SetNodegroup sets the Nodegroup field's value. 6226 func (s *DeleteNodegroupOutput) SetNodegroup(v *Nodegroup) *DeleteNodegroupOutput { 6227 s.Nodegroup = v 6228 return s 6229 } 6230 6231 type DeregisterClusterInput struct { 6232 _ struct{} `type:"structure" nopayload:"true"` 6233 6234 // The name of the connected cluster to deregister. 6235 // 6236 // Name is a required field 6237 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6238 } 6239 6240 // String returns the string representation. 6241 // 6242 // API parameter values that are decorated as "sensitive" in the API will not 6243 // be included in the string output. The member name will be present, but the 6244 // value will be replaced with "sensitive". 6245 func (s DeregisterClusterInput) String() string { 6246 return awsutil.Prettify(s) 6247 } 6248 6249 // GoString returns the string representation. 6250 // 6251 // API parameter values that are decorated as "sensitive" in the API will not 6252 // be included in the string output. The member name will be present, but the 6253 // value will be replaced with "sensitive". 6254 func (s DeregisterClusterInput) GoString() string { 6255 return s.String() 6256 } 6257 6258 // Validate inspects the fields of the type to determine if they are valid. 6259 func (s *DeregisterClusterInput) Validate() error { 6260 invalidParams := request.ErrInvalidParams{Context: "DeregisterClusterInput"} 6261 if s.Name == nil { 6262 invalidParams.Add(request.NewErrParamRequired("Name")) 6263 } 6264 if s.Name != nil && len(*s.Name) < 1 { 6265 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6266 } 6267 6268 if invalidParams.Len() > 0 { 6269 return invalidParams 6270 } 6271 return nil 6272 } 6273 6274 // SetName sets the Name field's value. 6275 func (s *DeregisterClusterInput) SetName(v string) *DeregisterClusterInput { 6276 s.Name = &v 6277 return s 6278 } 6279 6280 type DeregisterClusterOutput struct { 6281 _ struct{} `type:"structure"` 6282 6283 // An object representing an Amazon EKS cluster. 6284 Cluster *Cluster `locationName:"cluster" type:"structure"` 6285 } 6286 6287 // String returns the string representation. 6288 // 6289 // API parameter values that are decorated as "sensitive" in the API will not 6290 // be included in the string output. The member name will be present, but the 6291 // value will be replaced with "sensitive". 6292 func (s DeregisterClusterOutput) String() string { 6293 return awsutil.Prettify(s) 6294 } 6295 6296 // GoString returns the string representation. 6297 // 6298 // API parameter values that are decorated as "sensitive" in the API will not 6299 // be included in the string output. The member name will be present, but the 6300 // value will be replaced with "sensitive". 6301 func (s DeregisterClusterOutput) GoString() string { 6302 return s.String() 6303 } 6304 6305 // SetCluster sets the Cluster field's value. 6306 func (s *DeregisterClusterOutput) SetCluster(v *Cluster) *DeregisterClusterOutput { 6307 s.Cluster = v 6308 return s 6309 } 6310 6311 type DescribeAddonInput struct { 6312 _ struct{} `type:"structure" nopayload:"true"` 6313 6314 // The name of the add-on. The name must match one of the names returned by 6315 // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). 6316 // 6317 // AddonName is a required field 6318 AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` 6319 6320 // The name of the cluster. 6321 // 6322 // ClusterName is a required field 6323 ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6324 } 6325 6326 // String returns the string representation. 6327 // 6328 // API parameter values that are decorated as "sensitive" in the API will not 6329 // be included in the string output. The member name will be present, but the 6330 // value will be replaced with "sensitive". 6331 func (s DescribeAddonInput) String() string { 6332 return awsutil.Prettify(s) 6333 } 6334 6335 // GoString returns the string representation. 6336 // 6337 // API parameter values that are decorated as "sensitive" in the API will not 6338 // be included in the string output. The member name will be present, but the 6339 // value will be replaced with "sensitive". 6340 func (s DescribeAddonInput) GoString() string { 6341 return s.String() 6342 } 6343 6344 // Validate inspects the fields of the type to determine if they are valid. 6345 func (s *DescribeAddonInput) Validate() error { 6346 invalidParams := request.ErrInvalidParams{Context: "DescribeAddonInput"} 6347 if s.AddonName == nil { 6348 invalidParams.Add(request.NewErrParamRequired("AddonName")) 6349 } 6350 if s.AddonName != nil && len(*s.AddonName) < 1 { 6351 invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) 6352 } 6353 if s.ClusterName == nil { 6354 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6355 } 6356 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6357 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6358 } 6359 6360 if invalidParams.Len() > 0 { 6361 return invalidParams 6362 } 6363 return nil 6364 } 6365 6366 // SetAddonName sets the AddonName field's value. 6367 func (s *DescribeAddonInput) SetAddonName(v string) *DescribeAddonInput { 6368 s.AddonName = &v 6369 return s 6370 } 6371 6372 // SetClusterName sets the ClusterName field's value. 6373 func (s *DescribeAddonInput) SetClusterName(v string) *DescribeAddonInput { 6374 s.ClusterName = &v 6375 return s 6376 } 6377 6378 type DescribeAddonOutput struct { 6379 _ struct{} `type:"structure"` 6380 6381 // An Amazon EKS add-on. 6382 Addon *Addon `locationName:"addon" type:"structure"` 6383 } 6384 6385 // String returns the string representation. 6386 // 6387 // API parameter values that are decorated as "sensitive" in the API will not 6388 // be included in the string output. The member name will be present, but the 6389 // value will be replaced with "sensitive". 6390 func (s DescribeAddonOutput) String() string { 6391 return awsutil.Prettify(s) 6392 } 6393 6394 // GoString returns the string representation. 6395 // 6396 // API parameter values that are decorated as "sensitive" in the API will not 6397 // be included in the string output. The member name will be present, but the 6398 // value will be replaced with "sensitive". 6399 func (s DescribeAddonOutput) GoString() string { 6400 return s.String() 6401 } 6402 6403 // SetAddon sets the Addon field's value. 6404 func (s *DescribeAddonOutput) SetAddon(v *Addon) *DescribeAddonOutput { 6405 s.Addon = v 6406 return s 6407 } 6408 6409 type DescribeAddonVersionsInput struct { 6410 _ struct{} `type:"structure" nopayload:"true"` 6411 6412 // The name of the add-on. The name must match one of the names returned by 6413 // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). 6414 AddonName *string `location:"querystring" locationName:"addonName" type:"string"` 6415 6416 // The Kubernetes versions that the add-on can be used with. 6417 KubernetesVersion *string `location:"querystring" locationName:"kubernetesVersion" type:"string"` 6418 6419 // The maximum number of results to return. 6420 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 6421 6422 // The nextToken value returned from a previous paginated DescribeAddonVersionsRequest 6423 // where maxResults was used and the results exceeded the value of that parameter. 6424 // Pagination continues from the end of the previous results that returned the 6425 // nextToken value. 6426 // 6427 // This token should be treated as an opaque identifier that is used only to 6428 // retrieve the next items in a list and not for other programmatic purposes. 6429 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6430 } 6431 6432 // String returns the string representation. 6433 // 6434 // API parameter values that are decorated as "sensitive" in the API will not 6435 // be included in the string output. The member name will be present, but the 6436 // value will be replaced with "sensitive". 6437 func (s DescribeAddonVersionsInput) String() string { 6438 return awsutil.Prettify(s) 6439 } 6440 6441 // GoString returns the string representation. 6442 // 6443 // API parameter values that are decorated as "sensitive" in the API will not 6444 // be included in the string output. The member name will be present, but the 6445 // value will be replaced with "sensitive". 6446 func (s DescribeAddonVersionsInput) GoString() string { 6447 return s.String() 6448 } 6449 6450 // Validate inspects the fields of the type to determine if they are valid. 6451 func (s *DescribeAddonVersionsInput) Validate() error { 6452 invalidParams := request.ErrInvalidParams{Context: "DescribeAddonVersionsInput"} 6453 if s.MaxResults != nil && *s.MaxResults < 1 { 6454 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 6455 } 6456 6457 if invalidParams.Len() > 0 { 6458 return invalidParams 6459 } 6460 return nil 6461 } 6462 6463 // SetAddonName sets the AddonName field's value. 6464 func (s *DescribeAddonVersionsInput) SetAddonName(v string) *DescribeAddonVersionsInput { 6465 s.AddonName = &v 6466 return s 6467 } 6468 6469 // SetKubernetesVersion sets the KubernetesVersion field's value. 6470 func (s *DescribeAddonVersionsInput) SetKubernetesVersion(v string) *DescribeAddonVersionsInput { 6471 s.KubernetesVersion = &v 6472 return s 6473 } 6474 6475 // SetMaxResults sets the MaxResults field's value. 6476 func (s *DescribeAddonVersionsInput) SetMaxResults(v int64) *DescribeAddonVersionsInput { 6477 s.MaxResults = &v 6478 return s 6479 } 6480 6481 // SetNextToken sets the NextToken field's value. 6482 func (s *DescribeAddonVersionsInput) SetNextToken(v string) *DescribeAddonVersionsInput { 6483 s.NextToken = &v 6484 return s 6485 } 6486 6487 type DescribeAddonVersionsOutput struct { 6488 _ struct{} `type:"structure"` 6489 6490 // The list of available versions with Kubernetes version compatibility. 6491 Addons []*AddonInfo `locationName:"addons" type:"list"` 6492 6493 // The nextToken value returned from a previous paginated DescribeAddonVersionsResponse 6494 // where maxResults was used and the results exceeded the value of that parameter. 6495 // Pagination continues from the end of the previous results that returned the 6496 // nextToken value. 6497 // 6498 // This token should be treated as an opaque identifier that is used only to 6499 // retrieve the next items in a list and not for other programmatic purposes. 6500 NextToken *string `locationName:"nextToken" type:"string"` 6501 } 6502 6503 // String returns the string representation. 6504 // 6505 // API parameter values that are decorated as "sensitive" in the API will not 6506 // be included in the string output. The member name will be present, but the 6507 // value will be replaced with "sensitive". 6508 func (s DescribeAddonVersionsOutput) String() string { 6509 return awsutil.Prettify(s) 6510 } 6511 6512 // GoString returns the string representation. 6513 // 6514 // API parameter values that are decorated as "sensitive" in the API will not 6515 // be included in the string output. The member name will be present, but the 6516 // value will be replaced with "sensitive". 6517 func (s DescribeAddonVersionsOutput) GoString() string { 6518 return s.String() 6519 } 6520 6521 // SetAddons sets the Addons field's value. 6522 func (s *DescribeAddonVersionsOutput) SetAddons(v []*AddonInfo) *DescribeAddonVersionsOutput { 6523 s.Addons = v 6524 return s 6525 } 6526 6527 // SetNextToken sets the NextToken field's value. 6528 func (s *DescribeAddonVersionsOutput) SetNextToken(v string) *DescribeAddonVersionsOutput { 6529 s.NextToken = &v 6530 return s 6531 } 6532 6533 type DescribeClusterInput struct { 6534 _ struct{} `type:"structure" nopayload:"true"` 6535 6536 // The name of the cluster to describe. 6537 // 6538 // Name is a required field 6539 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6540 } 6541 6542 // String returns the string representation. 6543 // 6544 // API parameter values that are decorated as "sensitive" in the API will not 6545 // be included in the string output. The member name will be present, but the 6546 // value will be replaced with "sensitive". 6547 func (s DescribeClusterInput) String() string { 6548 return awsutil.Prettify(s) 6549 } 6550 6551 // GoString returns the string representation. 6552 // 6553 // API parameter values that are decorated as "sensitive" in the API will not 6554 // be included in the string output. The member name will be present, but the 6555 // value will be replaced with "sensitive". 6556 func (s DescribeClusterInput) GoString() string { 6557 return s.String() 6558 } 6559 6560 // Validate inspects the fields of the type to determine if they are valid. 6561 func (s *DescribeClusterInput) Validate() error { 6562 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} 6563 if s.Name == nil { 6564 invalidParams.Add(request.NewErrParamRequired("Name")) 6565 } 6566 if s.Name != nil && len(*s.Name) < 1 { 6567 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6568 } 6569 6570 if invalidParams.Len() > 0 { 6571 return invalidParams 6572 } 6573 return nil 6574 } 6575 6576 // SetName sets the Name field's value. 6577 func (s *DescribeClusterInput) SetName(v string) *DescribeClusterInput { 6578 s.Name = &v 6579 return s 6580 } 6581 6582 type DescribeClusterOutput struct { 6583 _ struct{} `type:"structure"` 6584 6585 // The full description of your specified cluster. 6586 Cluster *Cluster `locationName:"cluster" type:"structure"` 6587 } 6588 6589 // String returns the string representation. 6590 // 6591 // API parameter values that are decorated as "sensitive" in the API will not 6592 // be included in the string output. The member name will be present, but the 6593 // value will be replaced with "sensitive". 6594 func (s DescribeClusterOutput) String() string { 6595 return awsutil.Prettify(s) 6596 } 6597 6598 // GoString returns the string representation. 6599 // 6600 // API parameter values that are decorated as "sensitive" in the API will not 6601 // be included in the string output. The member name will be present, but the 6602 // value will be replaced with "sensitive". 6603 func (s DescribeClusterOutput) GoString() string { 6604 return s.String() 6605 } 6606 6607 // SetCluster sets the Cluster field's value. 6608 func (s *DescribeClusterOutput) SetCluster(v *Cluster) *DescribeClusterOutput { 6609 s.Cluster = v 6610 return s 6611 } 6612 6613 type DescribeFargateProfileInput struct { 6614 _ struct{} `type:"structure" nopayload:"true"` 6615 6616 // The name of the Amazon EKS cluster associated with the Fargate profile. 6617 // 6618 // ClusterName is a required field 6619 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 6620 6621 // The name of the Fargate profile to describe. 6622 // 6623 // FargateProfileName is a required field 6624 FargateProfileName *string `location:"uri" locationName:"fargateProfileName" type:"string" required:"true"` 6625 } 6626 6627 // String returns the string representation. 6628 // 6629 // API parameter values that are decorated as "sensitive" in the API will not 6630 // be included in the string output. The member name will be present, but the 6631 // value will be replaced with "sensitive". 6632 func (s DescribeFargateProfileInput) String() string { 6633 return awsutil.Prettify(s) 6634 } 6635 6636 // GoString returns the string representation. 6637 // 6638 // API parameter values that are decorated as "sensitive" in the API will not 6639 // be included in the string output. The member name will be present, but the 6640 // value will be replaced with "sensitive". 6641 func (s DescribeFargateProfileInput) GoString() string { 6642 return s.String() 6643 } 6644 6645 // Validate inspects the fields of the type to determine if they are valid. 6646 func (s *DescribeFargateProfileInput) Validate() error { 6647 invalidParams := request.ErrInvalidParams{Context: "DescribeFargateProfileInput"} 6648 if s.ClusterName == nil { 6649 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6650 } 6651 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6652 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6653 } 6654 if s.FargateProfileName == nil { 6655 invalidParams.Add(request.NewErrParamRequired("FargateProfileName")) 6656 } 6657 if s.FargateProfileName != nil && len(*s.FargateProfileName) < 1 { 6658 invalidParams.Add(request.NewErrParamMinLen("FargateProfileName", 1)) 6659 } 6660 6661 if invalidParams.Len() > 0 { 6662 return invalidParams 6663 } 6664 return nil 6665 } 6666 6667 // SetClusterName sets the ClusterName field's value. 6668 func (s *DescribeFargateProfileInput) SetClusterName(v string) *DescribeFargateProfileInput { 6669 s.ClusterName = &v 6670 return s 6671 } 6672 6673 // SetFargateProfileName sets the FargateProfileName field's value. 6674 func (s *DescribeFargateProfileInput) SetFargateProfileName(v string) *DescribeFargateProfileInput { 6675 s.FargateProfileName = &v 6676 return s 6677 } 6678 6679 type DescribeFargateProfileOutput struct { 6680 _ struct{} `type:"structure"` 6681 6682 // The full description of your Fargate profile. 6683 FargateProfile *FargateProfile `locationName:"fargateProfile" type:"structure"` 6684 } 6685 6686 // String returns the string representation. 6687 // 6688 // API parameter values that are decorated as "sensitive" in the API will not 6689 // be included in the string output. The member name will be present, but the 6690 // value will be replaced with "sensitive". 6691 func (s DescribeFargateProfileOutput) String() string { 6692 return awsutil.Prettify(s) 6693 } 6694 6695 // GoString returns the string representation. 6696 // 6697 // API parameter values that are decorated as "sensitive" in the API will not 6698 // be included in the string output. The member name will be present, but the 6699 // value will be replaced with "sensitive". 6700 func (s DescribeFargateProfileOutput) GoString() string { 6701 return s.String() 6702 } 6703 6704 // SetFargateProfile sets the FargateProfile field's value. 6705 func (s *DescribeFargateProfileOutput) SetFargateProfile(v *FargateProfile) *DescribeFargateProfileOutput { 6706 s.FargateProfile = v 6707 return s 6708 } 6709 6710 type DescribeIdentityProviderConfigInput struct { 6711 _ struct{} `type:"structure"` 6712 6713 // The cluster name that the identity provider configuration is associated to. 6714 // 6715 // ClusterName is a required field 6716 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 6717 6718 // An object that represents an identity provider configuration. 6719 // 6720 // IdentityProviderConfig is a required field 6721 IdentityProviderConfig *IdentityProviderConfig `locationName:"identityProviderConfig" type:"structure" required:"true"` 6722 } 6723 6724 // String returns the string representation. 6725 // 6726 // API parameter values that are decorated as "sensitive" in the API will not 6727 // be included in the string output. The member name will be present, but the 6728 // value will be replaced with "sensitive". 6729 func (s DescribeIdentityProviderConfigInput) String() string { 6730 return awsutil.Prettify(s) 6731 } 6732 6733 // GoString returns the string representation. 6734 // 6735 // API parameter values that are decorated as "sensitive" in the API will not 6736 // be included in the string output. The member name will be present, but the 6737 // value will be replaced with "sensitive". 6738 func (s DescribeIdentityProviderConfigInput) GoString() string { 6739 return s.String() 6740 } 6741 6742 // Validate inspects the fields of the type to determine if they are valid. 6743 func (s *DescribeIdentityProviderConfigInput) Validate() error { 6744 invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityProviderConfigInput"} 6745 if s.ClusterName == nil { 6746 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6747 } 6748 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6749 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6750 } 6751 if s.IdentityProviderConfig == nil { 6752 invalidParams.Add(request.NewErrParamRequired("IdentityProviderConfig")) 6753 } 6754 if s.IdentityProviderConfig != nil { 6755 if err := s.IdentityProviderConfig.Validate(); err != nil { 6756 invalidParams.AddNested("IdentityProviderConfig", err.(request.ErrInvalidParams)) 6757 } 6758 } 6759 6760 if invalidParams.Len() > 0 { 6761 return invalidParams 6762 } 6763 return nil 6764 } 6765 6766 // SetClusterName sets the ClusterName field's value. 6767 func (s *DescribeIdentityProviderConfigInput) SetClusterName(v string) *DescribeIdentityProviderConfigInput { 6768 s.ClusterName = &v 6769 return s 6770 } 6771 6772 // SetIdentityProviderConfig sets the IdentityProviderConfig field's value. 6773 func (s *DescribeIdentityProviderConfigInput) SetIdentityProviderConfig(v *IdentityProviderConfig) *DescribeIdentityProviderConfigInput { 6774 s.IdentityProviderConfig = v 6775 return s 6776 } 6777 6778 type DescribeIdentityProviderConfigOutput struct { 6779 _ struct{} `type:"structure"` 6780 6781 // The object that represents an OpenID Connect (OIDC) identity provider configuration. 6782 IdentityProviderConfig *IdentityProviderConfigResponse `locationName:"identityProviderConfig" type:"structure"` 6783 } 6784 6785 // String returns the string representation. 6786 // 6787 // API parameter values that are decorated as "sensitive" in the API will not 6788 // be included in the string output. The member name will be present, but the 6789 // value will be replaced with "sensitive". 6790 func (s DescribeIdentityProviderConfigOutput) String() string { 6791 return awsutil.Prettify(s) 6792 } 6793 6794 // GoString returns the string representation. 6795 // 6796 // API parameter values that are decorated as "sensitive" in the API will not 6797 // be included in the string output. The member name will be present, but the 6798 // value will be replaced with "sensitive". 6799 func (s DescribeIdentityProviderConfigOutput) GoString() string { 6800 return s.String() 6801 } 6802 6803 // SetIdentityProviderConfig sets the IdentityProviderConfig field's value. 6804 func (s *DescribeIdentityProviderConfigOutput) SetIdentityProviderConfig(v *IdentityProviderConfigResponse) *DescribeIdentityProviderConfigOutput { 6805 s.IdentityProviderConfig = v 6806 return s 6807 } 6808 6809 type DescribeNodegroupInput struct { 6810 _ struct{} `type:"structure" nopayload:"true"` 6811 6812 // The name of the Amazon EKS cluster associated with the node group. 6813 // 6814 // ClusterName is a required field 6815 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 6816 6817 // The name of the node group to describe. 6818 // 6819 // NodegroupName is a required field 6820 NodegroupName *string `location:"uri" locationName:"nodegroupName" type:"string" required:"true"` 6821 } 6822 6823 // String returns the string representation. 6824 // 6825 // API parameter values that are decorated as "sensitive" in the API will not 6826 // be included in the string output. The member name will be present, but the 6827 // value will be replaced with "sensitive". 6828 func (s DescribeNodegroupInput) String() string { 6829 return awsutil.Prettify(s) 6830 } 6831 6832 // GoString returns the string representation. 6833 // 6834 // API parameter values that are decorated as "sensitive" in the API will not 6835 // be included in the string output. The member name will be present, but the 6836 // value will be replaced with "sensitive". 6837 func (s DescribeNodegroupInput) GoString() string { 6838 return s.String() 6839 } 6840 6841 // Validate inspects the fields of the type to determine if they are valid. 6842 func (s *DescribeNodegroupInput) Validate() error { 6843 invalidParams := request.ErrInvalidParams{Context: "DescribeNodegroupInput"} 6844 if s.ClusterName == nil { 6845 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 6846 } 6847 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 6848 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 6849 } 6850 if s.NodegroupName == nil { 6851 invalidParams.Add(request.NewErrParamRequired("NodegroupName")) 6852 } 6853 if s.NodegroupName != nil && len(*s.NodegroupName) < 1 { 6854 invalidParams.Add(request.NewErrParamMinLen("NodegroupName", 1)) 6855 } 6856 6857 if invalidParams.Len() > 0 { 6858 return invalidParams 6859 } 6860 return nil 6861 } 6862 6863 // SetClusterName sets the ClusterName field's value. 6864 func (s *DescribeNodegroupInput) SetClusterName(v string) *DescribeNodegroupInput { 6865 s.ClusterName = &v 6866 return s 6867 } 6868 6869 // SetNodegroupName sets the NodegroupName field's value. 6870 func (s *DescribeNodegroupInput) SetNodegroupName(v string) *DescribeNodegroupInput { 6871 s.NodegroupName = &v 6872 return s 6873 } 6874 6875 type DescribeNodegroupOutput struct { 6876 _ struct{} `type:"structure"` 6877 6878 // The full description of your node group. 6879 Nodegroup *Nodegroup `locationName:"nodegroup" type:"structure"` 6880 } 6881 6882 // String returns the string representation. 6883 // 6884 // API parameter values that are decorated as "sensitive" in the API will not 6885 // be included in the string output. The member name will be present, but the 6886 // value will be replaced with "sensitive". 6887 func (s DescribeNodegroupOutput) String() string { 6888 return awsutil.Prettify(s) 6889 } 6890 6891 // GoString returns the string representation. 6892 // 6893 // API parameter values that are decorated as "sensitive" in the API will not 6894 // be included in the string output. The member name will be present, but the 6895 // value will be replaced with "sensitive". 6896 func (s DescribeNodegroupOutput) GoString() string { 6897 return s.String() 6898 } 6899 6900 // SetNodegroup sets the Nodegroup field's value. 6901 func (s *DescribeNodegroupOutput) SetNodegroup(v *Nodegroup) *DescribeNodegroupOutput { 6902 s.Nodegroup = v 6903 return s 6904 } 6905 6906 type DescribeUpdateInput struct { 6907 _ struct{} `type:"structure" nopayload:"true"` 6908 6909 // The name of the add-on. The name must match one of the names returned by 6910 // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). 6911 AddonName *string `location:"querystring" locationName:"addonName" type:"string"` 6912 6913 // The name of the Amazon EKS cluster associated with the update. 6914 // 6915 // Name is a required field 6916 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6917 6918 // The name of the Amazon EKS node group associated with the update. 6919 NodegroupName *string `location:"querystring" locationName:"nodegroupName" type:"string"` 6920 6921 // The ID of the update to describe. 6922 // 6923 // UpdateId is a required field 6924 UpdateId *string `location:"uri" locationName:"updateId" type:"string" required:"true"` 6925 } 6926 6927 // String returns the string representation. 6928 // 6929 // API parameter values that are decorated as "sensitive" in the API will not 6930 // be included in the string output. The member name will be present, but the 6931 // value will be replaced with "sensitive". 6932 func (s DescribeUpdateInput) String() string { 6933 return awsutil.Prettify(s) 6934 } 6935 6936 // GoString returns the string representation. 6937 // 6938 // API parameter values that are decorated as "sensitive" in the API will not 6939 // be included in the string output. The member name will be present, but the 6940 // value will be replaced with "sensitive". 6941 func (s DescribeUpdateInput) GoString() string { 6942 return s.String() 6943 } 6944 6945 // Validate inspects the fields of the type to determine if they are valid. 6946 func (s *DescribeUpdateInput) Validate() error { 6947 invalidParams := request.ErrInvalidParams{Context: "DescribeUpdateInput"} 6948 if s.Name == nil { 6949 invalidParams.Add(request.NewErrParamRequired("Name")) 6950 } 6951 if s.Name != nil && len(*s.Name) < 1 { 6952 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6953 } 6954 if s.UpdateId == nil { 6955 invalidParams.Add(request.NewErrParamRequired("UpdateId")) 6956 } 6957 if s.UpdateId != nil && len(*s.UpdateId) < 1 { 6958 invalidParams.Add(request.NewErrParamMinLen("UpdateId", 1)) 6959 } 6960 6961 if invalidParams.Len() > 0 { 6962 return invalidParams 6963 } 6964 return nil 6965 } 6966 6967 // SetAddonName sets the AddonName field's value. 6968 func (s *DescribeUpdateInput) SetAddonName(v string) *DescribeUpdateInput { 6969 s.AddonName = &v 6970 return s 6971 } 6972 6973 // SetName sets the Name field's value. 6974 func (s *DescribeUpdateInput) SetName(v string) *DescribeUpdateInput { 6975 s.Name = &v 6976 return s 6977 } 6978 6979 // SetNodegroupName sets the NodegroupName field's value. 6980 func (s *DescribeUpdateInput) SetNodegroupName(v string) *DescribeUpdateInput { 6981 s.NodegroupName = &v 6982 return s 6983 } 6984 6985 // SetUpdateId sets the UpdateId field's value. 6986 func (s *DescribeUpdateInput) SetUpdateId(v string) *DescribeUpdateInput { 6987 s.UpdateId = &v 6988 return s 6989 } 6990 6991 type DescribeUpdateOutput struct { 6992 _ struct{} `type:"structure"` 6993 6994 // The full description of the specified update. 6995 Update *Update `locationName:"update" type:"structure"` 6996 } 6997 6998 // String returns the string representation. 6999 // 7000 // API parameter values that are decorated as "sensitive" in the API will not 7001 // be included in the string output. The member name will be present, but the 7002 // value will be replaced with "sensitive". 7003 func (s DescribeUpdateOutput) String() string { 7004 return awsutil.Prettify(s) 7005 } 7006 7007 // GoString returns the string representation. 7008 // 7009 // API parameter values that are decorated as "sensitive" in the API will not 7010 // be included in the string output. The member name will be present, but the 7011 // value will be replaced with "sensitive". 7012 func (s DescribeUpdateOutput) GoString() string { 7013 return s.String() 7014 } 7015 7016 // SetUpdate sets the Update field's value. 7017 func (s *DescribeUpdateOutput) SetUpdate(v *Update) *DescribeUpdateOutput { 7018 s.Update = v 7019 return s 7020 } 7021 7022 type DisassociateIdentityProviderConfigInput struct { 7023 _ struct{} `type:"structure"` 7024 7025 // A unique, case-sensitive identifier that you provide to ensure the idempotency 7026 // of the request. 7027 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 7028 7029 // The name of the cluster to disassociate an identity provider from. 7030 // 7031 // ClusterName is a required field 7032 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 7033 7034 // An object that represents an identity provider configuration. 7035 // 7036 // IdentityProviderConfig is a required field 7037 IdentityProviderConfig *IdentityProviderConfig `locationName:"identityProviderConfig" type:"structure" required:"true"` 7038 } 7039 7040 // String returns the string representation. 7041 // 7042 // API parameter values that are decorated as "sensitive" in the API will not 7043 // be included in the string output. The member name will be present, but the 7044 // value will be replaced with "sensitive". 7045 func (s DisassociateIdentityProviderConfigInput) String() string { 7046 return awsutil.Prettify(s) 7047 } 7048 7049 // GoString returns the string representation. 7050 // 7051 // API parameter values that are decorated as "sensitive" in the API will not 7052 // be included in the string output. The member name will be present, but the 7053 // value will be replaced with "sensitive". 7054 func (s DisassociateIdentityProviderConfigInput) GoString() string { 7055 return s.String() 7056 } 7057 7058 // Validate inspects the fields of the type to determine if they are valid. 7059 func (s *DisassociateIdentityProviderConfigInput) Validate() error { 7060 invalidParams := request.ErrInvalidParams{Context: "DisassociateIdentityProviderConfigInput"} 7061 if s.ClusterName == nil { 7062 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 7063 } 7064 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 7065 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 7066 } 7067 if s.IdentityProviderConfig == nil { 7068 invalidParams.Add(request.NewErrParamRequired("IdentityProviderConfig")) 7069 } 7070 if s.IdentityProviderConfig != nil { 7071 if err := s.IdentityProviderConfig.Validate(); err != nil { 7072 invalidParams.AddNested("IdentityProviderConfig", err.(request.ErrInvalidParams)) 7073 } 7074 } 7075 7076 if invalidParams.Len() > 0 { 7077 return invalidParams 7078 } 7079 return nil 7080 } 7081 7082 // SetClientRequestToken sets the ClientRequestToken field's value. 7083 func (s *DisassociateIdentityProviderConfigInput) SetClientRequestToken(v string) *DisassociateIdentityProviderConfigInput { 7084 s.ClientRequestToken = &v 7085 return s 7086 } 7087 7088 // SetClusterName sets the ClusterName field's value. 7089 func (s *DisassociateIdentityProviderConfigInput) SetClusterName(v string) *DisassociateIdentityProviderConfigInput { 7090 s.ClusterName = &v 7091 return s 7092 } 7093 7094 // SetIdentityProviderConfig sets the IdentityProviderConfig field's value. 7095 func (s *DisassociateIdentityProviderConfigInput) SetIdentityProviderConfig(v *IdentityProviderConfig) *DisassociateIdentityProviderConfigInput { 7096 s.IdentityProviderConfig = v 7097 return s 7098 } 7099 7100 type DisassociateIdentityProviderConfigOutput struct { 7101 _ struct{} `type:"structure"` 7102 7103 // An object representing an asynchronous update. 7104 Update *Update `locationName:"update" type:"structure"` 7105 } 7106 7107 // String returns the string representation. 7108 // 7109 // API parameter values that are decorated as "sensitive" in the API will not 7110 // be included in the string output. The member name will be present, but the 7111 // value will be replaced with "sensitive". 7112 func (s DisassociateIdentityProviderConfigOutput) String() string { 7113 return awsutil.Prettify(s) 7114 } 7115 7116 // GoString returns the string representation. 7117 // 7118 // API parameter values that are decorated as "sensitive" in the API will not 7119 // be included in the string output. The member name will be present, but the 7120 // value will be replaced with "sensitive". 7121 func (s DisassociateIdentityProviderConfigOutput) GoString() string { 7122 return s.String() 7123 } 7124 7125 // SetUpdate sets the Update field's value. 7126 func (s *DisassociateIdentityProviderConfigOutput) SetUpdate(v *Update) *DisassociateIdentityProviderConfigOutput { 7127 s.Update = v 7128 return s 7129 } 7130 7131 // The encryption configuration for the cluster. 7132 type EncryptionConfig struct { 7133 _ struct{} `type:"structure"` 7134 7135 // Key Management Service (KMS) key. Either the ARN or the alias can be used. 7136 Provider *Provider `locationName:"provider" type:"structure"` 7137 7138 // Specifies the resources to be encrypted. The only supported value is "secrets". 7139 Resources []*string `locationName:"resources" type:"list"` 7140 } 7141 7142 // String returns the string representation. 7143 // 7144 // API parameter values that are decorated as "sensitive" in the API will not 7145 // be included in the string output. The member name will be present, but the 7146 // value will be replaced with "sensitive". 7147 func (s EncryptionConfig) String() string { 7148 return awsutil.Prettify(s) 7149 } 7150 7151 // GoString returns the string representation. 7152 // 7153 // API parameter values that are decorated as "sensitive" in the API will not 7154 // be included in the string output. The member name will be present, but the 7155 // value will be replaced with "sensitive". 7156 func (s EncryptionConfig) GoString() string { 7157 return s.String() 7158 } 7159 7160 // SetProvider sets the Provider field's value. 7161 func (s *EncryptionConfig) SetProvider(v *Provider) *EncryptionConfig { 7162 s.Provider = v 7163 return s 7164 } 7165 7166 // SetResources sets the Resources field's value. 7167 func (s *EncryptionConfig) SetResources(v []*string) *EncryptionConfig { 7168 s.Resources = v 7169 return s 7170 } 7171 7172 // An object representing an error when an asynchronous operation fails. 7173 type ErrorDetail struct { 7174 _ struct{} `type:"structure"` 7175 7176 // A brief description of the error. 7177 // 7178 // * SubnetNotFound: We couldn't find one of the subnets associated with 7179 // the cluster. 7180 // 7181 // * SecurityGroupNotFound: We couldn't find one of the security groups associated 7182 // with the cluster. 7183 // 7184 // * EniLimitReached: You have reached the elastic network interface limit 7185 // for your account. 7186 // 7187 // * IpNotAvailable: A subnet associated with the cluster doesn't have any 7188 // free IP addresses. 7189 // 7190 // * AccessDenied: You don't have permissions to perform the specified operation. 7191 // 7192 // * OperationNotPermitted: The service role associated with the cluster 7193 // doesn't have the required access permissions for Amazon EKS. 7194 // 7195 // * VpcIdNotFound: We couldn't find the VPC associated with the cluster. 7196 ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"` 7197 7198 // A more complete description of the error. 7199 ErrorMessage *string `locationName:"errorMessage" type:"string"` 7200 7201 // An optional field that contains the resource IDs associated with the error. 7202 ResourceIds []*string `locationName:"resourceIds" type:"list"` 7203 } 7204 7205 // String returns the string representation. 7206 // 7207 // API parameter values that are decorated as "sensitive" in the API will not 7208 // be included in the string output. The member name will be present, but the 7209 // value will be replaced with "sensitive". 7210 func (s ErrorDetail) String() string { 7211 return awsutil.Prettify(s) 7212 } 7213 7214 // GoString returns the string representation. 7215 // 7216 // API parameter values that are decorated as "sensitive" in the API will not 7217 // be included in the string output. The member name will be present, but the 7218 // value will be replaced with "sensitive". 7219 func (s ErrorDetail) GoString() string { 7220 return s.String() 7221 } 7222 7223 // SetErrorCode sets the ErrorCode field's value. 7224 func (s *ErrorDetail) SetErrorCode(v string) *ErrorDetail { 7225 s.ErrorCode = &v 7226 return s 7227 } 7228 7229 // SetErrorMessage sets the ErrorMessage field's value. 7230 func (s *ErrorDetail) SetErrorMessage(v string) *ErrorDetail { 7231 s.ErrorMessage = &v 7232 return s 7233 } 7234 7235 // SetResourceIds sets the ResourceIds field's value. 7236 func (s *ErrorDetail) SetResourceIds(v []*string) *ErrorDetail { 7237 s.ResourceIds = v 7238 return s 7239 } 7240 7241 // An object representing an Fargate profile. 7242 type FargateProfile struct { 7243 _ struct{} `type:"structure"` 7244 7245 // The name of the Amazon EKS cluster that the Fargate profile belongs to. 7246 ClusterName *string `locationName:"clusterName" type:"string"` 7247 7248 // The Unix epoch timestamp in seconds for when the Fargate profile was created. 7249 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` 7250 7251 // The full Amazon Resource Name (ARN) of the Fargate profile. 7252 FargateProfileArn *string `locationName:"fargateProfileArn" type:"string"` 7253 7254 // The name of the Fargate profile. 7255 FargateProfileName *string `locationName:"fargateProfileName" type:"string"` 7256 7257 // The Amazon Resource Name (ARN) of the pod execution role to use for pods 7258 // that match the selectors in the Fargate profile. For more information, see 7259 // Pod Execution Role (https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html) 7260 // in the Amazon EKS User Guide. 7261 PodExecutionRoleArn *string `locationName:"podExecutionRoleArn" type:"string"` 7262 7263 // The selectors to match for pods to use this Fargate profile. 7264 Selectors []*FargateProfileSelector `locationName:"selectors" type:"list"` 7265 7266 // The current status of the Fargate profile. 7267 Status *string `locationName:"status" type:"string" enum:"FargateProfileStatus"` 7268 7269 // The IDs of subnets to launch pods into. 7270 Subnets []*string `locationName:"subnets" type:"list"` 7271 7272 // The metadata applied to the Fargate profile to assist with categorization 7273 // and organization. Each tag consists of a key and an optional value, both 7274 // of which you define. Fargate profile tags do not propagate to any other resources 7275 // associated with the Fargate profile, such as the pods that are scheduled 7276 // with it. 7277 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 7278 } 7279 7280 // String returns the string representation. 7281 // 7282 // API parameter values that are decorated as "sensitive" in the API will not 7283 // be included in the string output. The member name will be present, but the 7284 // value will be replaced with "sensitive". 7285 func (s FargateProfile) String() string { 7286 return awsutil.Prettify(s) 7287 } 7288 7289 // GoString returns the string representation. 7290 // 7291 // API parameter values that are decorated as "sensitive" in the API will not 7292 // be included in the string output. The member name will be present, but the 7293 // value will be replaced with "sensitive". 7294 func (s FargateProfile) GoString() string { 7295 return s.String() 7296 } 7297 7298 // SetClusterName sets the ClusterName field's value. 7299 func (s *FargateProfile) SetClusterName(v string) *FargateProfile { 7300 s.ClusterName = &v 7301 return s 7302 } 7303 7304 // SetCreatedAt sets the CreatedAt field's value. 7305 func (s *FargateProfile) SetCreatedAt(v time.Time) *FargateProfile { 7306 s.CreatedAt = &v 7307 return s 7308 } 7309 7310 // SetFargateProfileArn sets the FargateProfileArn field's value. 7311 func (s *FargateProfile) SetFargateProfileArn(v string) *FargateProfile { 7312 s.FargateProfileArn = &v 7313 return s 7314 } 7315 7316 // SetFargateProfileName sets the FargateProfileName field's value. 7317 func (s *FargateProfile) SetFargateProfileName(v string) *FargateProfile { 7318 s.FargateProfileName = &v 7319 return s 7320 } 7321 7322 // SetPodExecutionRoleArn sets the PodExecutionRoleArn field's value. 7323 func (s *FargateProfile) SetPodExecutionRoleArn(v string) *FargateProfile { 7324 s.PodExecutionRoleArn = &v 7325 return s 7326 } 7327 7328 // SetSelectors sets the Selectors field's value. 7329 func (s *FargateProfile) SetSelectors(v []*FargateProfileSelector) *FargateProfile { 7330 s.Selectors = v 7331 return s 7332 } 7333 7334 // SetStatus sets the Status field's value. 7335 func (s *FargateProfile) SetStatus(v string) *FargateProfile { 7336 s.Status = &v 7337 return s 7338 } 7339 7340 // SetSubnets sets the Subnets field's value. 7341 func (s *FargateProfile) SetSubnets(v []*string) *FargateProfile { 7342 s.Subnets = v 7343 return s 7344 } 7345 7346 // SetTags sets the Tags field's value. 7347 func (s *FargateProfile) SetTags(v map[string]*string) *FargateProfile { 7348 s.Tags = v 7349 return s 7350 } 7351 7352 // An object representing an Fargate profile selector. 7353 type FargateProfileSelector struct { 7354 _ struct{} `type:"structure"` 7355 7356 // The Kubernetes labels that the selector should match. A pod must contain 7357 // all of the labels that are specified in the selector for it to be considered 7358 // a match. 7359 Labels map[string]*string `locationName:"labels" type:"map"` 7360 7361 // The Kubernetes namespace that the selector should match. 7362 Namespace *string `locationName:"namespace" type:"string"` 7363 } 7364 7365 // String returns the string representation. 7366 // 7367 // API parameter values that are decorated as "sensitive" in the API will not 7368 // be included in the string output. The member name will be present, but the 7369 // value will be replaced with "sensitive". 7370 func (s FargateProfileSelector) String() string { 7371 return awsutil.Prettify(s) 7372 } 7373 7374 // GoString returns the string representation. 7375 // 7376 // API parameter values that are decorated as "sensitive" in the API will not 7377 // be included in the string output. The member name will be present, but the 7378 // value will be replaced with "sensitive". 7379 func (s FargateProfileSelector) GoString() string { 7380 return s.String() 7381 } 7382 7383 // SetLabels sets the Labels field's value. 7384 func (s *FargateProfileSelector) SetLabels(v map[string]*string) *FargateProfileSelector { 7385 s.Labels = v 7386 return s 7387 } 7388 7389 // SetNamespace sets the Namespace field's value. 7390 func (s *FargateProfileSelector) SetNamespace(v string) *FargateProfileSelector { 7391 s.Namespace = &v 7392 return s 7393 } 7394 7395 // An object representing an identity provider. 7396 type Identity struct { 7397 _ struct{} `type:"structure"` 7398 7399 // An object representing the OpenID Connect (https://openid.net/connect/) identity 7400 // provider information. 7401 Oidc *OIDC `locationName:"oidc" type:"structure"` 7402 } 7403 7404 // String returns the string representation. 7405 // 7406 // API parameter values that are decorated as "sensitive" in the API will not 7407 // be included in the string output. The member name will be present, but the 7408 // value will be replaced with "sensitive". 7409 func (s Identity) String() string { 7410 return awsutil.Prettify(s) 7411 } 7412 7413 // GoString returns the string representation. 7414 // 7415 // API parameter values that are decorated as "sensitive" in the API will not 7416 // be included in the string output. The member name will be present, but the 7417 // value will be replaced with "sensitive". 7418 func (s Identity) GoString() string { 7419 return s.String() 7420 } 7421 7422 // SetOidc sets the Oidc field's value. 7423 func (s *Identity) SetOidc(v *OIDC) *Identity { 7424 s.Oidc = v 7425 return s 7426 } 7427 7428 // An object representing an identity provider configuration. 7429 type IdentityProviderConfig struct { 7430 _ struct{} `type:"structure"` 7431 7432 // The name of the identity provider configuration. 7433 // 7434 // Name is a required field 7435 Name *string `locationName:"name" type:"string" required:"true"` 7436 7437 // The type of the identity provider configuration. 7438 // 7439 // Type is a required field 7440 Type *string `locationName:"type" type:"string" required:"true"` 7441 } 7442 7443 // String returns the string representation. 7444 // 7445 // API parameter values that are decorated as "sensitive" in the API will not 7446 // be included in the string output. The member name will be present, but the 7447 // value will be replaced with "sensitive". 7448 func (s IdentityProviderConfig) String() string { 7449 return awsutil.Prettify(s) 7450 } 7451 7452 // GoString returns the string representation. 7453 // 7454 // API parameter values that are decorated as "sensitive" in the API will not 7455 // be included in the string output. The member name will be present, but the 7456 // value will be replaced with "sensitive". 7457 func (s IdentityProviderConfig) GoString() string { 7458 return s.String() 7459 } 7460 7461 // Validate inspects the fields of the type to determine if they are valid. 7462 func (s *IdentityProviderConfig) Validate() error { 7463 invalidParams := request.ErrInvalidParams{Context: "IdentityProviderConfig"} 7464 if s.Name == nil { 7465 invalidParams.Add(request.NewErrParamRequired("Name")) 7466 } 7467 if s.Type == nil { 7468 invalidParams.Add(request.NewErrParamRequired("Type")) 7469 } 7470 7471 if invalidParams.Len() > 0 { 7472 return invalidParams 7473 } 7474 return nil 7475 } 7476 7477 // SetName sets the Name field's value. 7478 func (s *IdentityProviderConfig) SetName(v string) *IdentityProviderConfig { 7479 s.Name = &v 7480 return s 7481 } 7482 7483 // SetType sets the Type field's value. 7484 func (s *IdentityProviderConfig) SetType(v string) *IdentityProviderConfig { 7485 s.Type = &v 7486 return s 7487 } 7488 7489 // The full description of your identity configuration. 7490 type IdentityProviderConfigResponse struct { 7491 _ struct{} `type:"structure"` 7492 7493 // An object that represents an OpenID Connect (OIDC) identity provider configuration. 7494 Oidc *OidcIdentityProviderConfig `locationName:"oidc" type:"structure"` 7495 } 7496 7497 // String returns the string representation. 7498 // 7499 // API parameter values that are decorated as "sensitive" in the API will not 7500 // be included in the string output. The member name will be present, but the 7501 // value will be replaced with "sensitive". 7502 func (s IdentityProviderConfigResponse) String() string { 7503 return awsutil.Prettify(s) 7504 } 7505 7506 // GoString returns the string representation. 7507 // 7508 // API parameter values that are decorated as "sensitive" in the API will not 7509 // be included in the string output. The member name will be present, but the 7510 // value will be replaced with "sensitive". 7511 func (s IdentityProviderConfigResponse) GoString() string { 7512 return s.String() 7513 } 7514 7515 // SetOidc sets the Oidc field's value. 7516 func (s *IdentityProviderConfigResponse) SetOidc(v *OidcIdentityProviderConfig) *IdentityProviderConfigResponse { 7517 s.Oidc = v 7518 return s 7519 } 7520 7521 // The specified parameter is invalid. Review the available parameters for the 7522 // API request. 7523 type InvalidParameterException struct { 7524 _ struct{} `type:"structure"` 7525 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7526 7527 AddonName *string `locationName:"addonName" type:"string"` 7528 7529 // The Amazon EKS cluster associated with the exception. 7530 ClusterName *string `locationName:"clusterName" type:"string"` 7531 7532 // The Fargate profile associated with the exception. 7533 FargateProfileName *string `locationName:"fargateProfileName" type:"string"` 7534 7535 Message_ *string `locationName:"message" type:"string"` 7536 7537 // The Amazon EKS managed node group associated with the exception. 7538 NodegroupName *string `locationName:"nodegroupName" type:"string"` 7539 } 7540 7541 // String returns the string representation. 7542 // 7543 // API parameter values that are decorated as "sensitive" in the API will not 7544 // be included in the string output. The member name will be present, but the 7545 // value will be replaced with "sensitive". 7546 func (s InvalidParameterException) String() string { 7547 return awsutil.Prettify(s) 7548 } 7549 7550 // GoString returns the string representation. 7551 // 7552 // API parameter values that are decorated as "sensitive" in the API will not 7553 // be included in the string output. The member name will be present, but the 7554 // value will be replaced with "sensitive". 7555 func (s InvalidParameterException) GoString() string { 7556 return s.String() 7557 } 7558 7559 func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { 7560 return &InvalidParameterException{ 7561 RespMetadata: v, 7562 } 7563 } 7564 7565 // Code returns the exception type name. 7566 func (s *InvalidParameterException) Code() string { 7567 return "InvalidParameterException" 7568 } 7569 7570 // Message returns the exception's message. 7571 func (s *InvalidParameterException) Message() string { 7572 if s.Message_ != nil { 7573 return *s.Message_ 7574 } 7575 return "" 7576 } 7577 7578 // OrigErr always returns nil, satisfies awserr.Error interface. 7579 func (s *InvalidParameterException) OrigErr() error { 7580 return nil 7581 } 7582 7583 func (s *InvalidParameterException) Error() string { 7584 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 7585 } 7586 7587 // Status code returns the HTTP status code for the request's response error. 7588 func (s *InvalidParameterException) StatusCode() int { 7589 return s.RespMetadata.StatusCode 7590 } 7591 7592 // RequestID returns the service's response RequestID for request. 7593 func (s *InvalidParameterException) RequestID() string { 7594 return s.RespMetadata.RequestID 7595 } 7596 7597 // The request is invalid given the state of the cluster. Check the state of 7598 // the cluster and the associated operations. 7599 type InvalidRequestException struct { 7600 _ struct{} `type:"structure"` 7601 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7602 7603 AddonName *string `locationName:"addonName" type:"string"` 7604 7605 // The Amazon EKS cluster associated with the exception. 7606 ClusterName *string `locationName:"clusterName" type:"string"` 7607 7608 Message_ *string `locationName:"message" type:"string"` 7609 7610 // The Amazon EKS managed node group associated with the exception. 7611 NodegroupName *string `locationName:"nodegroupName" type:"string"` 7612 } 7613 7614 // String returns the string representation. 7615 // 7616 // API parameter values that are decorated as "sensitive" in the API will not 7617 // be included in the string output. The member name will be present, but the 7618 // value will be replaced with "sensitive". 7619 func (s InvalidRequestException) String() string { 7620 return awsutil.Prettify(s) 7621 } 7622 7623 // GoString returns the string representation. 7624 // 7625 // API parameter values that are decorated as "sensitive" in the API will not 7626 // be included in the string output. The member name will be present, but the 7627 // value will be replaced with "sensitive". 7628 func (s InvalidRequestException) GoString() string { 7629 return s.String() 7630 } 7631 7632 func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 7633 return &InvalidRequestException{ 7634 RespMetadata: v, 7635 } 7636 } 7637 7638 // Code returns the exception type name. 7639 func (s *InvalidRequestException) Code() string { 7640 return "InvalidRequestException" 7641 } 7642 7643 // Message returns the exception's message. 7644 func (s *InvalidRequestException) Message() string { 7645 if s.Message_ != nil { 7646 return *s.Message_ 7647 } 7648 return "" 7649 } 7650 7651 // OrigErr always returns nil, satisfies awserr.Error interface. 7652 func (s *InvalidRequestException) OrigErr() error { 7653 return nil 7654 } 7655 7656 func (s *InvalidRequestException) Error() string { 7657 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 7658 } 7659 7660 // Status code returns the HTTP status code for the request's response error. 7661 func (s *InvalidRequestException) StatusCode() int { 7662 return s.RespMetadata.StatusCode 7663 } 7664 7665 // RequestID returns the service's response RequestID for request. 7666 func (s *InvalidRequestException) RequestID() string { 7667 return s.RespMetadata.RequestID 7668 } 7669 7670 // An object representing an issue with an Amazon EKS resource. 7671 type Issue struct { 7672 _ struct{} `type:"structure"` 7673 7674 // A brief description of the error. 7675 // 7676 // * AccessDenied: Amazon EKS or one or more of your managed nodes is failing 7677 // to authenticate or authorize with your Kubernetes cluster API server. 7678 // 7679 // * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing failures 7680 // while attempting to launch instances. 7681 // 7682 // * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group associated 7683 // with the managed node group. You may be able to recreate an Auto Scaling 7684 // group with the same settings to recover. 7685 // 7686 // * ClusterUnreachable: Amazon EKS or one or more of your managed nodes 7687 // is unable to to communicate with your Kubernetes cluster API server. This 7688 // can happen if there are network disruptions or if API servers are timing 7689 // out processing requests. 7690 // 7691 // * Ec2LaunchTemplateNotFound: We couldn't find the Amazon EC2 launch template 7692 // for your managed node group. You may be able to recreate a launch template 7693 // with the same settings to recover. 7694 // 7695 // * Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch template version 7696 // for your managed node group does not match the version that Amazon EKS 7697 // created. You may be able to revert to the version that Amazon EKS created 7698 // to recover. 7699 // 7700 // * Ec2SecurityGroupDeletionFailure: We could not delete the remote access 7701 // security group for your managed node group. Remove any dependencies from 7702 // the security group. 7703 // 7704 // * Ec2SecurityGroupNotFound: We couldn't find the cluster security group 7705 // for the cluster. You must recreate your cluster. 7706 // 7707 // * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified 7708 // for a node group do not automatically assign public IP addresses to instances 7709 // launched into it. If you want your instances to be assigned a public IP 7710 // address, then you need to enable the auto-assign public IP address setting 7711 // for the subnet. See Modifying the public IPv4 addressing attribute for 7712 // your subnet (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#subnet-public-ip) 7713 // in the Amazon VPC User Guide. 7714 // 7715 // * IamInstanceProfileNotFound: We couldn't find the IAM instance profile 7716 // for your managed node group. You may be able to recreate an instance profile 7717 // with the same settings to recover. 7718 // 7719 // * IamNodeRoleNotFound: We couldn't find the IAM role for your managed 7720 // node group. You may be able to recreate an IAM role with the same settings 7721 // to recover. 7722 // 7723 // * InstanceLimitExceeded: Your Amazon Web Services account is unable to 7724 // launch any more instances of the specified instance type. You may be able 7725 // to request an Amazon EC2 instance limit increase to recover. 7726 // 7727 // * InsufficientFreeAddresses: One or more of the subnets associated with 7728 // your managed node group does not have enough available IP addresses for 7729 // new nodes. 7730 // 7731 // * InternalFailure: These errors are usually caused by an Amazon EKS server-side 7732 // issue. 7733 // 7734 // * NodeCreationFailure: Your launched instances are unable to register 7735 // with your Amazon EKS cluster. Common causes of this failure are insufficient 7736 // node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html) 7737 // permissions or lack of outbound internet access for the nodes. 7738 Code *string `locationName:"code" type:"string" enum:"NodegroupIssueCode"` 7739 7740 // The error message associated with the issue. 7741 Message *string `locationName:"message" type:"string"` 7742 7743 // The Amazon Web Services resources that are afflicted by this issue. 7744 ResourceIds []*string `locationName:"resourceIds" type:"list"` 7745 } 7746 7747 // String returns the string representation. 7748 // 7749 // API parameter values that are decorated as "sensitive" in the API will not 7750 // be included in the string output. The member name will be present, but the 7751 // value will be replaced with "sensitive". 7752 func (s Issue) String() string { 7753 return awsutil.Prettify(s) 7754 } 7755 7756 // GoString returns the string representation. 7757 // 7758 // API parameter values that are decorated as "sensitive" in the API will not 7759 // be included in the string output. The member name will be present, but the 7760 // value will be replaced with "sensitive". 7761 func (s Issue) GoString() string { 7762 return s.String() 7763 } 7764 7765 // SetCode sets the Code field's value. 7766 func (s *Issue) SetCode(v string) *Issue { 7767 s.Code = &v 7768 return s 7769 } 7770 7771 // SetMessage sets the Message field's value. 7772 func (s *Issue) SetMessage(v string) *Issue { 7773 s.Message = &v 7774 return s 7775 } 7776 7777 // SetResourceIds sets the ResourceIds field's value. 7778 func (s *Issue) SetResourceIds(v []*string) *Issue { 7779 s.ResourceIds = v 7780 return s 7781 } 7782 7783 // The Kubernetes network configuration for the cluster. 7784 type KubernetesNetworkConfigRequest struct { 7785 _ struct{} `type:"structure"` 7786 7787 // The CIDR block to assign Kubernetes service IP addresses from. If you don't 7788 // specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 7789 // or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that 7790 // does not overlap with resources in other networks that are peered or connected 7791 // to your VPC. The block must meet the following requirements: 7792 // 7793 // * Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0.0/12, 7794 // or 192.168.0.0/16. 7795 // 7796 // * Doesn't overlap with any CIDR block assigned to the VPC that you selected 7797 // for VPC. 7798 // 7799 // * Between /24 and /12. 7800 // 7801 // You can only specify a custom CIDR block when you create a cluster and can't 7802 // change this value once the cluster is created. 7803 ServiceIpv4Cidr *string `locationName:"serviceIpv4Cidr" type:"string"` 7804 } 7805 7806 // String returns the string representation. 7807 // 7808 // API parameter values that are decorated as "sensitive" in the API will not 7809 // be included in the string output. The member name will be present, but the 7810 // value will be replaced with "sensitive". 7811 func (s KubernetesNetworkConfigRequest) String() string { 7812 return awsutil.Prettify(s) 7813 } 7814 7815 // GoString returns the string representation. 7816 // 7817 // API parameter values that are decorated as "sensitive" in the API will not 7818 // be included in the string output. The member name will be present, but the 7819 // value will be replaced with "sensitive". 7820 func (s KubernetesNetworkConfigRequest) GoString() string { 7821 return s.String() 7822 } 7823 7824 // SetServiceIpv4Cidr sets the ServiceIpv4Cidr field's value. 7825 func (s *KubernetesNetworkConfigRequest) SetServiceIpv4Cidr(v string) *KubernetesNetworkConfigRequest { 7826 s.ServiceIpv4Cidr = &v 7827 return s 7828 } 7829 7830 // The Kubernetes network configuration for the cluster. 7831 type KubernetesNetworkConfigResponse struct { 7832 _ struct{} `type:"structure"` 7833 7834 // The CIDR block that Kubernetes service IP addresses are assigned from. If 7835 // you didn't specify a CIDR block when you created the cluster, then Kubernetes 7836 // assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. 7837 // If this was specified, then it was specified when the cluster was created 7838 // and it cannot be changed. 7839 ServiceIpv4Cidr *string `locationName:"serviceIpv4Cidr" type:"string"` 7840 } 7841 7842 // String returns the string representation. 7843 // 7844 // API parameter values that are decorated as "sensitive" in the API will not 7845 // be included in the string output. The member name will be present, but the 7846 // value will be replaced with "sensitive". 7847 func (s KubernetesNetworkConfigResponse) String() string { 7848 return awsutil.Prettify(s) 7849 } 7850 7851 // GoString returns the string representation. 7852 // 7853 // API parameter values that are decorated as "sensitive" in the API will not 7854 // be included in the string output. The member name will be present, but the 7855 // value will be replaced with "sensitive". 7856 func (s KubernetesNetworkConfigResponse) GoString() string { 7857 return s.String() 7858 } 7859 7860 // SetServiceIpv4Cidr sets the ServiceIpv4Cidr field's value. 7861 func (s *KubernetesNetworkConfigResponse) SetServiceIpv4Cidr(v string) *KubernetesNetworkConfigResponse { 7862 s.ServiceIpv4Cidr = &v 7863 return s 7864 } 7865 7866 // An object representing a node group launch template specification. The launch 7867 // template cannot include SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html), 7868 // IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html), 7869 // RequestSpotInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html), 7870 // HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html), 7871 // or TerminateInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html), 7872 // or the node group deployment or update will fail. For more information about 7873 // launch templates, see CreateLaunchTemplate (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html) 7874 // in the Amazon EC2 API Reference. For more information about using launch 7875 // templates with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 7876 // in the Amazon EKS User Guide. 7877 // 7878 // Specify either name or id, but not both. 7879 type LaunchTemplateSpecification struct { 7880 _ struct{} `type:"structure"` 7881 7882 // The ID of the launch template. 7883 Id *string `locationName:"id" type:"string"` 7884 7885 // The name of the launch template. 7886 Name *string `locationName:"name" type:"string"` 7887 7888 // The version of the launch template to use. If no version is specified, then 7889 // the template's default version is used. 7890 Version *string `locationName:"version" type:"string"` 7891 } 7892 7893 // String returns the string representation. 7894 // 7895 // API parameter values that are decorated as "sensitive" in the API will not 7896 // be included in the string output. The member name will be present, but the 7897 // value will be replaced with "sensitive". 7898 func (s LaunchTemplateSpecification) String() string { 7899 return awsutil.Prettify(s) 7900 } 7901 7902 // GoString returns the string representation. 7903 // 7904 // API parameter values that are decorated as "sensitive" in the API will not 7905 // be included in the string output. The member name will be present, but the 7906 // value will be replaced with "sensitive". 7907 func (s LaunchTemplateSpecification) GoString() string { 7908 return s.String() 7909 } 7910 7911 // SetId sets the Id field's value. 7912 func (s *LaunchTemplateSpecification) SetId(v string) *LaunchTemplateSpecification { 7913 s.Id = &v 7914 return s 7915 } 7916 7917 // SetName sets the Name field's value. 7918 func (s *LaunchTemplateSpecification) SetName(v string) *LaunchTemplateSpecification { 7919 s.Name = &v 7920 return s 7921 } 7922 7923 // SetVersion sets the Version field's value. 7924 func (s *LaunchTemplateSpecification) SetVersion(v string) *LaunchTemplateSpecification { 7925 s.Version = &v 7926 return s 7927 } 7928 7929 type ListAddonsInput struct { 7930 _ struct{} `type:"structure" nopayload:"true"` 7931 7932 // The name of the cluster. 7933 // 7934 // ClusterName is a required field 7935 ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 7936 7937 // The maximum number of add-on results returned by ListAddonsRequest in paginated 7938 // output. When you use this parameter, ListAddonsRequest returns only maxResults 7939 // results in a single page along with a nextToken response element. You can 7940 // see the remaining results of the initial request by sending another ListAddonsRequest 7941 // request with the returned nextToken value. This value can be between 1 and 7942 // 100. If you don't use this parameter, ListAddonsRequest returns up to 100 7943 // results and a nextToken value, if applicable. 7944 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7945 7946 // The nextToken value returned from a previous paginated ListAddonsRequest 7947 // where maxResults was used and the results exceeded the value of that parameter. 7948 // Pagination continues from the end of the previous results that returned the 7949 // nextToken value. 7950 // 7951 // This token should be treated as an opaque identifier that is used only to 7952 // retrieve the next items in a list and not for other programmatic purposes. 7953 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7954 } 7955 7956 // String returns the string representation. 7957 // 7958 // API parameter values that are decorated as "sensitive" in the API will not 7959 // be included in the string output. The member name will be present, but the 7960 // value will be replaced with "sensitive". 7961 func (s ListAddonsInput) String() string { 7962 return awsutil.Prettify(s) 7963 } 7964 7965 // GoString returns the string representation. 7966 // 7967 // API parameter values that are decorated as "sensitive" in the API will not 7968 // be included in the string output. The member name will be present, but the 7969 // value will be replaced with "sensitive". 7970 func (s ListAddonsInput) GoString() string { 7971 return s.String() 7972 } 7973 7974 // Validate inspects the fields of the type to determine if they are valid. 7975 func (s *ListAddonsInput) Validate() error { 7976 invalidParams := request.ErrInvalidParams{Context: "ListAddonsInput"} 7977 if s.ClusterName == nil { 7978 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 7979 } 7980 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 7981 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 7982 } 7983 if s.MaxResults != nil && *s.MaxResults < 1 { 7984 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7985 } 7986 7987 if invalidParams.Len() > 0 { 7988 return invalidParams 7989 } 7990 return nil 7991 } 7992 7993 // SetClusterName sets the ClusterName field's value. 7994 func (s *ListAddonsInput) SetClusterName(v string) *ListAddonsInput { 7995 s.ClusterName = &v 7996 return s 7997 } 7998 7999 // SetMaxResults sets the MaxResults field's value. 8000 func (s *ListAddonsInput) SetMaxResults(v int64) *ListAddonsInput { 8001 s.MaxResults = &v 8002 return s 8003 } 8004 8005 // SetNextToken sets the NextToken field's value. 8006 func (s *ListAddonsInput) SetNextToken(v string) *ListAddonsInput { 8007 s.NextToken = &v 8008 return s 8009 } 8010 8011 type ListAddonsOutput struct { 8012 _ struct{} `type:"structure"` 8013 8014 // A list of available add-ons. 8015 Addons []*string `locationName:"addons" type:"list"` 8016 8017 // The nextToken value returned from a previous paginated ListAddonsResponse 8018 // where maxResults was used and the results exceeded the value of that parameter. 8019 // Pagination continues from the end of the previous results that returned the 8020 // nextToken value. 8021 // 8022 // This token should be treated as an opaque identifier that is used only to 8023 // retrieve the next items in a list and not for other programmatic purposes. 8024 NextToken *string `locationName:"nextToken" type:"string"` 8025 } 8026 8027 // String returns the string representation. 8028 // 8029 // API parameter values that are decorated as "sensitive" in the API will not 8030 // be included in the string output. The member name will be present, but the 8031 // value will be replaced with "sensitive". 8032 func (s ListAddonsOutput) String() string { 8033 return awsutil.Prettify(s) 8034 } 8035 8036 // GoString returns the string representation. 8037 // 8038 // API parameter values that are decorated as "sensitive" in the API will not 8039 // be included in the string output. The member name will be present, but the 8040 // value will be replaced with "sensitive". 8041 func (s ListAddonsOutput) GoString() string { 8042 return s.String() 8043 } 8044 8045 // SetAddons sets the Addons field's value. 8046 func (s *ListAddonsOutput) SetAddons(v []*string) *ListAddonsOutput { 8047 s.Addons = v 8048 return s 8049 } 8050 8051 // SetNextToken sets the NextToken field's value. 8052 func (s *ListAddonsOutput) SetNextToken(v string) *ListAddonsOutput { 8053 s.NextToken = &v 8054 return s 8055 } 8056 8057 type ListClustersInput struct { 8058 _ struct{} `type:"structure" nopayload:"true"` 8059 8060 // Indicates whether connected clusters are included in the returned list. Default 8061 // value is 'ALL'. 8062 Include []*string `location:"querystring" locationName:"include" type:"list"` 8063 8064 // The maximum number of cluster results returned by ListClusters in paginated 8065 // output. When you use this parameter, ListClusters returns only maxResults 8066 // results in a single page along with a nextToken response element. You can 8067 // see the remaining results of the initial request by sending another ListClusters 8068 // request with the returned nextToken value. This value can be between 1 and 8069 // 100. If you don't use this parameter, ListClusters returns up to 100 results 8070 // and a nextToken value if applicable. 8071 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8072 8073 // The nextToken value returned from a previous paginated ListClusters request 8074 // where maxResults was used and the results exceeded the value of that parameter. 8075 // Pagination continues from the end of the previous results that returned the 8076 // nextToken value. 8077 // 8078 // This token should be treated as an opaque identifier that is used only to 8079 // retrieve the next items in a list and not for other programmatic purposes. 8080 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8081 } 8082 8083 // String returns the string representation. 8084 // 8085 // API parameter values that are decorated as "sensitive" in the API will not 8086 // be included in the string output. The member name will be present, but the 8087 // value will be replaced with "sensitive". 8088 func (s ListClustersInput) String() string { 8089 return awsutil.Prettify(s) 8090 } 8091 8092 // GoString returns the string representation. 8093 // 8094 // API parameter values that are decorated as "sensitive" in the API will not 8095 // be included in the string output. The member name will be present, but the 8096 // value will be replaced with "sensitive". 8097 func (s ListClustersInput) GoString() string { 8098 return s.String() 8099 } 8100 8101 // Validate inspects the fields of the type to determine if they are valid. 8102 func (s *ListClustersInput) Validate() error { 8103 invalidParams := request.ErrInvalidParams{Context: "ListClustersInput"} 8104 if s.MaxResults != nil && *s.MaxResults < 1 { 8105 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8106 } 8107 8108 if invalidParams.Len() > 0 { 8109 return invalidParams 8110 } 8111 return nil 8112 } 8113 8114 // SetInclude sets the Include field's value. 8115 func (s *ListClustersInput) SetInclude(v []*string) *ListClustersInput { 8116 s.Include = v 8117 return s 8118 } 8119 8120 // SetMaxResults sets the MaxResults field's value. 8121 func (s *ListClustersInput) SetMaxResults(v int64) *ListClustersInput { 8122 s.MaxResults = &v 8123 return s 8124 } 8125 8126 // SetNextToken sets the NextToken field's value. 8127 func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput { 8128 s.NextToken = &v 8129 return s 8130 } 8131 8132 type ListClustersOutput struct { 8133 _ struct{} `type:"structure"` 8134 8135 // A list of all of the clusters for your account in the specified Region. 8136 Clusters []*string `locationName:"clusters" type:"list"` 8137 8138 // The nextToken value to include in a future ListClusters request. When the 8139 // results of a ListClusters request exceed maxResults, you can use this value 8140 // to retrieve the next page of results. This value is null when there are no 8141 // more results to return. 8142 NextToken *string `locationName:"nextToken" type:"string"` 8143 } 8144 8145 // String returns the string representation. 8146 // 8147 // API parameter values that are decorated as "sensitive" in the API will not 8148 // be included in the string output. The member name will be present, but the 8149 // value will be replaced with "sensitive". 8150 func (s ListClustersOutput) String() string { 8151 return awsutil.Prettify(s) 8152 } 8153 8154 // GoString returns the string representation. 8155 // 8156 // API parameter values that are decorated as "sensitive" in the API will not 8157 // be included in the string output. The member name will be present, but the 8158 // value will be replaced with "sensitive". 8159 func (s ListClustersOutput) GoString() string { 8160 return s.String() 8161 } 8162 8163 // SetClusters sets the Clusters field's value. 8164 func (s *ListClustersOutput) SetClusters(v []*string) *ListClustersOutput { 8165 s.Clusters = v 8166 return s 8167 } 8168 8169 // SetNextToken sets the NextToken field's value. 8170 func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput { 8171 s.NextToken = &v 8172 return s 8173 } 8174 8175 type ListFargateProfilesInput struct { 8176 _ struct{} `type:"structure" nopayload:"true"` 8177 8178 // The name of the Amazon EKS cluster that you would like to list Fargate profiles 8179 // in. 8180 // 8181 // ClusterName is a required field 8182 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 8183 8184 // The maximum number of Fargate profile results returned by ListFargateProfiles 8185 // in paginated output. When you use this parameter, ListFargateProfiles returns 8186 // only maxResults results in a single page along with a nextToken response 8187 // element. You can see the remaining results of the initial request by sending 8188 // another ListFargateProfiles request with the returned nextToken value. This 8189 // value can be between 1 and 100. If you don't use this parameter, ListFargateProfiles 8190 // returns up to 100 results and a nextToken value if applicable. 8191 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8192 8193 // The nextToken value returned from a previous paginated ListFargateProfiles 8194 // request where maxResults was used and the results exceeded the value of that 8195 // parameter. Pagination continues from the end of the previous results that 8196 // returned the nextToken value. 8197 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8198 } 8199 8200 // String returns the string representation. 8201 // 8202 // API parameter values that are decorated as "sensitive" in the API will not 8203 // be included in the string output. The member name will be present, but the 8204 // value will be replaced with "sensitive". 8205 func (s ListFargateProfilesInput) String() string { 8206 return awsutil.Prettify(s) 8207 } 8208 8209 // GoString returns the string representation. 8210 // 8211 // API parameter values that are decorated as "sensitive" in the API will not 8212 // be included in the string output. The member name will be present, but the 8213 // value will be replaced with "sensitive". 8214 func (s ListFargateProfilesInput) GoString() string { 8215 return s.String() 8216 } 8217 8218 // Validate inspects the fields of the type to determine if they are valid. 8219 func (s *ListFargateProfilesInput) Validate() error { 8220 invalidParams := request.ErrInvalidParams{Context: "ListFargateProfilesInput"} 8221 if s.ClusterName == nil { 8222 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 8223 } 8224 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 8225 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 8226 } 8227 if s.MaxResults != nil && *s.MaxResults < 1 { 8228 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8229 } 8230 8231 if invalidParams.Len() > 0 { 8232 return invalidParams 8233 } 8234 return nil 8235 } 8236 8237 // SetClusterName sets the ClusterName field's value. 8238 func (s *ListFargateProfilesInput) SetClusterName(v string) *ListFargateProfilesInput { 8239 s.ClusterName = &v 8240 return s 8241 } 8242 8243 // SetMaxResults sets the MaxResults field's value. 8244 func (s *ListFargateProfilesInput) SetMaxResults(v int64) *ListFargateProfilesInput { 8245 s.MaxResults = &v 8246 return s 8247 } 8248 8249 // SetNextToken sets the NextToken field's value. 8250 func (s *ListFargateProfilesInput) SetNextToken(v string) *ListFargateProfilesInput { 8251 s.NextToken = &v 8252 return s 8253 } 8254 8255 type ListFargateProfilesOutput struct { 8256 _ struct{} `type:"structure"` 8257 8258 // A list of all of the Fargate profiles associated with the specified cluster. 8259 FargateProfileNames []*string `locationName:"fargateProfileNames" type:"list"` 8260 8261 // The nextToken value to include in a future ListFargateProfiles request. When 8262 // the results of a ListFargateProfiles request exceed maxResults, you can use 8263 // this value to retrieve the next page of results. This value is null when 8264 // there are no more results to return. 8265 NextToken *string `locationName:"nextToken" type:"string"` 8266 } 8267 8268 // String returns the string representation. 8269 // 8270 // API parameter values that are decorated as "sensitive" in the API will not 8271 // be included in the string output. The member name will be present, but the 8272 // value will be replaced with "sensitive". 8273 func (s ListFargateProfilesOutput) String() string { 8274 return awsutil.Prettify(s) 8275 } 8276 8277 // GoString returns the string representation. 8278 // 8279 // API parameter values that are decorated as "sensitive" in the API will not 8280 // be included in the string output. The member name will be present, but the 8281 // value will be replaced with "sensitive". 8282 func (s ListFargateProfilesOutput) GoString() string { 8283 return s.String() 8284 } 8285 8286 // SetFargateProfileNames sets the FargateProfileNames field's value. 8287 func (s *ListFargateProfilesOutput) SetFargateProfileNames(v []*string) *ListFargateProfilesOutput { 8288 s.FargateProfileNames = v 8289 return s 8290 } 8291 8292 // SetNextToken sets the NextToken field's value. 8293 func (s *ListFargateProfilesOutput) SetNextToken(v string) *ListFargateProfilesOutput { 8294 s.NextToken = &v 8295 return s 8296 } 8297 8298 type ListIdentityProviderConfigsInput struct { 8299 _ struct{} `type:"structure" nopayload:"true"` 8300 8301 // The cluster name that you want to list identity provider configurations for. 8302 // 8303 // ClusterName is a required field 8304 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 8305 8306 // The maximum number of identity provider configurations returned by ListIdentityProviderConfigs 8307 // in paginated output. When you use this parameter, ListIdentityProviderConfigs 8308 // returns only maxResults results in a single page along with a nextToken response 8309 // element. You can see the remaining results of the initial request by sending 8310 // another ListIdentityProviderConfigs request with the returned nextToken value. 8311 // This value can be between 1 and 100. If you don't use this parameter, ListIdentityProviderConfigs 8312 // returns up to 100 results and a nextToken value, if applicable. 8313 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8314 8315 // The nextToken value returned from a previous paginated IdentityProviderConfigsRequest 8316 // where maxResults was used and the results exceeded the value of that parameter. 8317 // Pagination continues from the end of the previous results that returned the 8318 // nextToken value. 8319 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8320 } 8321 8322 // String returns the string representation. 8323 // 8324 // API parameter values that are decorated as "sensitive" in the API will not 8325 // be included in the string output. The member name will be present, but the 8326 // value will be replaced with "sensitive". 8327 func (s ListIdentityProviderConfigsInput) String() string { 8328 return awsutil.Prettify(s) 8329 } 8330 8331 // GoString returns the string representation. 8332 // 8333 // API parameter values that are decorated as "sensitive" in the API will not 8334 // be included in the string output. The member name will be present, but the 8335 // value will be replaced with "sensitive". 8336 func (s ListIdentityProviderConfigsInput) GoString() string { 8337 return s.String() 8338 } 8339 8340 // Validate inspects the fields of the type to determine if they are valid. 8341 func (s *ListIdentityProviderConfigsInput) Validate() error { 8342 invalidParams := request.ErrInvalidParams{Context: "ListIdentityProviderConfigsInput"} 8343 if s.ClusterName == nil { 8344 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 8345 } 8346 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 8347 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 8348 } 8349 if s.MaxResults != nil && *s.MaxResults < 1 { 8350 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8351 } 8352 8353 if invalidParams.Len() > 0 { 8354 return invalidParams 8355 } 8356 return nil 8357 } 8358 8359 // SetClusterName sets the ClusterName field's value. 8360 func (s *ListIdentityProviderConfigsInput) SetClusterName(v string) *ListIdentityProviderConfigsInput { 8361 s.ClusterName = &v 8362 return s 8363 } 8364 8365 // SetMaxResults sets the MaxResults field's value. 8366 func (s *ListIdentityProviderConfigsInput) SetMaxResults(v int64) *ListIdentityProviderConfigsInput { 8367 s.MaxResults = &v 8368 return s 8369 } 8370 8371 // SetNextToken sets the NextToken field's value. 8372 func (s *ListIdentityProviderConfigsInput) SetNextToken(v string) *ListIdentityProviderConfigsInput { 8373 s.NextToken = &v 8374 return s 8375 } 8376 8377 type ListIdentityProviderConfigsOutput struct { 8378 _ struct{} `type:"structure"` 8379 8380 // The identity provider configurations for the cluster. 8381 IdentityProviderConfigs []*IdentityProviderConfig `locationName:"identityProviderConfigs" type:"list"` 8382 8383 // The nextToken value returned from a previous paginated ListIdentityProviderConfigsResponse 8384 // where maxResults was used and the results exceeded the value of that parameter. 8385 // Pagination continues from the end of the previous results that returned the 8386 // nextToken value. 8387 NextToken *string `locationName:"nextToken" type:"string"` 8388 } 8389 8390 // String returns the string representation. 8391 // 8392 // API parameter values that are decorated as "sensitive" in the API will not 8393 // be included in the string output. The member name will be present, but the 8394 // value will be replaced with "sensitive". 8395 func (s ListIdentityProviderConfigsOutput) String() string { 8396 return awsutil.Prettify(s) 8397 } 8398 8399 // GoString returns the string representation. 8400 // 8401 // API parameter values that are decorated as "sensitive" in the API will not 8402 // be included in the string output. The member name will be present, but the 8403 // value will be replaced with "sensitive". 8404 func (s ListIdentityProviderConfigsOutput) GoString() string { 8405 return s.String() 8406 } 8407 8408 // SetIdentityProviderConfigs sets the IdentityProviderConfigs field's value. 8409 func (s *ListIdentityProviderConfigsOutput) SetIdentityProviderConfigs(v []*IdentityProviderConfig) *ListIdentityProviderConfigsOutput { 8410 s.IdentityProviderConfigs = v 8411 return s 8412 } 8413 8414 // SetNextToken sets the NextToken field's value. 8415 func (s *ListIdentityProviderConfigsOutput) SetNextToken(v string) *ListIdentityProviderConfigsOutput { 8416 s.NextToken = &v 8417 return s 8418 } 8419 8420 type ListNodegroupsInput struct { 8421 _ struct{} `type:"structure" nopayload:"true"` 8422 8423 // The name of the Amazon EKS cluster that you would like to list node groups 8424 // in. 8425 // 8426 // ClusterName is a required field 8427 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 8428 8429 // The maximum number of node group results returned by ListNodegroups in paginated 8430 // output. When you use this parameter, ListNodegroups returns only maxResults 8431 // results in a single page along with a nextToken response element. You can 8432 // see the remaining results of the initial request by sending another ListNodegroups 8433 // request with the returned nextToken value. This value can be between 1 and 8434 // 100. If you don't use this parameter, ListNodegroups returns up to 100 results 8435 // and a nextToken value if applicable. 8436 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8437 8438 // The nextToken value returned from a previous paginated ListNodegroups request 8439 // where maxResults was used and the results exceeded the value of that parameter. 8440 // Pagination continues from the end of the previous results that returned the 8441 // nextToken value. 8442 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8443 } 8444 8445 // String returns the string representation. 8446 // 8447 // API parameter values that are decorated as "sensitive" in the API will not 8448 // be included in the string output. The member name will be present, but the 8449 // value will be replaced with "sensitive". 8450 func (s ListNodegroupsInput) String() string { 8451 return awsutil.Prettify(s) 8452 } 8453 8454 // GoString returns the string representation. 8455 // 8456 // API parameter values that are decorated as "sensitive" in the API will not 8457 // be included in the string output. The member name will be present, but the 8458 // value will be replaced with "sensitive". 8459 func (s ListNodegroupsInput) GoString() string { 8460 return s.String() 8461 } 8462 8463 // Validate inspects the fields of the type to determine if they are valid. 8464 func (s *ListNodegroupsInput) Validate() error { 8465 invalidParams := request.ErrInvalidParams{Context: "ListNodegroupsInput"} 8466 if s.ClusterName == nil { 8467 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 8468 } 8469 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 8470 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 8471 } 8472 if s.MaxResults != nil && *s.MaxResults < 1 { 8473 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8474 } 8475 8476 if invalidParams.Len() > 0 { 8477 return invalidParams 8478 } 8479 return nil 8480 } 8481 8482 // SetClusterName sets the ClusterName field's value. 8483 func (s *ListNodegroupsInput) SetClusterName(v string) *ListNodegroupsInput { 8484 s.ClusterName = &v 8485 return s 8486 } 8487 8488 // SetMaxResults sets the MaxResults field's value. 8489 func (s *ListNodegroupsInput) SetMaxResults(v int64) *ListNodegroupsInput { 8490 s.MaxResults = &v 8491 return s 8492 } 8493 8494 // SetNextToken sets the NextToken field's value. 8495 func (s *ListNodegroupsInput) SetNextToken(v string) *ListNodegroupsInput { 8496 s.NextToken = &v 8497 return s 8498 } 8499 8500 type ListNodegroupsOutput struct { 8501 _ struct{} `type:"structure"` 8502 8503 // The nextToken value to include in a future ListNodegroups request. When the 8504 // results of a ListNodegroups request exceed maxResults, you can use this value 8505 // to retrieve the next page of results. This value is null when there are no 8506 // more results to return. 8507 NextToken *string `locationName:"nextToken" type:"string"` 8508 8509 // A list of all of the node groups associated with the specified cluster. 8510 Nodegroups []*string `locationName:"nodegroups" type:"list"` 8511 } 8512 8513 // String returns the string representation. 8514 // 8515 // API parameter values that are decorated as "sensitive" in the API will not 8516 // be included in the string output. The member name will be present, but the 8517 // value will be replaced with "sensitive". 8518 func (s ListNodegroupsOutput) String() string { 8519 return awsutil.Prettify(s) 8520 } 8521 8522 // GoString returns the string representation. 8523 // 8524 // API parameter values that are decorated as "sensitive" in the API will not 8525 // be included in the string output. The member name will be present, but the 8526 // value will be replaced with "sensitive". 8527 func (s ListNodegroupsOutput) GoString() string { 8528 return s.String() 8529 } 8530 8531 // SetNextToken sets the NextToken field's value. 8532 func (s *ListNodegroupsOutput) SetNextToken(v string) *ListNodegroupsOutput { 8533 s.NextToken = &v 8534 return s 8535 } 8536 8537 // SetNodegroups sets the Nodegroups field's value. 8538 func (s *ListNodegroupsOutput) SetNodegroups(v []*string) *ListNodegroupsOutput { 8539 s.Nodegroups = v 8540 return s 8541 } 8542 8543 type ListTagsForResourceInput struct { 8544 _ struct{} `type:"structure" nopayload:"true"` 8545 8546 // The Amazon Resource Name (ARN) that identifies the resource for which to 8547 // list the tags. Currently, the supported resources are Amazon EKS clusters 8548 // and managed node groups. 8549 // 8550 // ResourceArn is a required field 8551 ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` 8552 } 8553 8554 // String returns the string representation. 8555 // 8556 // API parameter values that are decorated as "sensitive" in the API will not 8557 // be included in the string output. The member name will be present, but the 8558 // value will be replaced with "sensitive". 8559 func (s ListTagsForResourceInput) String() string { 8560 return awsutil.Prettify(s) 8561 } 8562 8563 // GoString returns the string representation. 8564 // 8565 // API parameter values that are decorated as "sensitive" in the API will not 8566 // be included in the string output. The member name will be present, but the 8567 // value will be replaced with "sensitive". 8568 func (s ListTagsForResourceInput) GoString() string { 8569 return s.String() 8570 } 8571 8572 // Validate inspects the fields of the type to determine if they are valid. 8573 func (s *ListTagsForResourceInput) Validate() error { 8574 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 8575 if s.ResourceArn == nil { 8576 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 8577 } 8578 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 8579 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 8580 } 8581 8582 if invalidParams.Len() > 0 { 8583 return invalidParams 8584 } 8585 return nil 8586 } 8587 8588 // SetResourceArn sets the ResourceArn field's value. 8589 func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 8590 s.ResourceArn = &v 8591 return s 8592 } 8593 8594 type ListTagsForResourceOutput struct { 8595 _ struct{} `type:"structure"` 8596 8597 // The tags for the resource. 8598 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 8599 } 8600 8601 // String returns the string representation. 8602 // 8603 // API parameter values that are decorated as "sensitive" in the API will not 8604 // be included in the string output. The member name will be present, but the 8605 // value will be replaced with "sensitive". 8606 func (s ListTagsForResourceOutput) String() string { 8607 return awsutil.Prettify(s) 8608 } 8609 8610 // GoString returns the string representation. 8611 // 8612 // API parameter values that are decorated as "sensitive" in the API will not 8613 // be included in the string output. The member name will be present, but the 8614 // value will be replaced with "sensitive". 8615 func (s ListTagsForResourceOutput) GoString() string { 8616 return s.String() 8617 } 8618 8619 // SetTags sets the Tags field's value. 8620 func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { 8621 s.Tags = v 8622 return s 8623 } 8624 8625 type ListUpdatesInput struct { 8626 _ struct{} `type:"structure" nopayload:"true"` 8627 8628 // The names of the installed add-ons that have available updates. 8629 AddonName *string `location:"querystring" locationName:"addonName" type:"string"` 8630 8631 // The maximum number of update results returned by ListUpdates in paginated 8632 // output. When you use this parameter, ListUpdates returns only maxResults 8633 // results in a single page along with a nextToken response element. You can 8634 // see the remaining results of the initial request by sending another ListUpdates 8635 // request with the returned nextToken value. This value can be between 1 and 8636 // 100. If you don't use this parameter, ListUpdates returns up to 100 results 8637 // and a nextToken value if applicable. 8638 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8639 8640 // The name of the Amazon EKS cluster to list updates for. 8641 // 8642 // Name is a required field 8643 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 8644 8645 // The nextToken value returned from a previous paginated ListUpdates request 8646 // where maxResults was used and the results exceeded the value of that parameter. 8647 // Pagination continues from the end of the previous results that returned the 8648 // nextToken value. 8649 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8650 8651 // The name of the Amazon EKS managed node group to list updates for. 8652 NodegroupName *string `location:"querystring" locationName:"nodegroupName" type:"string"` 8653 } 8654 8655 // String returns the string representation. 8656 // 8657 // API parameter values that are decorated as "sensitive" in the API will not 8658 // be included in the string output. The member name will be present, but the 8659 // value will be replaced with "sensitive". 8660 func (s ListUpdatesInput) String() string { 8661 return awsutil.Prettify(s) 8662 } 8663 8664 // GoString returns the string representation. 8665 // 8666 // API parameter values that are decorated as "sensitive" in the API will not 8667 // be included in the string output. The member name will be present, but the 8668 // value will be replaced with "sensitive". 8669 func (s ListUpdatesInput) GoString() string { 8670 return s.String() 8671 } 8672 8673 // Validate inspects the fields of the type to determine if they are valid. 8674 func (s *ListUpdatesInput) Validate() error { 8675 invalidParams := request.ErrInvalidParams{Context: "ListUpdatesInput"} 8676 if s.MaxResults != nil && *s.MaxResults < 1 { 8677 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8678 } 8679 if s.Name == nil { 8680 invalidParams.Add(request.NewErrParamRequired("Name")) 8681 } 8682 if s.Name != nil && len(*s.Name) < 1 { 8683 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8684 } 8685 8686 if invalidParams.Len() > 0 { 8687 return invalidParams 8688 } 8689 return nil 8690 } 8691 8692 // SetAddonName sets the AddonName field's value. 8693 func (s *ListUpdatesInput) SetAddonName(v string) *ListUpdatesInput { 8694 s.AddonName = &v 8695 return s 8696 } 8697 8698 // SetMaxResults sets the MaxResults field's value. 8699 func (s *ListUpdatesInput) SetMaxResults(v int64) *ListUpdatesInput { 8700 s.MaxResults = &v 8701 return s 8702 } 8703 8704 // SetName sets the Name field's value. 8705 func (s *ListUpdatesInput) SetName(v string) *ListUpdatesInput { 8706 s.Name = &v 8707 return s 8708 } 8709 8710 // SetNextToken sets the NextToken field's value. 8711 func (s *ListUpdatesInput) SetNextToken(v string) *ListUpdatesInput { 8712 s.NextToken = &v 8713 return s 8714 } 8715 8716 // SetNodegroupName sets the NodegroupName field's value. 8717 func (s *ListUpdatesInput) SetNodegroupName(v string) *ListUpdatesInput { 8718 s.NodegroupName = &v 8719 return s 8720 } 8721 8722 type ListUpdatesOutput struct { 8723 _ struct{} `type:"structure"` 8724 8725 // The nextToken value to include in a future ListUpdates request. When the 8726 // results of a ListUpdates request exceed maxResults, you can use this value 8727 // to retrieve the next page of results. This value is null when there are no 8728 // more results to return. 8729 NextToken *string `locationName:"nextToken" type:"string"` 8730 8731 // A list of all the updates for the specified cluster and Region. 8732 UpdateIds []*string `locationName:"updateIds" type:"list"` 8733 } 8734 8735 // String returns the string representation. 8736 // 8737 // API parameter values that are decorated as "sensitive" in the API will not 8738 // be included in the string output. The member name will be present, but the 8739 // value will be replaced with "sensitive". 8740 func (s ListUpdatesOutput) String() string { 8741 return awsutil.Prettify(s) 8742 } 8743 8744 // GoString returns the string representation. 8745 // 8746 // API parameter values that are decorated as "sensitive" in the API will not 8747 // be included in the string output. The member name will be present, but the 8748 // value will be replaced with "sensitive". 8749 func (s ListUpdatesOutput) GoString() string { 8750 return s.String() 8751 } 8752 8753 // SetNextToken sets the NextToken field's value. 8754 func (s *ListUpdatesOutput) SetNextToken(v string) *ListUpdatesOutput { 8755 s.NextToken = &v 8756 return s 8757 } 8758 8759 // SetUpdateIds sets the UpdateIds field's value. 8760 func (s *ListUpdatesOutput) SetUpdateIds(v []*string) *ListUpdatesOutput { 8761 s.UpdateIds = v 8762 return s 8763 } 8764 8765 // An object representing the enabled or disabled Kubernetes control plane logs 8766 // for your cluster. 8767 type LogSetup struct { 8768 _ struct{} `type:"structure"` 8769 8770 // If a log type is enabled, that log type exports its control plane logs to 8771 // CloudWatch Logs. If a log type isn't enabled, that log type doesn't export 8772 // its control plane logs. Each individual log type can be enabled or disabled 8773 // independently. 8774 Enabled *bool `locationName:"enabled" type:"boolean"` 8775 8776 // The available cluster control plane log types. 8777 Types []*string `locationName:"types" type:"list"` 8778 } 8779 8780 // String returns the string representation. 8781 // 8782 // API parameter values that are decorated as "sensitive" in the API will not 8783 // be included in the string output. The member name will be present, but the 8784 // value will be replaced with "sensitive". 8785 func (s LogSetup) String() string { 8786 return awsutil.Prettify(s) 8787 } 8788 8789 // GoString returns the string representation. 8790 // 8791 // API parameter values that are decorated as "sensitive" in the API will not 8792 // be included in the string output. The member name will be present, but the 8793 // value will be replaced with "sensitive". 8794 func (s LogSetup) GoString() string { 8795 return s.String() 8796 } 8797 8798 // SetEnabled sets the Enabled field's value. 8799 func (s *LogSetup) SetEnabled(v bool) *LogSetup { 8800 s.Enabled = &v 8801 return s 8802 } 8803 8804 // SetTypes sets the Types field's value. 8805 func (s *LogSetup) SetTypes(v []*string) *LogSetup { 8806 s.Types = v 8807 return s 8808 } 8809 8810 // An object representing the logging configuration for resources in your cluster. 8811 type Logging struct { 8812 _ struct{} `type:"structure"` 8813 8814 // The cluster control plane logging configuration for your cluster. 8815 ClusterLogging []*LogSetup `locationName:"clusterLogging" type:"list"` 8816 } 8817 8818 // String returns the string representation. 8819 // 8820 // API parameter values that are decorated as "sensitive" in the API will not 8821 // be included in the string output. The member name will be present, but the 8822 // value will be replaced with "sensitive". 8823 func (s Logging) String() string { 8824 return awsutil.Prettify(s) 8825 } 8826 8827 // GoString returns the string representation. 8828 // 8829 // API parameter values that are decorated as "sensitive" in the API will not 8830 // be included in the string output. The member name will be present, but the 8831 // value will be replaced with "sensitive". 8832 func (s Logging) GoString() string { 8833 return s.String() 8834 } 8835 8836 // SetClusterLogging sets the ClusterLogging field's value. 8837 func (s *Logging) SetClusterLogging(v []*LogSetup) *Logging { 8838 s.ClusterLogging = v 8839 return s 8840 } 8841 8842 // An object representing an Amazon EKS managed node group. 8843 type Nodegroup struct { 8844 _ struct{} `type:"structure"` 8845 8846 // If the node group was deployed using a launch template with a custom AMI, 8847 // then this is CUSTOM. For node groups that weren't deployed using a launch 8848 // template, this is the AMI type that was specified in the node group configuration. 8849 AmiType *string `locationName:"amiType" type:"string" enum:"AMITypes"` 8850 8851 // The capacity type of your managed node group. 8852 CapacityType *string `locationName:"capacityType" type:"string" enum:"CapacityTypes"` 8853 8854 // The name of the cluster that the managed node group resides in. 8855 ClusterName *string `locationName:"clusterName" type:"string"` 8856 8857 // The Unix epoch timestamp in seconds for when the managed node group was created. 8858 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` 8859 8860 // If the node group wasn't deployed with a launch template, then this is the 8861 // disk size in the node group configuration. If the node group was deployed 8862 // with a launch template, then this is null. 8863 DiskSize *int64 `locationName:"diskSize" type:"integer"` 8864 8865 // The health status of the node group. If there are issues with your node group's 8866 // health, they are listed here. 8867 Health *NodegroupHealth `locationName:"health" type:"structure"` 8868 8869 // If the node group wasn't deployed with a launch template, then this is the 8870 // instance type that is associated with the node group. If the node group was 8871 // deployed with a launch template, then this is null. 8872 InstanceTypes []*string `locationName:"instanceTypes" type:"list"` 8873 8874 // The Kubernetes labels applied to the nodes in the node group. 8875 // 8876 // Only labels that are applied with the Amazon EKS API are shown here. There 8877 // may be other Kubernetes labels applied to the nodes in this group. 8878 Labels map[string]*string `locationName:"labels" type:"map"` 8879 8880 // If a launch template was used to create the node group, then this is the 8881 // launch template that was used. 8882 LaunchTemplate *LaunchTemplateSpecification `locationName:"launchTemplate" type:"structure"` 8883 8884 // The Unix epoch timestamp in seconds for when the managed node group was last 8885 // modified. 8886 ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp"` 8887 8888 // The IAM role associated with your node group. The Amazon EKS node kubelet 8889 // daemon makes calls to Amazon Web Services APIs on your behalf. Nodes receive 8890 // permissions for these API calls through an IAM instance profile and associated 8891 // policies. 8892 NodeRole *string `locationName:"nodeRole" type:"string"` 8893 8894 // The Amazon Resource Name (ARN) associated with the managed node group. 8895 NodegroupArn *string `locationName:"nodegroupArn" type:"string"` 8896 8897 // The name associated with an Amazon EKS managed node group. 8898 NodegroupName *string `locationName:"nodegroupName" type:"string"` 8899 8900 // If the node group was deployed using a launch template with a custom AMI, 8901 // then this is the AMI ID that was specified in the launch template. For node 8902 // groups that weren't deployed using a launch template, this is the version 8903 // of the Amazon EKS optimized AMI that the node group was deployed with. 8904 ReleaseVersion *string `locationName:"releaseVersion" type:"string"` 8905 8906 // If the node group wasn't deployed with a launch template, then this is the 8907 // remote access configuration that is associated with the node group. If the 8908 // node group was deployed with a launch template, then this is null. 8909 RemoteAccess *RemoteAccessConfig `locationName:"remoteAccess" type:"structure"` 8910 8911 // The resources associated with the node group, such as Auto Scaling groups 8912 // and security groups for remote access. 8913 Resources *NodegroupResources `locationName:"resources" type:"structure"` 8914 8915 // The scaling configuration details for the Auto Scaling group that is associated 8916 // with your node group. 8917 ScalingConfig *NodegroupScalingConfig `locationName:"scalingConfig" type:"structure"` 8918 8919 // The current status of the managed node group. 8920 Status *string `locationName:"status" type:"string" enum:"NodegroupStatus"` 8921 8922 // The subnets that were specified for the Auto Scaling group that is associated 8923 // with your node group. 8924 Subnets []*string `locationName:"subnets" type:"list"` 8925 8926 // The metadata applied to the node group to assist with categorization and 8927 // organization. Each tag consists of a key and an optional value, both of which 8928 // you define. Node group tags do not propagate to any other resources associated 8929 // with the node group, such as the Amazon EC2 instances or subnets. 8930 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 8931 8932 // The Kubernetes taints to be applied to the nodes in the node group when they 8933 // are created. Effect is one of No_Schedule, Prefer_No_Schedule, or No_Execute. 8934 // Kubernetes taints can be used together with tolerations to control how workloads 8935 // are scheduled to your nodes. 8936 Taints []*Taint `locationName:"taints" type:"list"` 8937 8938 // The node group update configuration. 8939 UpdateConfig *NodegroupUpdateConfig `locationName:"updateConfig" type:"structure"` 8940 8941 // The Kubernetes version of the managed node group. 8942 Version *string `locationName:"version" type:"string"` 8943 } 8944 8945 // String returns the string representation. 8946 // 8947 // API parameter values that are decorated as "sensitive" in the API will not 8948 // be included in the string output. The member name will be present, but the 8949 // value will be replaced with "sensitive". 8950 func (s Nodegroup) String() string { 8951 return awsutil.Prettify(s) 8952 } 8953 8954 // GoString returns the string representation. 8955 // 8956 // API parameter values that are decorated as "sensitive" in the API will not 8957 // be included in the string output. The member name will be present, but the 8958 // value will be replaced with "sensitive". 8959 func (s Nodegroup) GoString() string { 8960 return s.String() 8961 } 8962 8963 // SetAmiType sets the AmiType field's value. 8964 func (s *Nodegroup) SetAmiType(v string) *Nodegroup { 8965 s.AmiType = &v 8966 return s 8967 } 8968 8969 // SetCapacityType sets the CapacityType field's value. 8970 func (s *Nodegroup) SetCapacityType(v string) *Nodegroup { 8971 s.CapacityType = &v 8972 return s 8973 } 8974 8975 // SetClusterName sets the ClusterName field's value. 8976 func (s *Nodegroup) SetClusterName(v string) *Nodegroup { 8977 s.ClusterName = &v 8978 return s 8979 } 8980 8981 // SetCreatedAt sets the CreatedAt field's value. 8982 func (s *Nodegroup) SetCreatedAt(v time.Time) *Nodegroup { 8983 s.CreatedAt = &v 8984 return s 8985 } 8986 8987 // SetDiskSize sets the DiskSize field's value. 8988 func (s *Nodegroup) SetDiskSize(v int64) *Nodegroup { 8989 s.DiskSize = &v 8990 return s 8991 } 8992 8993 // SetHealth sets the Health field's value. 8994 func (s *Nodegroup) SetHealth(v *NodegroupHealth) *Nodegroup { 8995 s.Health = v 8996 return s 8997 } 8998 8999 // SetInstanceTypes sets the InstanceTypes field's value. 9000 func (s *Nodegroup) SetInstanceTypes(v []*string) *Nodegroup { 9001 s.InstanceTypes = v 9002 return s 9003 } 9004 9005 // SetLabels sets the Labels field's value. 9006 func (s *Nodegroup) SetLabels(v map[string]*string) *Nodegroup { 9007 s.Labels = v 9008 return s 9009 } 9010 9011 // SetLaunchTemplate sets the LaunchTemplate field's value. 9012 func (s *Nodegroup) SetLaunchTemplate(v *LaunchTemplateSpecification) *Nodegroup { 9013 s.LaunchTemplate = v 9014 return s 9015 } 9016 9017 // SetModifiedAt sets the ModifiedAt field's value. 9018 func (s *Nodegroup) SetModifiedAt(v time.Time) *Nodegroup { 9019 s.ModifiedAt = &v 9020 return s 9021 } 9022 9023 // SetNodeRole sets the NodeRole field's value. 9024 func (s *Nodegroup) SetNodeRole(v string) *Nodegroup { 9025 s.NodeRole = &v 9026 return s 9027 } 9028 9029 // SetNodegroupArn sets the NodegroupArn field's value. 9030 func (s *Nodegroup) SetNodegroupArn(v string) *Nodegroup { 9031 s.NodegroupArn = &v 9032 return s 9033 } 9034 9035 // SetNodegroupName sets the NodegroupName field's value. 9036 func (s *Nodegroup) SetNodegroupName(v string) *Nodegroup { 9037 s.NodegroupName = &v 9038 return s 9039 } 9040 9041 // SetReleaseVersion sets the ReleaseVersion field's value. 9042 func (s *Nodegroup) SetReleaseVersion(v string) *Nodegroup { 9043 s.ReleaseVersion = &v 9044 return s 9045 } 9046 9047 // SetRemoteAccess sets the RemoteAccess field's value. 9048 func (s *Nodegroup) SetRemoteAccess(v *RemoteAccessConfig) *Nodegroup { 9049 s.RemoteAccess = v 9050 return s 9051 } 9052 9053 // SetResources sets the Resources field's value. 9054 func (s *Nodegroup) SetResources(v *NodegroupResources) *Nodegroup { 9055 s.Resources = v 9056 return s 9057 } 9058 9059 // SetScalingConfig sets the ScalingConfig field's value. 9060 func (s *Nodegroup) SetScalingConfig(v *NodegroupScalingConfig) *Nodegroup { 9061 s.ScalingConfig = v 9062 return s 9063 } 9064 9065 // SetStatus sets the Status field's value. 9066 func (s *Nodegroup) SetStatus(v string) *Nodegroup { 9067 s.Status = &v 9068 return s 9069 } 9070 9071 // SetSubnets sets the Subnets field's value. 9072 func (s *Nodegroup) SetSubnets(v []*string) *Nodegroup { 9073 s.Subnets = v 9074 return s 9075 } 9076 9077 // SetTags sets the Tags field's value. 9078 func (s *Nodegroup) SetTags(v map[string]*string) *Nodegroup { 9079 s.Tags = v 9080 return s 9081 } 9082 9083 // SetTaints sets the Taints field's value. 9084 func (s *Nodegroup) SetTaints(v []*Taint) *Nodegroup { 9085 s.Taints = v 9086 return s 9087 } 9088 9089 // SetUpdateConfig sets the UpdateConfig field's value. 9090 func (s *Nodegroup) SetUpdateConfig(v *NodegroupUpdateConfig) *Nodegroup { 9091 s.UpdateConfig = v 9092 return s 9093 } 9094 9095 // SetVersion sets the Version field's value. 9096 func (s *Nodegroup) SetVersion(v string) *Nodegroup { 9097 s.Version = &v 9098 return s 9099 } 9100 9101 // An object representing the health status of the node group. 9102 type NodegroupHealth struct { 9103 _ struct{} `type:"structure"` 9104 9105 // Any issues that are associated with the node group. 9106 Issues []*Issue `locationName:"issues" type:"list"` 9107 } 9108 9109 // String returns the string representation. 9110 // 9111 // API parameter values that are decorated as "sensitive" in the API will not 9112 // be included in the string output. The member name will be present, but the 9113 // value will be replaced with "sensitive". 9114 func (s NodegroupHealth) String() string { 9115 return awsutil.Prettify(s) 9116 } 9117 9118 // GoString returns the string representation. 9119 // 9120 // API parameter values that are decorated as "sensitive" in the API will not 9121 // be included in the string output. The member name will be present, but the 9122 // value will be replaced with "sensitive". 9123 func (s NodegroupHealth) GoString() string { 9124 return s.String() 9125 } 9126 9127 // SetIssues sets the Issues field's value. 9128 func (s *NodegroupHealth) SetIssues(v []*Issue) *NodegroupHealth { 9129 s.Issues = v 9130 return s 9131 } 9132 9133 // An object representing the resources associated with the node group, such 9134 // as Auto Scaling groups and security groups for remote access. 9135 type NodegroupResources struct { 9136 _ struct{} `type:"structure"` 9137 9138 // The Auto Scaling groups associated with the node group. 9139 AutoScalingGroups []*AutoScalingGroup `locationName:"autoScalingGroups" type:"list"` 9140 9141 // The remote access security group associated with the node group. This security 9142 // group controls SSH access to the nodes. 9143 RemoteAccessSecurityGroup *string `locationName:"remoteAccessSecurityGroup" type:"string"` 9144 } 9145 9146 // String returns the string representation. 9147 // 9148 // API parameter values that are decorated as "sensitive" in the API will not 9149 // be included in the string output. The member name will be present, but the 9150 // value will be replaced with "sensitive". 9151 func (s NodegroupResources) String() string { 9152 return awsutil.Prettify(s) 9153 } 9154 9155 // GoString returns the string representation. 9156 // 9157 // API parameter values that are decorated as "sensitive" in the API will not 9158 // be included in the string output. The member name will be present, but the 9159 // value will be replaced with "sensitive". 9160 func (s NodegroupResources) GoString() string { 9161 return s.String() 9162 } 9163 9164 // SetAutoScalingGroups sets the AutoScalingGroups field's value. 9165 func (s *NodegroupResources) SetAutoScalingGroups(v []*AutoScalingGroup) *NodegroupResources { 9166 s.AutoScalingGroups = v 9167 return s 9168 } 9169 9170 // SetRemoteAccessSecurityGroup sets the RemoteAccessSecurityGroup field's value. 9171 func (s *NodegroupResources) SetRemoteAccessSecurityGroup(v string) *NodegroupResources { 9172 s.RemoteAccessSecurityGroup = &v 9173 return s 9174 } 9175 9176 // An object representing the scaling configuration details for the Auto Scaling 9177 // group that is associated with your node group. When creating a node group, 9178 // you must specify all or none of the properties. When updating a node group, 9179 // you can specify any or none of the properties. 9180 type NodegroupScalingConfig struct { 9181 _ struct{} `type:"structure"` 9182 9183 // The current number of nodes that the managed node group should maintain. 9184 DesiredSize *int64 `locationName:"desiredSize" type:"integer"` 9185 9186 // The maximum number of nodes that the managed node group can scale out to. 9187 // For information about the maximum number that you can specify, see Amazon 9188 // EKS service quotas (https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html) 9189 // in the Amazon EKS User Guide. 9190 MaxSize *int64 `locationName:"maxSize" min:"1" type:"integer"` 9191 9192 // The minimum number of nodes that the managed node group can scale in to. 9193 MinSize *int64 `locationName:"minSize" type:"integer"` 9194 } 9195 9196 // String returns the string representation. 9197 // 9198 // API parameter values that are decorated as "sensitive" in the API will not 9199 // be included in the string output. The member name will be present, but the 9200 // value will be replaced with "sensitive". 9201 func (s NodegroupScalingConfig) String() string { 9202 return awsutil.Prettify(s) 9203 } 9204 9205 // GoString returns the string representation. 9206 // 9207 // API parameter values that are decorated as "sensitive" in the API will not 9208 // be included in the string output. The member name will be present, but the 9209 // value will be replaced with "sensitive". 9210 func (s NodegroupScalingConfig) GoString() string { 9211 return s.String() 9212 } 9213 9214 // Validate inspects the fields of the type to determine if they are valid. 9215 func (s *NodegroupScalingConfig) Validate() error { 9216 invalidParams := request.ErrInvalidParams{Context: "NodegroupScalingConfig"} 9217 if s.MaxSize != nil && *s.MaxSize < 1 { 9218 invalidParams.Add(request.NewErrParamMinValue("MaxSize", 1)) 9219 } 9220 9221 if invalidParams.Len() > 0 { 9222 return invalidParams 9223 } 9224 return nil 9225 } 9226 9227 // SetDesiredSize sets the DesiredSize field's value. 9228 func (s *NodegroupScalingConfig) SetDesiredSize(v int64) *NodegroupScalingConfig { 9229 s.DesiredSize = &v 9230 return s 9231 } 9232 9233 // SetMaxSize sets the MaxSize field's value. 9234 func (s *NodegroupScalingConfig) SetMaxSize(v int64) *NodegroupScalingConfig { 9235 s.MaxSize = &v 9236 return s 9237 } 9238 9239 // SetMinSize sets the MinSize field's value. 9240 func (s *NodegroupScalingConfig) SetMinSize(v int64) *NodegroupScalingConfig { 9241 s.MinSize = &v 9242 return s 9243 } 9244 9245 // The node group update configuration. 9246 type NodegroupUpdateConfig struct { 9247 _ struct{} `type:"structure"` 9248 9249 // The maximum number of nodes unavailable at once during a version update. 9250 // Nodes will be updated in parallel. This value or maxUnavailablePercentage 9251 // is required to have a value.The maximum number is 100. 9252 MaxUnavailable *int64 `locationName:"maxUnavailable" min:"1" type:"integer"` 9253 9254 // The maximum percentage of nodes unavailable during a version update. This 9255 // percentage of nodes will be updated in parallel, up to 100 nodes at once. 9256 // This value or maxUnavailable is required to have a value. 9257 MaxUnavailablePercentage *int64 `locationName:"maxUnavailablePercentage" min:"1" type:"integer"` 9258 } 9259 9260 // String returns the string representation. 9261 // 9262 // API parameter values that are decorated as "sensitive" in the API will not 9263 // be included in the string output. The member name will be present, but the 9264 // value will be replaced with "sensitive". 9265 func (s NodegroupUpdateConfig) String() string { 9266 return awsutil.Prettify(s) 9267 } 9268 9269 // GoString returns the string representation. 9270 // 9271 // API parameter values that are decorated as "sensitive" in the API will not 9272 // be included in the string output. The member name will be present, but the 9273 // value will be replaced with "sensitive". 9274 func (s NodegroupUpdateConfig) GoString() string { 9275 return s.String() 9276 } 9277 9278 // Validate inspects the fields of the type to determine if they are valid. 9279 func (s *NodegroupUpdateConfig) Validate() error { 9280 invalidParams := request.ErrInvalidParams{Context: "NodegroupUpdateConfig"} 9281 if s.MaxUnavailable != nil && *s.MaxUnavailable < 1 { 9282 invalidParams.Add(request.NewErrParamMinValue("MaxUnavailable", 1)) 9283 } 9284 if s.MaxUnavailablePercentage != nil && *s.MaxUnavailablePercentage < 1 { 9285 invalidParams.Add(request.NewErrParamMinValue("MaxUnavailablePercentage", 1)) 9286 } 9287 9288 if invalidParams.Len() > 0 { 9289 return invalidParams 9290 } 9291 return nil 9292 } 9293 9294 // SetMaxUnavailable sets the MaxUnavailable field's value. 9295 func (s *NodegroupUpdateConfig) SetMaxUnavailable(v int64) *NodegroupUpdateConfig { 9296 s.MaxUnavailable = &v 9297 return s 9298 } 9299 9300 // SetMaxUnavailablePercentage sets the MaxUnavailablePercentage field's value. 9301 func (s *NodegroupUpdateConfig) SetMaxUnavailablePercentage(v int64) *NodegroupUpdateConfig { 9302 s.MaxUnavailablePercentage = &v 9303 return s 9304 } 9305 9306 // A service resource associated with the request could not be found. Clients 9307 // should not retry such requests. 9308 type NotFoundException struct { 9309 _ struct{} `type:"structure"` 9310 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9311 9312 Message_ *string `locationName:"message" type:"string"` 9313 } 9314 9315 // String returns the string representation. 9316 // 9317 // API parameter values that are decorated as "sensitive" in the API will not 9318 // be included in the string output. The member name will be present, but the 9319 // value will be replaced with "sensitive". 9320 func (s NotFoundException) String() string { 9321 return awsutil.Prettify(s) 9322 } 9323 9324 // GoString returns the string representation. 9325 // 9326 // API parameter values that are decorated as "sensitive" in the API will not 9327 // be included in the string output. The member name will be present, but the 9328 // value will be replaced with "sensitive". 9329 func (s NotFoundException) GoString() string { 9330 return s.String() 9331 } 9332 9333 func newErrorNotFoundException(v protocol.ResponseMetadata) error { 9334 return &NotFoundException{ 9335 RespMetadata: v, 9336 } 9337 } 9338 9339 // Code returns the exception type name. 9340 func (s *NotFoundException) Code() string { 9341 return "NotFoundException" 9342 } 9343 9344 // Message returns the exception's message. 9345 func (s *NotFoundException) Message() string { 9346 if s.Message_ != nil { 9347 return *s.Message_ 9348 } 9349 return "" 9350 } 9351 9352 // OrigErr always returns nil, satisfies awserr.Error interface. 9353 func (s *NotFoundException) OrigErr() error { 9354 return nil 9355 } 9356 9357 func (s *NotFoundException) Error() string { 9358 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9359 } 9360 9361 // Status code returns the HTTP status code for the request's response error. 9362 func (s *NotFoundException) StatusCode() int { 9363 return s.RespMetadata.StatusCode 9364 } 9365 9366 // RequestID returns the service's response RequestID for request. 9367 func (s *NotFoundException) RequestID() string { 9368 return s.RespMetadata.RequestID 9369 } 9370 9371 // An object representing the OpenID Connect (https://openid.net/connect/) (OIDC) 9372 // identity provider information for the cluster. 9373 type OIDC struct { 9374 _ struct{} `type:"structure"` 9375 9376 // The issuer URL for the OIDC identity provider. 9377 Issuer *string `locationName:"issuer" type:"string"` 9378 } 9379 9380 // String returns the string representation. 9381 // 9382 // API parameter values that are decorated as "sensitive" in the API will not 9383 // be included in the string output. The member name will be present, but the 9384 // value will be replaced with "sensitive". 9385 func (s OIDC) String() string { 9386 return awsutil.Prettify(s) 9387 } 9388 9389 // GoString returns the string representation. 9390 // 9391 // API parameter values that are decorated as "sensitive" in the API will not 9392 // be included in the string output. The member name will be present, but the 9393 // value will be replaced with "sensitive". 9394 func (s OIDC) GoString() string { 9395 return s.String() 9396 } 9397 9398 // SetIssuer sets the Issuer field's value. 9399 func (s *OIDC) SetIssuer(v string) *OIDC { 9400 s.Issuer = &v 9401 return s 9402 } 9403 9404 // An object that represents the configuration for an OpenID Connect (OIDC) 9405 // identity provider. 9406 type OidcIdentityProviderConfig struct { 9407 _ struct{} `type:"structure"` 9408 9409 // This is also known as audience. The ID of the client application that makes 9410 // authentication requests to the OIDC identity provider. 9411 ClientId *string `locationName:"clientId" type:"string"` 9412 9413 // The cluster that the configuration is associated to. 9414 ClusterName *string `locationName:"clusterName" type:"string"` 9415 9416 // The JSON web token (JWT) claim that the provider uses to return your groups. 9417 GroupsClaim *string `locationName:"groupsClaim" type:"string"` 9418 9419 // The prefix that is prepended to group claims to prevent clashes with existing 9420 // names (such as system: groups). For example, the valueoidc: creates group 9421 // names like oidc:engineering and oidc:infra. The prefix can't contain system: 9422 GroupsPrefix *string `locationName:"groupsPrefix" type:"string"` 9423 9424 // The ARN of the configuration. 9425 IdentityProviderConfigArn *string `locationName:"identityProviderConfigArn" type:"string"` 9426 9427 // The name of the configuration. 9428 IdentityProviderConfigName *string `locationName:"identityProviderConfigName" type:"string"` 9429 9430 // The URL of the OIDC identity provider that allows the API server to discover 9431 // public signing keys for verifying tokens. 9432 IssuerUrl *string `locationName:"issuerUrl" type:"string"` 9433 9434 // The key-value pairs that describe required claims in the identity token. 9435 // If set, each claim is verified to be present in the token with a matching 9436 // value. 9437 RequiredClaims map[string]*string `locationName:"requiredClaims" type:"map"` 9438 9439 // The status of the OIDC identity provider. 9440 Status *string `locationName:"status" type:"string" enum:"ConfigStatus"` 9441 9442 // The metadata to apply to the provider configuration to assist with categorization 9443 // and organization. Each tag consists of a key and an optional value, both 9444 // of which you defined. 9445 Tags map[string]*string `locationName:"tags" min:"1" type:"map"` 9446 9447 // The JSON Web token (JWT) claim that is used as the username. 9448 UsernameClaim *string `locationName:"usernameClaim" type:"string"` 9449 9450 // The prefix that is prepended to username claims to prevent clashes with existing 9451 // names. The prefix can't contain system: 9452 UsernamePrefix *string `locationName:"usernamePrefix" type:"string"` 9453 } 9454 9455 // String returns the string representation. 9456 // 9457 // API parameter values that are decorated as "sensitive" in the API will not 9458 // be included in the string output. The member name will be present, but the 9459 // value will be replaced with "sensitive". 9460 func (s OidcIdentityProviderConfig) String() string { 9461 return awsutil.Prettify(s) 9462 } 9463 9464 // GoString returns the string representation. 9465 // 9466 // API parameter values that are decorated as "sensitive" in the API will not 9467 // be included in the string output. The member name will be present, but the 9468 // value will be replaced with "sensitive". 9469 func (s OidcIdentityProviderConfig) GoString() string { 9470 return s.String() 9471 } 9472 9473 // SetClientId sets the ClientId field's value. 9474 func (s *OidcIdentityProviderConfig) SetClientId(v string) *OidcIdentityProviderConfig { 9475 s.ClientId = &v 9476 return s 9477 } 9478 9479 // SetClusterName sets the ClusterName field's value. 9480 func (s *OidcIdentityProviderConfig) SetClusterName(v string) *OidcIdentityProviderConfig { 9481 s.ClusterName = &v 9482 return s 9483 } 9484 9485 // SetGroupsClaim sets the GroupsClaim field's value. 9486 func (s *OidcIdentityProviderConfig) SetGroupsClaim(v string) *OidcIdentityProviderConfig { 9487 s.GroupsClaim = &v 9488 return s 9489 } 9490 9491 // SetGroupsPrefix sets the GroupsPrefix field's value. 9492 func (s *OidcIdentityProviderConfig) SetGroupsPrefix(v string) *OidcIdentityProviderConfig { 9493 s.GroupsPrefix = &v 9494 return s 9495 } 9496 9497 // SetIdentityProviderConfigArn sets the IdentityProviderConfigArn field's value. 9498 func (s *OidcIdentityProviderConfig) SetIdentityProviderConfigArn(v string) *OidcIdentityProviderConfig { 9499 s.IdentityProviderConfigArn = &v 9500 return s 9501 } 9502 9503 // SetIdentityProviderConfigName sets the IdentityProviderConfigName field's value. 9504 func (s *OidcIdentityProviderConfig) SetIdentityProviderConfigName(v string) *OidcIdentityProviderConfig { 9505 s.IdentityProviderConfigName = &v 9506 return s 9507 } 9508 9509 // SetIssuerUrl sets the IssuerUrl field's value. 9510 func (s *OidcIdentityProviderConfig) SetIssuerUrl(v string) *OidcIdentityProviderConfig { 9511 s.IssuerUrl = &v 9512 return s 9513 } 9514 9515 // SetRequiredClaims sets the RequiredClaims field's value. 9516 func (s *OidcIdentityProviderConfig) SetRequiredClaims(v map[string]*string) *OidcIdentityProviderConfig { 9517 s.RequiredClaims = v 9518 return s 9519 } 9520 9521 // SetStatus sets the Status field's value. 9522 func (s *OidcIdentityProviderConfig) SetStatus(v string) *OidcIdentityProviderConfig { 9523 s.Status = &v 9524 return s 9525 } 9526 9527 // SetTags sets the Tags field's value. 9528 func (s *OidcIdentityProviderConfig) SetTags(v map[string]*string) *OidcIdentityProviderConfig { 9529 s.Tags = v 9530 return s 9531 } 9532 9533 // SetUsernameClaim sets the UsernameClaim field's value. 9534 func (s *OidcIdentityProviderConfig) SetUsernameClaim(v string) *OidcIdentityProviderConfig { 9535 s.UsernameClaim = &v 9536 return s 9537 } 9538 9539 // SetUsernamePrefix sets the UsernamePrefix field's value. 9540 func (s *OidcIdentityProviderConfig) SetUsernamePrefix(v string) *OidcIdentityProviderConfig { 9541 s.UsernamePrefix = &v 9542 return s 9543 } 9544 9545 // An object representing an OpenID Connect (OIDC) configuration. Before associating 9546 // an OIDC identity provider to your cluster, review the considerations in Authenticating 9547 // users for your cluster from an OpenID Connect identity provider (https://docs.aws.amazon.com/eks/latest/userguide/authenticate-oidc-identity-provider.html) 9548 // in the Amazon EKS User Guide. 9549 type OidcIdentityProviderConfigRequest struct { 9550 _ struct{} `type:"structure"` 9551 9552 // This is also known as audience. The ID for the client application that makes 9553 // authentication requests to the OpenID identity provider. 9554 // 9555 // ClientId is a required field 9556 ClientId *string `locationName:"clientId" type:"string" required:"true"` 9557 9558 // The JWT claim that the provider uses to return your groups. 9559 GroupsClaim *string `locationName:"groupsClaim" type:"string"` 9560 9561 // The prefix that is prepended to group claims to prevent clashes with existing 9562 // names (such as system: groups). For example, the valueoidc: will create group 9563 // names like oidc:engineering and oidc:infra. 9564 GroupsPrefix *string `locationName:"groupsPrefix" type:"string"` 9565 9566 // The name of the OIDC provider configuration. 9567 // 9568 // IdentityProviderConfigName is a required field 9569 IdentityProviderConfigName *string `locationName:"identityProviderConfigName" type:"string" required:"true"` 9570 9571 // The URL of the OpenID identity provider that allows the API server to discover 9572 // public signing keys for verifying tokens. The URL must begin with https:// 9573 // and should correspond to the iss claim in the provider's OIDC ID tokens. 9574 // Per the OIDC standard, path components are allowed but query parameters are 9575 // not. Typically the URL consists of only a hostname, like https://server.example.org 9576 // or https://example.com. This URL should point to the level below .well-known/openid-configuration 9577 // and must be publicly accessible over the internet. 9578 // 9579 // IssuerUrl is a required field 9580 IssuerUrl *string `locationName:"issuerUrl" type:"string" required:"true"` 9581 9582 // The key value pairs that describe required claims in the identity token. 9583 // If set, each claim is verified to be present in the token with a matching 9584 // value. For the maximum number of claims that you can require, see Amazon 9585 // EKS service quotas (https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html) 9586 // in the Amazon EKS User Guide. 9587 RequiredClaims map[string]*string `locationName:"requiredClaims" type:"map"` 9588 9589 // The JSON Web Token (JWT) claim to use as the username. The default is sub, 9590 // which is expected to be a unique identifier of the end user. You can choose 9591 // other claims, such as email or name, depending on the OpenID identity provider. 9592 // Claims other than email are prefixed with the issuer URL to prevent naming 9593 // clashes with other plug-ins. 9594 UsernameClaim *string `locationName:"usernameClaim" type:"string"` 9595 9596 // The prefix that is prepended to username claims to prevent clashes with existing 9597 // names. If you do not provide this field, and username is a value other than 9598 // email, the prefix defaults to issuerurl#. You can use the value - to disable 9599 // all prefixing. 9600 UsernamePrefix *string `locationName:"usernamePrefix" type:"string"` 9601 } 9602 9603 // String returns the string representation. 9604 // 9605 // API parameter values that are decorated as "sensitive" in the API will not 9606 // be included in the string output. The member name will be present, but the 9607 // value will be replaced with "sensitive". 9608 func (s OidcIdentityProviderConfigRequest) String() string { 9609 return awsutil.Prettify(s) 9610 } 9611 9612 // GoString returns the string representation. 9613 // 9614 // API parameter values that are decorated as "sensitive" in the API will not 9615 // be included in the string output. The member name will be present, but the 9616 // value will be replaced with "sensitive". 9617 func (s OidcIdentityProviderConfigRequest) GoString() string { 9618 return s.String() 9619 } 9620 9621 // Validate inspects the fields of the type to determine if they are valid. 9622 func (s *OidcIdentityProviderConfigRequest) Validate() error { 9623 invalidParams := request.ErrInvalidParams{Context: "OidcIdentityProviderConfigRequest"} 9624 if s.ClientId == nil { 9625 invalidParams.Add(request.NewErrParamRequired("ClientId")) 9626 } 9627 if s.IdentityProviderConfigName == nil { 9628 invalidParams.Add(request.NewErrParamRequired("IdentityProviderConfigName")) 9629 } 9630 if s.IssuerUrl == nil { 9631 invalidParams.Add(request.NewErrParamRequired("IssuerUrl")) 9632 } 9633 9634 if invalidParams.Len() > 0 { 9635 return invalidParams 9636 } 9637 return nil 9638 } 9639 9640 // SetClientId sets the ClientId field's value. 9641 func (s *OidcIdentityProviderConfigRequest) SetClientId(v string) *OidcIdentityProviderConfigRequest { 9642 s.ClientId = &v 9643 return s 9644 } 9645 9646 // SetGroupsClaim sets the GroupsClaim field's value. 9647 func (s *OidcIdentityProviderConfigRequest) SetGroupsClaim(v string) *OidcIdentityProviderConfigRequest { 9648 s.GroupsClaim = &v 9649 return s 9650 } 9651 9652 // SetGroupsPrefix sets the GroupsPrefix field's value. 9653 func (s *OidcIdentityProviderConfigRequest) SetGroupsPrefix(v string) *OidcIdentityProviderConfigRequest { 9654 s.GroupsPrefix = &v 9655 return s 9656 } 9657 9658 // SetIdentityProviderConfigName sets the IdentityProviderConfigName field's value. 9659 func (s *OidcIdentityProviderConfigRequest) SetIdentityProviderConfigName(v string) *OidcIdentityProviderConfigRequest { 9660 s.IdentityProviderConfigName = &v 9661 return s 9662 } 9663 9664 // SetIssuerUrl sets the IssuerUrl field's value. 9665 func (s *OidcIdentityProviderConfigRequest) SetIssuerUrl(v string) *OidcIdentityProviderConfigRequest { 9666 s.IssuerUrl = &v 9667 return s 9668 } 9669 9670 // SetRequiredClaims sets the RequiredClaims field's value. 9671 func (s *OidcIdentityProviderConfigRequest) SetRequiredClaims(v map[string]*string) *OidcIdentityProviderConfigRequest { 9672 s.RequiredClaims = v 9673 return s 9674 } 9675 9676 // SetUsernameClaim sets the UsernameClaim field's value. 9677 func (s *OidcIdentityProviderConfigRequest) SetUsernameClaim(v string) *OidcIdentityProviderConfigRequest { 9678 s.UsernameClaim = &v 9679 return s 9680 } 9681 9682 // SetUsernamePrefix sets the UsernamePrefix field's value. 9683 func (s *OidcIdentityProviderConfigRequest) SetUsernamePrefix(v string) *OidcIdentityProviderConfigRequest { 9684 s.UsernamePrefix = &v 9685 return s 9686 } 9687 9688 // Identifies the Key Management Service (KMS) key used to encrypt the secrets. 9689 type Provider struct { 9690 _ struct{} `type:"structure"` 9691 9692 // Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, 9693 // created in the same region as the cluster, and if the KMS key was created 9694 // in a different account, the user must have access to the KMS key. For more 9695 // information, see Allowing Users in Other Accounts to Use a KMS key (https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html) 9696 // in the Key Management Service Developer Guide. 9697 KeyArn *string `locationName:"keyArn" type:"string"` 9698 } 9699 9700 // String returns the string representation. 9701 // 9702 // API parameter values that are decorated as "sensitive" in the API will not 9703 // be included in the string output. The member name will be present, but the 9704 // value will be replaced with "sensitive". 9705 func (s Provider) String() string { 9706 return awsutil.Prettify(s) 9707 } 9708 9709 // GoString returns the string representation. 9710 // 9711 // API parameter values that are decorated as "sensitive" in the API will not 9712 // be included in the string output. The member name will be present, but the 9713 // value will be replaced with "sensitive". 9714 func (s Provider) GoString() string { 9715 return s.String() 9716 } 9717 9718 // SetKeyArn sets the KeyArn field's value. 9719 func (s *Provider) SetKeyArn(v string) *Provider { 9720 s.KeyArn = &v 9721 return s 9722 } 9723 9724 type RegisterClusterInput struct { 9725 _ struct{} `type:"structure"` 9726 9727 // Unique, case-sensitive identifier that you provide to ensure the idempotency 9728 // of the request. 9729 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 9730 9731 // The configuration settings required to connect the Kubernetes cluster to 9732 // the Amazon EKS control plane. 9733 // 9734 // ConnectorConfig is a required field 9735 ConnectorConfig *ConnectorConfigRequest `locationName:"connectorConfig" type:"structure" required:"true"` 9736 9737 // Define a unique name for this cluster within your AWS account. 9738 // 9739 // Name is a required field 9740 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 9741 } 9742 9743 // String returns the string representation. 9744 // 9745 // API parameter values that are decorated as "sensitive" in the API will not 9746 // be included in the string output. The member name will be present, but the 9747 // value will be replaced with "sensitive". 9748 func (s RegisterClusterInput) String() string { 9749 return awsutil.Prettify(s) 9750 } 9751 9752 // GoString returns the string representation. 9753 // 9754 // API parameter values that are decorated as "sensitive" in the API will not 9755 // be included in the string output. The member name will be present, but the 9756 // value will be replaced with "sensitive". 9757 func (s RegisterClusterInput) GoString() string { 9758 return s.String() 9759 } 9760 9761 // Validate inspects the fields of the type to determine if they are valid. 9762 func (s *RegisterClusterInput) Validate() error { 9763 invalidParams := request.ErrInvalidParams{Context: "RegisterClusterInput"} 9764 if s.ConnectorConfig == nil { 9765 invalidParams.Add(request.NewErrParamRequired("ConnectorConfig")) 9766 } 9767 if s.Name == nil { 9768 invalidParams.Add(request.NewErrParamRequired("Name")) 9769 } 9770 if s.Name != nil && len(*s.Name) < 1 { 9771 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 9772 } 9773 if s.ConnectorConfig != nil { 9774 if err := s.ConnectorConfig.Validate(); err != nil { 9775 invalidParams.AddNested("ConnectorConfig", err.(request.ErrInvalidParams)) 9776 } 9777 } 9778 9779 if invalidParams.Len() > 0 { 9780 return invalidParams 9781 } 9782 return nil 9783 } 9784 9785 // SetClientRequestToken sets the ClientRequestToken field's value. 9786 func (s *RegisterClusterInput) SetClientRequestToken(v string) *RegisterClusterInput { 9787 s.ClientRequestToken = &v 9788 return s 9789 } 9790 9791 // SetConnectorConfig sets the ConnectorConfig field's value. 9792 func (s *RegisterClusterInput) SetConnectorConfig(v *ConnectorConfigRequest) *RegisterClusterInput { 9793 s.ConnectorConfig = v 9794 return s 9795 } 9796 9797 // SetName sets the Name field's value. 9798 func (s *RegisterClusterInput) SetName(v string) *RegisterClusterInput { 9799 s.Name = &v 9800 return s 9801 } 9802 9803 type RegisterClusterOutput struct { 9804 _ struct{} `type:"structure"` 9805 9806 // An object representing an Amazon EKS cluster. 9807 Cluster *Cluster `locationName:"cluster" type:"structure"` 9808 } 9809 9810 // String returns the string representation. 9811 // 9812 // API parameter values that are decorated as "sensitive" in the API will not 9813 // be included in the string output. The member name will be present, but the 9814 // value will be replaced with "sensitive". 9815 func (s RegisterClusterOutput) String() string { 9816 return awsutil.Prettify(s) 9817 } 9818 9819 // GoString returns the string representation. 9820 // 9821 // API parameter values that are decorated as "sensitive" in the API will not 9822 // be included in the string output. The member name will be present, but the 9823 // value will be replaced with "sensitive". 9824 func (s RegisterClusterOutput) GoString() string { 9825 return s.String() 9826 } 9827 9828 // SetCluster sets the Cluster field's value. 9829 func (s *RegisterClusterOutput) SetCluster(v *Cluster) *RegisterClusterOutput { 9830 s.Cluster = v 9831 return s 9832 } 9833 9834 // An object representing the remote access configuration for the managed node 9835 // group. 9836 type RemoteAccessConfig struct { 9837 _ struct{} `type:"structure"` 9838 9839 // The Amazon EC2 SSH key that provides access for SSH communication with the 9840 // nodes in the managed node group. For more information, see Amazon EC2 key 9841 // pairs and Linux instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) 9842 // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. 9843 Ec2SshKey *string `locationName:"ec2SshKey" type:"string"` 9844 9845 // The security groups that are allowed SSH access (port 22) to the nodes. If 9846 // you specify an Amazon EC2 SSH key but do not specify a source security group 9847 // when you create a managed node group, then port 22 on the nodes is opened 9848 // to the internet (0.0.0.0/0). For more information, see Security Groups for 9849 // Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) 9850 // in the Amazon Virtual Private Cloud User Guide. 9851 SourceSecurityGroups []*string `locationName:"sourceSecurityGroups" type:"list"` 9852 } 9853 9854 // String returns the string representation. 9855 // 9856 // API parameter values that are decorated as "sensitive" in the API will not 9857 // be included in the string output. The member name will be present, but the 9858 // value will be replaced with "sensitive". 9859 func (s RemoteAccessConfig) String() string { 9860 return awsutil.Prettify(s) 9861 } 9862 9863 // GoString returns the string representation. 9864 // 9865 // API parameter values that are decorated as "sensitive" in the API will not 9866 // be included in the string output. The member name will be present, but the 9867 // value will be replaced with "sensitive". 9868 func (s RemoteAccessConfig) GoString() string { 9869 return s.String() 9870 } 9871 9872 // SetEc2SshKey sets the Ec2SshKey field's value. 9873 func (s *RemoteAccessConfig) SetEc2SshKey(v string) *RemoteAccessConfig { 9874 s.Ec2SshKey = &v 9875 return s 9876 } 9877 9878 // SetSourceSecurityGroups sets the SourceSecurityGroups field's value. 9879 func (s *RemoteAccessConfig) SetSourceSecurityGroups(v []*string) *RemoteAccessConfig { 9880 s.SourceSecurityGroups = v 9881 return s 9882 } 9883 9884 // The specified resource is in use. 9885 type ResourceInUseException struct { 9886 _ struct{} `type:"structure"` 9887 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9888 9889 AddonName *string `locationName:"addonName" type:"string"` 9890 9891 // The Amazon EKS cluster associated with the exception. 9892 ClusterName *string `locationName:"clusterName" type:"string"` 9893 9894 Message_ *string `locationName:"message" type:"string"` 9895 9896 // The Amazon EKS managed node group associated with the exception. 9897 NodegroupName *string `locationName:"nodegroupName" type:"string"` 9898 } 9899 9900 // String returns the string representation. 9901 // 9902 // API parameter values that are decorated as "sensitive" in the API will not 9903 // be included in the string output. The member name will be present, but the 9904 // value will be replaced with "sensitive". 9905 func (s ResourceInUseException) String() string { 9906 return awsutil.Prettify(s) 9907 } 9908 9909 // GoString returns the string representation. 9910 // 9911 // API parameter values that are decorated as "sensitive" in the API will not 9912 // be included in the string output. The member name will be present, but the 9913 // value will be replaced with "sensitive". 9914 func (s ResourceInUseException) GoString() string { 9915 return s.String() 9916 } 9917 9918 func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 9919 return &ResourceInUseException{ 9920 RespMetadata: v, 9921 } 9922 } 9923 9924 // Code returns the exception type name. 9925 func (s *ResourceInUseException) Code() string { 9926 return "ResourceInUseException" 9927 } 9928 9929 // Message returns the exception's message. 9930 func (s *ResourceInUseException) Message() string { 9931 if s.Message_ != nil { 9932 return *s.Message_ 9933 } 9934 return "" 9935 } 9936 9937 // OrigErr always returns nil, satisfies awserr.Error interface. 9938 func (s *ResourceInUseException) OrigErr() error { 9939 return nil 9940 } 9941 9942 func (s *ResourceInUseException) Error() string { 9943 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 9944 } 9945 9946 // Status code returns the HTTP status code for the request's response error. 9947 func (s *ResourceInUseException) StatusCode() int { 9948 return s.RespMetadata.StatusCode 9949 } 9950 9951 // RequestID returns the service's response RequestID for request. 9952 func (s *ResourceInUseException) RequestID() string { 9953 return s.RespMetadata.RequestID 9954 } 9955 9956 // You have encountered a service limit on the specified resource. 9957 type ResourceLimitExceededException struct { 9958 _ struct{} `type:"structure"` 9959 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9960 9961 // The Amazon EKS cluster associated with the exception. 9962 ClusterName *string `locationName:"clusterName" type:"string"` 9963 9964 Message_ *string `locationName:"message" type:"string"` 9965 9966 // The Amazon EKS managed node group associated with the exception. 9967 NodegroupName *string `locationName:"nodegroupName" type:"string"` 9968 } 9969 9970 // String returns the string representation. 9971 // 9972 // API parameter values that are decorated as "sensitive" in the API will not 9973 // be included in the string output. The member name will be present, but the 9974 // value will be replaced with "sensitive". 9975 func (s ResourceLimitExceededException) String() string { 9976 return awsutil.Prettify(s) 9977 } 9978 9979 // GoString returns the string representation. 9980 // 9981 // API parameter values that are decorated as "sensitive" in the API will not 9982 // be included in the string output. The member name will be present, but the 9983 // value will be replaced with "sensitive". 9984 func (s ResourceLimitExceededException) GoString() string { 9985 return s.String() 9986 } 9987 9988 func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error { 9989 return &ResourceLimitExceededException{ 9990 RespMetadata: v, 9991 } 9992 } 9993 9994 // Code returns the exception type name. 9995 func (s *ResourceLimitExceededException) Code() string { 9996 return "ResourceLimitExceededException" 9997 } 9998 9999 // Message returns the exception's message. 10000 func (s *ResourceLimitExceededException) Message() string { 10001 if s.Message_ != nil { 10002 return *s.Message_ 10003 } 10004 return "" 10005 } 10006 10007 // OrigErr always returns nil, satisfies awserr.Error interface. 10008 func (s *ResourceLimitExceededException) OrigErr() error { 10009 return nil 10010 } 10011 10012 func (s *ResourceLimitExceededException) Error() string { 10013 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10014 } 10015 10016 // Status code returns the HTTP status code for the request's response error. 10017 func (s *ResourceLimitExceededException) StatusCode() int { 10018 return s.RespMetadata.StatusCode 10019 } 10020 10021 // RequestID returns the service's response RequestID for request. 10022 func (s *ResourceLimitExceededException) RequestID() string { 10023 return s.RespMetadata.RequestID 10024 } 10025 10026 // The specified resource could not be found. You can view your available clusters 10027 // with ListClusters. You can view your available managed node groups with ListNodegroups. 10028 // Amazon EKS clusters and node groups are Region-specific. 10029 type ResourceNotFoundException struct { 10030 _ struct{} `type:"structure"` 10031 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10032 10033 AddonName *string `locationName:"addonName" type:"string"` 10034 10035 // The Amazon EKS cluster associated with the exception. 10036 ClusterName *string `locationName:"clusterName" type:"string"` 10037 10038 // The Fargate profile associated with the exception. 10039 FargateProfileName *string `locationName:"fargateProfileName" type:"string"` 10040 10041 Message_ *string `locationName:"message" type:"string"` 10042 10043 // The Amazon EKS managed node group associated with the exception. 10044 NodegroupName *string `locationName:"nodegroupName" type:"string"` 10045 } 10046 10047 // String returns the string representation. 10048 // 10049 // API parameter values that are decorated as "sensitive" in the API will not 10050 // be included in the string output. The member name will be present, but the 10051 // value will be replaced with "sensitive". 10052 func (s ResourceNotFoundException) String() string { 10053 return awsutil.Prettify(s) 10054 } 10055 10056 // GoString returns the string representation. 10057 // 10058 // API parameter values that are decorated as "sensitive" in the API will not 10059 // be included in the string output. The member name will be present, but the 10060 // value will be replaced with "sensitive". 10061 func (s ResourceNotFoundException) GoString() string { 10062 return s.String() 10063 } 10064 10065 func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 10066 return &ResourceNotFoundException{ 10067 RespMetadata: v, 10068 } 10069 } 10070 10071 // Code returns the exception type name. 10072 func (s *ResourceNotFoundException) Code() string { 10073 return "ResourceNotFoundException" 10074 } 10075 10076 // Message returns the exception's message. 10077 func (s *ResourceNotFoundException) Message() string { 10078 if s.Message_ != nil { 10079 return *s.Message_ 10080 } 10081 return "" 10082 } 10083 10084 // OrigErr always returns nil, satisfies awserr.Error interface. 10085 func (s *ResourceNotFoundException) OrigErr() error { 10086 return nil 10087 } 10088 10089 func (s *ResourceNotFoundException) Error() string { 10090 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10091 } 10092 10093 // Status code returns the HTTP status code for the request's response error. 10094 func (s *ResourceNotFoundException) StatusCode() int { 10095 return s.RespMetadata.StatusCode 10096 } 10097 10098 // RequestID returns the service's response RequestID for request. 10099 func (s *ResourceNotFoundException) RequestID() string { 10100 return s.RespMetadata.RequestID 10101 } 10102 10103 // These errors are usually caused by a server-side issue. 10104 type ServerException struct { 10105 _ struct{} `type:"structure"` 10106 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10107 10108 AddonName *string `locationName:"addonName" type:"string"` 10109 10110 // The Amazon EKS cluster associated with the exception. 10111 ClusterName *string `locationName:"clusterName" type:"string"` 10112 10113 Message_ *string `locationName:"message" type:"string"` 10114 10115 // The Amazon EKS managed node group associated with the exception. 10116 NodegroupName *string `locationName:"nodegroupName" type:"string"` 10117 } 10118 10119 // String returns the string representation. 10120 // 10121 // API parameter values that are decorated as "sensitive" in the API will not 10122 // be included in the string output. The member name will be present, but the 10123 // value will be replaced with "sensitive". 10124 func (s ServerException) String() string { 10125 return awsutil.Prettify(s) 10126 } 10127 10128 // GoString returns the string representation. 10129 // 10130 // API parameter values that are decorated as "sensitive" in the API will not 10131 // be included in the string output. The member name will be present, but the 10132 // value will be replaced with "sensitive". 10133 func (s ServerException) GoString() string { 10134 return s.String() 10135 } 10136 10137 func newErrorServerException(v protocol.ResponseMetadata) error { 10138 return &ServerException{ 10139 RespMetadata: v, 10140 } 10141 } 10142 10143 // Code returns the exception type name. 10144 func (s *ServerException) Code() string { 10145 return "ServerException" 10146 } 10147 10148 // Message returns the exception's message. 10149 func (s *ServerException) Message() string { 10150 if s.Message_ != nil { 10151 return *s.Message_ 10152 } 10153 return "" 10154 } 10155 10156 // OrigErr always returns nil, satisfies awserr.Error interface. 10157 func (s *ServerException) OrigErr() error { 10158 return nil 10159 } 10160 10161 func (s *ServerException) Error() string { 10162 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10163 } 10164 10165 // Status code returns the HTTP status code for the request's response error. 10166 func (s *ServerException) StatusCode() int { 10167 return s.RespMetadata.StatusCode 10168 } 10169 10170 // RequestID returns the service's response RequestID for request. 10171 func (s *ServerException) RequestID() string { 10172 return s.RespMetadata.RequestID 10173 } 10174 10175 // The service is unavailable. Back off and retry the operation. 10176 type ServiceUnavailableException struct { 10177 _ struct{} `type:"structure"` 10178 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10179 10180 Message_ *string `locationName:"message" type:"string"` 10181 } 10182 10183 // String returns the string representation. 10184 // 10185 // API parameter values that are decorated as "sensitive" in the API will not 10186 // be included in the string output. The member name will be present, but the 10187 // value will be replaced with "sensitive". 10188 func (s ServiceUnavailableException) String() string { 10189 return awsutil.Prettify(s) 10190 } 10191 10192 // GoString returns the string representation. 10193 // 10194 // API parameter values that are decorated as "sensitive" in the API will not 10195 // be included in the string output. The member name will be present, but the 10196 // value will be replaced with "sensitive". 10197 func (s ServiceUnavailableException) GoString() string { 10198 return s.String() 10199 } 10200 10201 func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { 10202 return &ServiceUnavailableException{ 10203 RespMetadata: v, 10204 } 10205 } 10206 10207 // Code returns the exception type name. 10208 func (s *ServiceUnavailableException) Code() string { 10209 return "ServiceUnavailableException" 10210 } 10211 10212 // Message returns the exception's message. 10213 func (s *ServiceUnavailableException) Message() string { 10214 if s.Message_ != nil { 10215 return *s.Message_ 10216 } 10217 return "" 10218 } 10219 10220 // OrigErr always returns nil, satisfies awserr.Error interface. 10221 func (s *ServiceUnavailableException) OrigErr() error { 10222 return nil 10223 } 10224 10225 func (s *ServiceUnavailableException) Error() string { 10226 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 10227 } 10228 10229 // Status code returns the HTTP status code for the request's response error. 10230 func (s *ServiceUnavailableException) StatusCode() int { 10231 return s.RespMetadata.StatusCode 10232 } 10233 10234 // RequestID returns the service's response RequestID for request. 10235 func (s *ServiceUnavailableException) RequestID() string { 10236 return s.RespMetadata.RequestID 10237 } 10238 10239 type TagResourceInput struct { 10240 _ struct{} `type:"structure"` 10241 10242 // The Amazon Resource Name (ARN) of the resource to which to add tags. Currently, 10243 // the supported resources are Amazon EKS clusters and managed node groups. 10244 // 10245 // ResourceArn is a required field 10246 ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` 10247 10248 // The tags to add to the resource. A tag is an array of key-value pairs. 10249 // 10250 // Tags is a required field 10251 Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"` 10252 } 10253 10254 // String returns the string representation. 10255 // 10256 // API parameter values that are decorated as "sensitive" in the API will not 10257 // be included in the string output. The member name will be present, but the 10258 // value will be replaced with "sensitive". 10259 func (s TagResourceInput) String() string { 10260 return awsutil.Prettify(s) 10261 } 10262 10263 // GoString returns the string representation. 10264 // 10265 // API parameter values that are decorated as "sensitive" in the API will not 10266 // be included in the string output. The member name will be present, but the 10267 // value will be replaced with "sensitive". 10268 func (s TagResourceInput) GoString() string { 10269 return s.String() 10270 } 10271 10272 // Validate inspects the fields of the type to determine if they are valid. 10273 func (s *TagResourceInput) Validate() error { 10274 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 10275 if s.ResourceArn == nil { 10276 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10277 } 10278 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10279 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10280 } 10281 if s.Tags == nil { 10282 invalidParams.Add(request.NewErrParamRequired("Tags")) 10283 } 10284 if s.Tags != nil && len(s.Tags) < 1 { 10285 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 10286 } 10287 10288 if invalidParams.Len() > 0 { 10289 return invalidParams 10290 } 10291 return nil 10292 } 10293 10294 // SetResourceArn sets the ResourceArn field's value. 10295 func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 10296 s.ResourceArn = &v 10297 return s 10298 } 10299 10300 // SetTags sets the Tags field's value. 10301 func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { 10302 s.Tags = v 10303 return s 10304 } 10305 10306 type TagResourceOutput struct { 10307 _ struct{} `type:"structure" nopayload:"true"` 10308 } 10309 10310 // String returns the string representation. 10311 // 10312 // API parameter values that are decorated as "sensitive" in the API will not 10313 // be included in the string output. The member name will be present, but the 10314 // value will be replaced with "sensitive". 10315 func (s TagResourceOutput) String() string { 10316 return awsutil.Prettify(s) 10317 } 10318 10319 // GoString returns the string representation. 10320 // 10321 // API parameter values that are decorated as "sensitive" in the API will not 10322 // be included in the string output. The member name will be present, but the 10323 // value will be replaced with "sensitive". 10324 func (s TagResourceOutput) GoString() string { 10325 return s.String() 10326 } 10327 10328 // A property that allows a node to repel a set of pods. 10329 type Taint struct { 10330 _ struct{} `type:"structure"` 10331 10332 // The effect of the taint. 10333 Effect *string `locationName:"effect" type:"string" enum:"TaintEffect"` 10334 10335 // The key of the taint. 10336 Key *string `locationName:"key" min:"1" type:"string"` 10337 10338 // The value of the taint. 10339 Value *string `locationName:"value" type:"string"` 10340 } 10341 10342 // String returns the string representation. 10343 // 10344 // API parameter values that are decorated as "sensitive" in the API will not 10345 // be included in the string output. The member name will be present, but the 10346 // value will be replaced with "sensitive". 10347 func (s Taint) String() string { 10348 return awsutil.Prettify(s) 10349 } 10350 10351 // GoString returns the string representation. 10352 // 10353 // API parameter values that are decorated as "sensitive" in the API will not 10354 // be included in the string output. The member name will be present, but the 10355 // value will be replaced with "sensitive". 10356 func (s Taint) GoString() string { 10357 return s.String() 10358 } 10359 10360 // Validate inspects the fields of the type to determine if they are valid. 10361 func (s *Taint) Validate() error { 10362 invalidParams := request.ErrInvalidParams{Context: "Taint"} 10363 if s.Key != nil && len(*s.Key) < 1 { 10364 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 10365 } 10366 10367 if invalidParams.Len() > 0 { 10368 return invalidParams 10369 } 10370 return nil 10371 } 10372 10373 // SetEffect sets the Effect field's value. 10374 func (s *Taint) SetEffect(v string) *Taint { 10375 s.Effect = &v 10376 return s 10377 } 10378 10379 // SetKey sets the Key field's value. 10380 func (s *Taint) SetKey(v string) *Taint { 10381 s.Key = &v 10382 return s 10383 } 10384 10385 // SetValue sets the Value field's value. 10386 func (s *Taint) SetValue(v string) *Taint { 10387 s.Value = &v 10388 return s 10389 } 10390 10391 // At least one of your specified cluster subnets is in an Availability Zone 10392 // that does not support Amazon EKS. The exception output specifies the supported 10393 // Availability Zones for your account, from which you can choose subnets for 10394 // your cluster. 10395 type UnsupportedAvailabilityZoneException struct { 10396 _ struct{} `type:"structure"` 10397 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10398 10399 // The Amazon EKS cluster associated with the exception. 10400 ClusterName *string `locationName:"clusterName" type:"string"` 10401 10402 Message_ *string `locationName:"message" type:"string"` 10403 10404 // The Amazon EKS managed node group associated with the exception. 10405 NodegroupName *string `locationName:"nodegroupName" type:"string"` 10406 10407 // The supported Availability Zones for your account. Choose subnets in these 10408 // Availability Zones for your cluster. 10409 ValidZones []*string `locationName:"validZones" type:"list"` 10410 } 10411 10412 // String returns the string representation. 10413 // 10414 // API parameter values that are decorated as "sensitive" in the API will not 10415 // be included in the string output. The member name will be present, but the 10416 // value will be replaced with "sensitive". 10417 func (s UnsupportedAvailabilityZoneException) String() string { 10418 return awsutil.Prettify(s) 10419 } 10420 10421 // GoString returns the string representation. 10422 // 10423 // API parameter values that are decorated as "sensitive" in the API will not 10424 // be included in the string output. The member name will be present, but the 10425 // value will be replaced with "sensitive". 10426 func (s UnsupportedAvailabilityZoneException) GoString() string { 10427 return s.String() 10428 } 10429 10430 func newErrorUnsupportedAvailabilityZoneException(v protocol.ResponseMetadata) error { 10431 return &UnsupportedAvailabilityZoneException{ 10432 RespMetadata: v, 10433 } 10434 } 10435 10436 // Code returns the exception type name. 10437 func (s *UnsupportedAvailabilityZoneException) Code() string { 10438 return "UnsupportedAvailabilityZoneException" 10439 } 10440 10441 // Message returns the exception's message. 10442 func (s *UnsupportedAvailabilityZoneException) Message() string { 10443 if s.Message_ != nil { 10444 return *s.Message_ 10445 } 10446 return "" 10447 } 10448 10449 // OrigErr always returns nil, satisfies awserr.Error interface. 10450 func (s *UnsupportedAvailabilityZoneException) OrigErr() error { 10451 return nil 10452 } 10453 10454 func (s *UnsupportedAvailabilityZoneException) Error() string { 10455 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10456 } 10457 10458 // Status code returns the HTTP status code for the request's response error. 10459 func (s *UnsupportedAvailabilityZoneException) StatusCode() int { 10460 return s.RespMetadata.StatusCode 10461 } 10462 10463 // RequestID returns the service's response RequestID for request. 10464 func (s *UnsupportedAvailabilityZoneException) RequestID() string { 10465 return s.RespMetadata.RequestID 10466 } 10467 10468 type UntagResourceInput struct { 10469 _ struct{} `type:"structure" nopayload:"true"` 10470 10471 // The Amazon Resource Name (ARN) of the resource from which to delete tags. 10472 // Currently, the supported resources are Amazon EKS clusters and managed node 10473 // groups. 10474 // 10475 // ResourceArn is a required field 10476 ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` 10477 10478 // The keys of the tags to be removed. 10479 // 10480 // TagKeys is a required field 10481 TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` 10482 } 10483 10484 // String returns the string representation. 10485 // 10486 // API parameter values that are decorated as "sensitive" in the API will not 10487 // be included in the string output. The member name will be present, but the 10488 // value will be replaced with "sensitive". 10489 func (s UntagResourceInput) String() string { 10490 return awsutil.Prettify(s) 10491 } 10492 10493 // GoString returns the string representation. 10494 // 10495 // API parameter values that are decorated as "sensitive" in the API will not 10496 // be included in the string output. The member name will be present, but the 10497 // value will be replaced with "sensitive". 10498 func (s UntagResourceInput) GoString() string { 10499 return s.String() 10500 } 10501 10502 // Validate inspects the fields of the type to determine if they are valid. 10503 func (s *UntagResourceInput) Validate() error { 10504 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 10505 if s.ResourceArn == nil { 10506 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10507 } 10508 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10509 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10510 } 10511 if s.TagKeys == nil { 10512 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 10513 } 10514 if s.TagKeys != nil && len(s.TagKeys) < 1 { 10515 invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) 10516 } 10517 10518 if invalidParams.Len() > 0 { 10519 return invalidParams 10520 } 10521 return nil 10522 } 10523 10524 // SetResourceArn sets the ResourceArn field's value. 10525 func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 10526 s.ResourceArn = &v 10527 return s 10528 } 10529 10530 // SetTagKeys sets the TagKeys field's value. 10531 func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 10532 s.TagKeys = v 10533 return s 10534 } 10535 10536 type UntagResourceOutput struct { 10537 _ struct{} `type:"structure" nopayload:"true"` 10538 } 10539 10540 // String returns the string representation. 10541 // 10542 // API parameter values that are decorated as "sensitive" in the API will not 10543 // be included in the string output. The member name will be present, but the 10544 // value will be replaced with "sensitive". 10545 func (s UntagResourceOutput) String() string { 10546 return awsutil.Prettify(s) 10547 } 10548 10549 // GoString returns the string representation. 10550 // 10551 // API parameter values that are decorated as "sensitive" in the API will not 10552 // be included in the string output. The member name will be present, but the 10553 // value will be replaced with "sensitive". 10554 func (s UntagResourceOutput) GoString() string { 10555 return s.String() 10556 } 10557 10558 // An object representing an asynchronous update. 10559 type Update struct { 10560 _ struct{} `type:"structure"` 10561 10562 // The Unix epoch timestamp in seconds for when the update was created. 10563 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` 10564 10565 // Any errors associated with a Failed update. 10566 Errors []*ErrorDetail `locationName:"errors" type:"list"` 10567 10568 // A UUID that is used to track the update. 10569 Id *string `locationName:"id" type:"string"` 10570 10571 // A key-value map that contains the parameters associated with the update. 10572 Params []*UpdateParam `locationName:"params" type:"list"` 10573 10574 // The current status of the update. 10575 Status *string `locationName:"status" type:"string" enum:"UpdateStatus"` 10576 10577 // The type of the update. 10578 Type *string `locationName:"type" type:"string" enum:"UpdateType"` 10579 } 10580 10581 // String returns the string representation. 10582 // 10583 // API parameter values that are decorated as "sensitive" in the API will not 10584 // be included in the string output. The member name will be present, but the 10585 // value will be replaced with "sensitive". 10586 func (s Update) String() string { 10587 return awsutil.Prettify(s) 10588 } 10589 10590 // GoString returns the string representation. 10591 // 10592 // API parameter values that are decorated as "sensitive" in the API will not 10593 // be included in the string output. The member name will be present, but the 10594 // value will be replaced with "sensitive". 10595 func (s Update) GoString() string { 10596 return s.String() 10597 } 10598 10599 // SetCreatedAt sets the CreatedAt field's value. 10600 func (s *Update) SetCreatedAt(v time.Time) *Update { 10601 s.CreatedAt = &v 10602 return s 10603 } 10604 10605 // SetErrors sets the Errors field's value. 10606 func (s *Update) SetErrors(v []*ErrorDetail) *Update { 10607 s.Errors = v 10608 return s 10609 } 10610 10611 // SetId sets the Id field's value. 10612 func (s *Update) SetId(v string) *Update { 10613 s.Id = &v 10614 return s 10615 } 10616 10617 // SetParams sets the Params field's value. 10618 func (s *Update) SetParams(v []*UpdateParam) *Update { 10619 s.Params = v 10620 return s 10621 } 10622 10623 // SetStatus sets the Status field's value. 10624 func (s *Update) SetStatus(v string) *Update { 10625 s.Status = &v 10626 return s 10627 } 10628 10629 // SetType sets the Type field's value. 10630 func (s *Update) SetType(v string) *Update { 10631 s.Type = &v 10632 return s 10633 } 10634 10635 type UpdateAddonInput struct { 10636 _ struct{} `type:"structure"` 10637 10638 // The name of the add-on. The name must match one of the names returned by 10639 // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). 10640 // 10641 // AddonName is a required field 10642 AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` 10643 10644 // The version of the add-on. The version must match one of the versions returned 10645 // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). 10646 AddonVersion *string `locationName:"addonVersion" type:"string"` 10647 10648 // Unique, case-sensitive identifier that you provide to ensure the idempotency 10649 // of the request. 10650 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 10651 10652 // The name of the cluster. 10653 // 10654 // ClusterName is a required field 10655 ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 10656 10657 // How to resolve parameter value conflicts when applying the new version of 10658 // the add-on to the cluster. 10659 ResolveConflicts *string `locationName:"resolveConflicts" type:"string" enum:"ResolveConflicts"` 10660 10661 // The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's 10662 // service account. The role must be assigned the IAM permissions required by 10663 // the add-on. If you don't specify an existing IAM role, then the add-on uses 10664 // the permissions assigned to the node IAM role. For more information, see 10665 // Amazon EKS node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html) 10666 // in the Amazon EKS User Guide. 10667 // 10668 // To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) 10669 // provider created for your cluster. For more information, see Enabling IAM 10670 // roles for service accounts on your cluster (https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html) 10671 // in the Amazon EKS User Guide. 10672 ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" min:"1" type:"string"` 10673 } 10674 10675 // String returns the string representation. 10676 // 10677 // API parameter values that are decorated as "sensitive" in the API will not 10678 // be included in the string output. The member name will be present, but the 10679 // value will be replaced with "sensitive". 10680 func (s UpdateAddonInput) String() string { 10681 return awsutil.Prettify(s) 10682 } 10683 10684 // GoString returns the string representation. 10685 // 10686 // API parameter values that are decorated as "sensitive" in the API will not 10687 // be included in the string output. The member name will be present, but the 10688 // value will be replaced with "sensitive". 10689 func (s UpdateAddonInput) GoString() string { 10690 return s.String() 10691 } 10692 10693 // Validate inspects the fields of the type to determine if they are valid. 10694 func (s *UpdateAddonInput) Validate() error { 10695 invalidParams := request.ErrInvalidParams{Context: "UpdateAddonInput"} 10696 if s.AddonName == nil { 10697 invalidParams.Add(request.NewErrParamRequired("AddonName")) 10698 } 10699 if s.AddonName != nil && len(*s.AddonName) < 1 { 10700 invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) 10701 } 10702 if s.ClusterName == nil { 10703 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 10704 } 10705 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 10706 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 10707 } 10708 if s.ServiceAccountRoleArn != nil && len(*s.ServiceAccountRoleArn) < 1 { 10709 invalidParams.Add(request.NewErrParamMinLen("ServiceAccountRoleArn", 1)) 10710 } 10711 10712 if invalidParams.Len() > 0 { 10713 return invalidParams 10714 } 10715 return nil 10716 } 10717 10718 // SetAddonName sets the AddonName field's value. 10719 func (s *UpdateAddonInput) SetAddonName(v string) *UpdateAddonInput { 10720 s.AddonName = &v 10721 return s 10722 } 10723 10724 // SetAddonVersion sets the AddonVersion field's value. 10725 func (s *UpdateAddonInput) SetAddonVersion(v string) *UpdateAddonInput { 10726 s.AddonVersion = &v 10727 return s 10728 } 10729 10730 // SetClientRequestToken sets the ClientRequestToken field's value. 10731 func (s *UpdateAddonInput) SetClientRequestToken(v string) *UpdateAddonInput { 10732 s.ClientRequestToken = &v 10733 return s 10734 } 10735 10736 // SetClusterName sets the ClusterName field's value. 10737 func (s *UpdateAddonInput) SetClusterName(v string) *UpdateAddonInput { 10738 s.ClusterName = &v 10739 return s 10740 } 10741 10742 // SetResolveConflicts sets the ResolveConflicts field's value. 10743 func (s *UpdateAddonInput) SetResolveConflicts(v string) *UpdateAddonInput { 10744 s.ResolveConflicts = &v 10745 return s 10746 } 10747 10748 // SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. 10749 func (s *UpdateAddonInput) SetServiceAccountRoleArn(v string) *UpdateAddonInput { 10750 s.ServiceAccountRoleArn = &v 10751 return s 10752 } 10753 10754 type UpdateAddonOutput struct { 10755 _ struct{} `type:"structure"` 10756 10757 // An object representing an asynchronous update. 10758 Update *Update `locationName:"update" type:"structure"` 10759 } 10760 10761 // String returns the string representation. 10762 // 10763 // API parameter values that are decorated as "sensitive" in the API will not 10764 // be included in the string output. The member name will be present, but the 10765 // value will be replaced with "sensitive". 10766 func (s UpdateAddonOutput) String() string { 10767 return awsutil.Prettify(s) 10768 } 10769 10770 // GoString returns the string representation. 10771 // 10772 // API parameter values that are decorated as "sensitive" in the API will not 10773 // be included in the string output. The member name will be present, but the 10774 // value will be replaced with "sensitive". 10775 func (s UpdateAddonOutput) GoString() string { 10776 return s.String() 10777 } 10778 10779 // SetUpdate sets the Update field's value. 10780 func (s *UpdateAddonOutput) SetUpdate(v *Update) *UpdateAddonOutput { 10781 s.Update = v 10782 return s 10783 } 10784 10785 type UpdateClusterConfigInput struct { 10786 _ struct{} `type:"structure"` 10787 10788 // Unique, case-sensitive identifier that you provide to ensure the idempotency 10789 // of the request. 10790 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 10791 10792 // Enable or disable exporting the Kubernetes control plane logs for your cluster 10793 // to CloudWatch Logs. By default, cluster control plane logs aren't exported 10794 // to CloudWatch Logs. For more information, see Amazon EKS cluster control 10795 // plane logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) 10796 // in the Amazon EKS User Guide . 10797 // 10798 // CloudWatch Logs ingestion, archive storage, and data scanning rates apply 10799 // to exported control plane logs. For more information, see CloudWatch Pricing 10800 // (http://aws.amazon.com/cloudwatch/pricing/). 10801 Logging *Logging `locationName:"logging" type:"structure"` 10802 10803 // The name of the Amazon EKS cluster to update. 10804 // 10805 // Name is a required field 10806 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 10807 10808 // An object representing the VPC configuration to use for an Amazon EKS cluster. 10809 ResourcesVpcConfig *VpcConfigRequest `locationName:"resourcesVpcConfig" type:"structure"` 10810 } 10811 10812 // String returns the string representation. 10813 // 10814 // API parameter values that are decorated as "sensitive" in the API will not 10815 // be included in the string output. The member name will be present, but the 10816 // value will be replaced with "sensitive". 10817 func (s UpdateClusterConfigInput) String() string { 10818 return awsutil.Prettify(s) 10819 } 10820 10821 // GoString returns the string representation. 10822 // 10823 // API parameter values that are decorated as "sensitive" in the API will not 10824 // be included in the string output. The member name will be present, but the 10825 // value will be replaced with "sensitive". 10826 func (s UpdateClusterConfigInput) GoString() string { 10827 return s.String() 10828 } 10829 10830 // Validate inspects the fields of the type to determine if they are valid. 10831 func (s *UpdateClusterConfigInput) Validate() error { 10832 invalidParams := request.ErrInvalidParams{Context: "UpdateClusterConfigInput"} 10833 if s.Name == nil { 10834 invalidParams.Add(request.NewErrParamRequired("Name")) 10835 } 10836 if s.Name != nil && len(*s.Name) < 1 { 10837 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10838 } 10839 10840 if invalidParams.Len() > 0 { 10841 return invalidParams 10842 } 10843 return nil 10844 } 10845 10846 // SetClientRequestToken sets the ClientRequestToken field's value. 10847 func (s *UpdateClusterConfigInput) SetClientRequestToken(v string) *UpdateClusterConfigInput { 10848 s.ClientRequestToken = &v 10849 return s 10850 } 10851 10852 // SetLogging sets the Logging field's value. 10853 func (s *UpdateClusterConfigInput) SetLogging(v *Logging) *UpdateClusterConfigInput { 10854 s.Logging = v 10855 return s 10856 } 10857 10858 // SetName sets the Name field's value. 10859 func (s *UpdateClusterConfigInput) SetName(v string) *UpdateClusterConfigInput { 10860 s.Name = &v 10861 return s 10862 } 10863 10864 // SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. 10865 func (s *UpdateClusterConfigInput) SetResourcesVpcConfig(v *VpcConfigRequest) *UpdateClusterConfigInput { 10866 s.ResourcesVpcConfig = v 10867 return s 10868 } 10869 10870 type UpdateClusterConfigOutput struct { 10871 _ struct{} `type:"structure"` 10872 10873 // An object representing an asynchronous update. 10874 Update *Update `locationName:"update" type:"structure"` 10875 } 10876 10877 // String returns the string representation. 10878 // 10879 // API parameter values that are decorated as "sensitive" in the API will not 10880 // be included in the string output. The member name will be present, but the 10881 // value will be replaced with "sensitive". 10882 func (s UpdateClusterConfigOutput) String() string { 10883 return awsutil.Prettify(s) 10884 } 10885 10886 // GoString returns the string representation. 10887 // 10888 // API parameter values that are decorated as "sensitive" in the API will not 10889 // be included in the string output. The member name will be present, but the 10890 // value will be replaced with "sensitive". 10891 func (s UpdateClusterConfigOutput) GoString() string { 10892 return s.String() 10893 } 10894 10895 // SetUpdate sets the Update field's value. 10896 func (s *UpdateClusterConfigOutput) SetUpdate(v *Update) *UpdateClusterConfigOutput { 10897 s.Update = v 10898 return s 10899 } 10900 10901 type UpdateClusterVersionInput struct { 10902 _ struct{} `type:"structure"` 10903 10904 // Unique, case-sensitive identifier that you provide to ensure the idempotency 10905 // of the request. 10906 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 10907 10908 // The name of the Amazon EKS cluster to update. 10909 // 10910 // Name is a required field 10911 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 10912 10913 // The desired Kubernetes version following a successful update. 10914 // 10915 // Version is a required field 10916 Version *string `locationName:"version" type:"string" required:"true"` 10917 } 10918 10919 // String returns the string representation. 10920 // 10921 // API parameter values that are decorated as "sensitive" in the API will not 10922 // be included in the string output. The member name will be present, but the 10923 // value will be replaced with "sensitive". 10924 func (s UpdateClusterVersionInput) String() string { 10925 return awsutil.Prettify(s) 10926 } 10927 10928 // GoString returns the string representation. 10929 // 10930 // API parameter values that are decorated as "sensitive" in the API will not 10931 // be included in the string output. The member name will be present, but the 10932 // value will be replaced with "sensitive". 10933 func (s UpdateClusterVersionInput) GoString() string { 10934 return s.String() 10935 } 10936 10937 // Validate inspects the fields of the type to determine if they are valid. 10938 func (s *UpdateClusterVersionInput) Validate() error { 10939 invalidParams := request.ErrInvalidParams{Context: "UpdateClusterVersionInput"} 10940 if s.Name == nil { 10941 invalidParams.Add(request.NewErrParamRequired("Name")) 10942 } 10943 if s.Name != nil && len(*s.Name) < 1 { 10944 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10945 } 10946 if s.Version == nil { 10947 invalidParams.Add(request.NewErrParamRequired("Version")) 10948 } 10949 10950 if invalidParams.Len() > 0 { 10951 return invalidParams 10952 } 10953 return nil 10954 } 10955 10956 // SetClientRequestToken sets the ClientRequestToken field's value. 10957 func (s *UpdateClusterVersionInput) SetClientRequestToken(v string) *UpdateClusterVersionInput { 10958 s.ClientRequestToken = &v 10959 return s 10960 } 10961 10962 // SetName sets the Name field's value. 10963 func (s *UpdateClusterVersionInput) SetName(v string) *UpdateClusterVersionInput { 10964 s.Name = &v 10965 return s 10966 } 10967 10968 // SetVersion sets the Version field's value. 10969 func (s *UpdateClusterVersionInput) SetVersion(v string) *UpdateClusterVersionInput { 10970 s.Version = &v 10971 return s 10972 } 10973 10974 type UpdateClusterVersionOutput struct { 10975 _ struct{} `type:"structure"` 10976 10977 // The full description of the specified update 10978 Update *Update `locationName:"update" type:"structure"` 10979 } 10980 10981 // String returns the string representation. 10982 // 10983 // API parameter values that are decorated as "sensitive" in the API will not 10984 // be included in the string output. The member name will be present, but the 10985 // value will be replaced with "sensitive". 10986 func (s UpdateClusterVersionOutput) String() string { 10987 return awsutil.Prettify(s) 10988 } 10989 10990 // GoString returns the string representation. 10991 // 10992 // API parameter values that are decorated as "sensitive" in the API will not 10993 // be included in the string output. The member name will be present, but the 10994 // value will be replaced with "sensitive". 10995 func (s UpdateClusterVersionOutput) GoString() string { 10996 return s.String() 10997 } 10998 10999 // SetUpdate sets the Update field's value. 11000 func (s *UpdateClusterVersionOutput) SetUpdate(v *Update) *UpdateClusterVersionOutput { 11001 s.Update = v 11002 return s 11003 } 11004 11005 // An object representing a Kubernetes label change for a managed node group. 11006 type UpdateLabelsPayload struct { 11007 _ struct{} `type:"structure"` 11008 11009 // Kubernetes labels to be added or updated. 11010 AddOrUpdateLabels map[string]*string `locationName:"addOrUpdateLabels" type:"map"` 11011 11012 // Kubernetes labels to be removed. 11013 RemoveLabels []*string `locationName:"removeLabels" type:"list"` 11014 } 11015 11016 // String returns the string representation. 11017 // 11018 // API parameter values that are decorated as "sensitive" in the API will not 11019 // be included in the string output. The member name will be present, but the 11020 // value will be replaced with "sensitive". 11021 func (s UpdateLabelsPayload) String() string { 11022 return awsutil.Prettify(s) 11023 } 11024 11025 // GoString returns the string representation. 11026 // 11027 // API parameter values that are decorated as "sensitive" in the API will not 11028 // be included in the string output. The member name will be present, but the 11029 // value will be replaced with "sensitive". 11030 func (s UpdateLabelsPayload) GoString() string { 11031 return s.String() 11032 } 11033 11034 // SetAddOrUpdateLabels sets the AddOrUpdateLabels field's value. 11035 func (s *UpdateLabelsPayload) SetAddOrUpdateLabels(v map[string]*string) *UpdateLabelsPayload { 11036 s.AddOrUpdateLabels = v 11037 return s 11038 } 11039 11040 // SetRemoveLabels sets the RemoveLabels field's value. 11041 func (s *UpdateLabelsPayload) SetRemoveLabels(v []*string) *UpdateLabelsPayload { 11042 s.RemoveLabels = v 11043 return s 11044 } 11045 11046 type UpdateNodegroupConfigInput struct { 11047 _ struct{} `type:"structure"` 11048 11049 // Unique, case-sensitive identifier that you provide to ensure the idempotency 11050 // of the request. 11051 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 11052 11053 // The name of the Amazon EKS cluster that the managed node group resides in. 11054 // 11055 // ClusterName is a required field 11056 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 11057 11058 // The Kubernetes labels to be applied to the nodes in the node group after 11059 // the update. 11060 Labels *UpdateLabelsPayload `locationName:"labels" type:"structure"` 11061 11062 // The name of the managed node group to update. 11063 // 11064 // NodegroupName is a required field 11065 NodegroupName *string `location:"uri" locationName:"nodegroupName" type:"string" required:"true"` 11066 11067 // The scaling configuration details for the Auto Scaling group after the update. 11068 ScalingConfig *NodegroupScalingConfig `locationName:"scalingConfig" type:"structure"` 11069 11070 // The Kubernetes taints to be applied to the nodes in the node group after 11071 // the update. 11072 Taints *UpdateTaintsPayload `locationName:"taints" type:"structure"` 11073 11074 // The node group update configuration. 11075 UpdateConfig *NodegroupUpdateConfig `locationName:"updateConfig" type:"structure"` 11076 } 11077 11078 // String returns the string representation. 11079 // 11080 // API parameter values that are decorated as "sensitive" in the API will not 11081 // be included in the string output. The member name will be present, but the 11082 // value will be replaced with "sensitive". 11083 func (s UpdateNodegroupConfigInput) String() string { 11084 return awsutil.Prettify(s) 11085 } 11086 11087 // GoString returns the string representation. 11088 // 11089 // API parameter values that are decorated as "sensitive" in the API will not 11090 // be included in the string output. The member name will be present, but the 11091 // value will be replaced with "sensitive". 11092 func (s UpdateNodegroupConfigInput) GoString() string { 11093 return s.String() 11094 } 11095 11096 // Validate inspects the fields of the type to determine if they are valid. 11097 func (s *UpdateNodegroupConfigInput) Validate() error { 11098 invalidParams := request.ErrInvalidParams{Context: "UpdateNodegroupConfigInput"} 11099 if s.ClusterName == nil { 11100 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 11101 } 11102 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 11103 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 11104 } 11105 if s.NodegroupName == nil { 11106 invalidParams.Add(request.NewErrParamRequired("NodegroupName")) 11107 } 11108 if s.NodegroupName != nil && len(*s.NodegroupName) < 1 { 11109 invalidParams.Add(request.NewErrParamMinLen("NodegroupName", 1)) 11110 } 11111 if s.ScalingConfig != nil { 11112 if err := s.ScalingConfig.Validate(); err != nil { 11113 invalidParams.AddNested("ScalingConfig", err.(request.ErrInvalidParams)) 11114 } 11115 } 11116 if s.Taints != nil { 11117 if err := s.Taints.Validate(); err != nil { 11118 invalidParams.AddNested("Taints", err.(request.ErrInvalidParams)) 11119 } 11120 } 11121 if s.UpdateConfig != nil { 11122 if err := s.UpdateConfig.Validate(); err != nil { 11123 invalidParams.AddNested("UpdateConfig", err.(request.ErrInvalidParams)) 11124 } 11125 } 11126 11127 if invalidParams.Len() > 0 { 11128 return invalidParams 11129 } 11130 return nil 11131 } 11132 11133 // SetClientRequestToken sets the ClientRequestToken field's value. 11134 func (s *UpdateNodegroupConfigInput) SetClientRequestToken(v string) *UpdateNodegroupConfigInput { 11135 s.ClientRequestToken = &v 11136 return s 11137 } 11138 11139 // SetClusterName sets the ClusterName field's value. 11140 func (s *UpdateNodegroupConfigInput) SetClusterName(v string) *UpdateNodegroupConfigInput { 11141 s.ClusterName = &v 11142 return s 11143 } 11144 11145 // SetLabels sets the Labels field's value. 11146 func (s *UpdateNodegroupConfigInput) SetLabels(v *UpdateLabelsPayload) *UpdateNodegroupConfigInput { 11147 s.Labels = v 11148 return s 11149 } 11150 11151 // SetNodegroupName sets the NodegroupName field's value. 11152 func (s *UpdateNodegroupConfigInput) SetNodegroupName(v string) *UpdateNodegroupConfigInput { 11153 s.NodegroupName = &v 11154 return s 11155 } 11156 11157 // SetScalingConfig sets the ScalingConfig field's value. 11158 func (s *UpdateNodegroupConfigInput) SetScalingConfig(v *NodegroupScalingConfig) *UpdateNodegroupConfigInput { 11159 s.ScalingConfig = v 11160 return s 11161 } 11162 11163 // SetTaints sets the Taints field's value. 11164 func (s *UpdateNodegroupConfigInput) SetTaints(v *UpdateTaintsPayload) *UpdateNodegroupConfigInput { 11165 s.Taints = v 11166 return s 11167 } 11168 11169 // SetUpdateConfig sets the UpdateConfig field's value. 11170 func (s *UpdateNodegroupConfigInput) SetUpdateConfig(v *NodegroupUpdateConfig) *UpdateNodegroupConfigInput { 11171 s.UpdateConfig = v 11172 return s 11173 } 11174 11175 type UpdateNodegroupConfigOutput struct { 11176 _ struct{} `type:"structure"` 11177 11178 // An object representing an asynchronous update. 11179 Update *Update `locationName:"update" type:"structure"` 11180 } 11181 11182 // String returns the string representation. 11183 // 11184 // API parameter values that are decorated as "sensitive" in the API will not 11185 // be included in the string output. The member name will be present, but the 11186 // value will be replaced with "sensitive". 11187 func (s UpdateNodegroupConfigOutput) String() string { 11188 return awsutil.Prettify(s) 11189 } 11190 11191 // GoString returns the string representation. 11192 // 11193 // API parameter values that are decorated as "sensitive" in the API will not 11194 // be included in the string output. The member name will be present, but the 11195 // value will be replaced with "sensitive". 11196 func (s UpdateNodegroupConfigOutput) GoString() string { 11197 return s.String() 11198 } 11199 11200 // SetUpdate sets the Update field's value. 11201 func (s *UpdateNodegroupConfigOutput) SetUpdate(v *Update) *UpdateNodegroupConfigOutput { 11202 s.Update = v 11203 return s 11204 } 11205 11206 type UpdateNodegroupVersionInput struct { 11207 _ struct{} `type:"structure"` 11208 11209 // Unique, case-sensitive identifier that you provide to ensure the idempotency 11210 // of the request. 11211 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 11212 11213 // The name of the Amazon EKS cluster that is associated with the managed node 11214 // group to update. 11215 // 11216 // ClusterName is a required field 11217 ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` 11218 11219 // Force the update if the existing node group's pods are unable to be drained 11220 // due to a pod disruption budget issue. If an update fails because pods could 11221 // not be drained, you can force the update after it fails to terminate the 11222 // old node whether or not any pods are running on the node. 11223 Force *bool `locationName:"force" type:"boolean"` 11224 11225 // An object representing a node group's launch template specification. You 11226 // can only update a node group using a launch template if the node group was 11227 // originally deployed with a launch template. 11228 LaunchTemplate *LaunchTemplateSpecification `locationName:"launchTemplate" type:"structure"` 11229 11230 // The name of the managed node group to update. 11231 // 11232 // NodegroupName is a required field 11233 NodegroupName *string `location:"uri" locationName:"nodegroupName" type:"string" required:"true"` 11234 11235 // The AMI version of the Amazon EKS optimized AMI to use for the update. By 11236 // default, the latest available AMI version for the node group's Kubernetes 11237 // version is used. For more information, see Amazon EKS optimized Amazon Linux 11238 // 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) 11239 // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch 11240 // template uses a custom AMI, then don't specify releaseVersion, or the node 11241 // group update will fail. For more information about using launch templates 11242 // with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 11243 // in the Amazon EKS User Guide. 11244 ReleaseVersion *string `locationName:"releaseVersion" type:"string"` 11245 11246 // The Kubernetes version to update to. If no version is specified, then the 11247 // Kubernetes version of the node group does not change. You can specify the 11248 // Kubernetes version of the cluster to update the node group to the latest 11249 // AMI version of the cluster's Kubernetes version. If you specify launchTemplate, 11250 // and your launch template uses a custom AMI, then don't specify version, or 11251 // the node group update will fail. For more information about using launch 11252 // templates with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) 11253 // in the Amazon EKS User Guide. 11254 Version *string `locationName:"version" type:"string"` 11255 } 11256 11257 // String returns the string representation. 11258 // 11259 // API parameter values that are decorated as "sensitive" in the API will not 11260 // be included in the string output. The member name will be present, but the 11261 // value will be replaced with "sensitive". 11262 func (s UpdateNodegroupVersionInput) String() string { 11263 return awsutil.Prettify(s) 11264 } 11265 11266 // GoString returns the string representation. 11267 // 11268 // API parameter values that are decorated as "sensitive" in the API will not 11269 // be included in the string output. The member name will be present, but the 11270 // value will be replaced with "sensitive". 11271 func (s UpdateNodegroupVersionInput) GoString() string { 11272 return s.String() 11273 } 11274 11275 // Validate inspects the fields of the type to determine if they are valid. 11276 func (s *UpdateNodegroupVersionInput) Validate() error { 11277 invalidParams := request.ErrInvalidParams{Context: "UpdateNodegroupVersionInput"} 11278 if s.ClusterName == nil { 11279 invalidParams.Add(request.NewErrParamRequired("ClusterName")) 11280 } 11281 if s.ClusterName != nil && len(*s.ClusterName) < 1 { 11282 invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) 11283 } 11284 if s.NodegroupName == nil { 11285 invalidParams.Add(request.NewErrParamRequired("NodegroupName")) 11286 } 11287 if s.NodegroupName != nil && len(*s.NodegroupName) < 1 { 11288 invalidParams.Add(request.NewErrParamMinLen("NodegroupName", 1)) 11289 } 11290 11291 if invalidParams.Len() > 0 { 11292 return invalidParams 11293 } 11294 return nil 11295 } 11296 11297 // SetClientRequestToken sets the ClientRequestToken field's value. 11298 func (s *UpdateNodegroupVersionInput) SetClientRequestToken(v string) *UpdateNodegroupVersionInput { 11299 s.ClientRequestToken = &v 11300 return s 11301 } 11302 11303 // SetClusterName sets the ClusterName field's value. 11304 func (s *UpdateNodegroupVersionInput) SetClusterName(v string) *UpdateNodegroupVersionInput { 11305 s.ClusterName = &v 11306 return s 11307 } 11308 11309 // SetForce sets the Force field's value. 11310 func (s *UpdateNodegroupVersionInput) SetForce(v bool) *UpdateNodegroupVersionInput { 11311 s.Force = &v 11312 return s 11313 } 11314 11315 // SetLaunchTemplate sets the LaunchTemplate field's value. 11316 func (s *UpdateNodegroupVersionInput) SetLaunchTemplate(v *LaunchTemplateSpecification) *UpdateNodegroupVersionInput { 11317 s.LaunchTemplate = v 11318 return s 11319 } 11320 11321 // SetNodegroupName sets the NodegroupName field's value. 11322 func (s *UpdateNodegroupVersionInput) SetNodegroupName(v string) *UpdateNodegroupVersionInput { 11323 s.NodegroupName = &v 11324 return s 11325 } 11326 11327 // SetReleaseVersion sets the ReleaseVersion field's value. 11328 func (s *UpdateNodegroupVersionInput) SetReleaseVersion(v string) *UpdateNodegroupVersionInput { 11329 s.ReleaseVersion = &v 11330 return s 11331 } 11332 11333 // SetVersion sets the Version field's value. 11334 func (s *UpdateNodegroupVersionInput) SetVersion(v string) *UpdateNodegroupVersionInput { 11335 s.Version = &v 11336 return s 11337 } 11338 11339 type UpdateNodegroupVersionOutput struct { 11340 _ struct{} `type:"structure"` 11341 11342 // An object representing an asynchronous update. 11343 Update *Update `locationName:"update" type:"structure"` 11344 } 11345 11346 // String returns the string representation. 11347 // 11348 // API parameter values that are decorated as "sensitive" in the API will not 11349 // be included in the string output. The member name will be present, but the 11350 // value will be replaced with "sensitive". 11351 func (s UpdateNodegroupVersionOutput) String() string { 11352 return awsutil.Prettify(s) 11353 } 11354 11355 // GoString returns the string representation. 11356 // 11357 // API parameter values that are decorated as "sensitive" in the API will not 11358 // be included in the string output. The member name will be present, but the 11359 // value will be replaced with "sensitive". 11360 func (s UpdateNodegroupVersionOutput) GoString() string { 11361 return s.String() 11362 } 11363 11364 // SetUpdate sets the Update field's value. 11365 func (s *UpdateNodegroupVersionOutput) SetUpdate(v *Update) *UpdateNodegroupVersionOutput { 11366 s.Update = v 11367 return s 11368 } 11369 11370 // An object representing the details of an update request. 11371 type UpdateParam struct { 11372 _ struct{} `type:"structure"` 11373 11374 // The keys associated with an update request. 11375 Type *string `locationName:"type" type:"string" enum:"UpdateParamType"` 11376 11377 // The value of the keys submitted as part of an update request. 11378 Value *string `locationName:"value" type:"string"` 11379 } 11380 11381 // String returns the string representation. 11382 // 11383 // API parameter values that are decorated as "sensitive" in the API will not 11384 // be included in the string output. The member name will be present, but the 11385 // value will be replaced with "sensitive". 11386 func (s UpdateParam) String() string { 11387 return awsutil.Prettify(s) 11388 } 11389 11390 // GoString returns the string representation. 11391 // 11392 // API parameter values that are decorated as "sensitive" in the API will not 11393 // be included in the string output. The member name will be present, but the 11394 // value will be replaced with "sensitive". 11395 func (s UpdateParam) GoString() string { 11396 return s.String() 11397 } 11398 11399 // SetType sets the Type field's value. 11400 func (s *UpdateParam) SetType(v string) *UpdateParam { 11401 s.Type = &v 11402 return s 11403 } 11404 11405 // SetValue sets the Value field's value. 11406 func (s *UpdateParam) SetValue(v string) *UpdateParam { 11407 s.Value = &v 11408 return s 11409 } 11410 11411 // An object representing the details of an update to a taints payload. 11412 type UpdateTaintsPayload struct { 11413 _ struct{} `type:"structure"` 11414 11415 // Kubernetes taints to be added or updated. 11416 AddOrUpdateTaints []*Taint `locationName:"addOrUpdateTaints" type:"list"` 11417 11418 // Kubernetes taints to be removed. 11419 RemoveTaints []*Taint `locationName:"removeTaints" type:"list"` 11420 } 11421 11422 // String returns the string representation. 11423 // 11424 // API parameter values that are decorated as "sensitive" in the API will not 11425 // be included in the string output. The member name will be present, but the 11426 // value will be replaced with "sensitive". 11427 func (s UpdateTaintsPayload) String() string { 11428 return awsutil.Prettify(s) 11429 } 11430 11431 // GoString returns the string representation. 11432 // 11433 // API parameter values that are decorated as "sensitive" in the API will not 11434 // be included in the string output. The member name will be present, but the 11435 // value will be replaced with "sensitive". 11436 func (s UpdateTaintsPayload) GoString() string { 11437 return s.String() 11438 } 11439 11440 // Validate inspects the fields of the type to determine if they are valid. 11441 func (s *UpdateTaintsPayload) Validate() error { 11442 invalidParams := request.ErrInvalidParams{Context: "UpdateTaintsPayload"} 11443 if s.AddOrUpdateTaints != nil { 11444 for i, v := range s.AddOrUpdateTaints { 11445 if v == nil { 11446 continue 11447 } 11448 if err := v.Validate(); err != nil { 11449 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOrUpdateTaints", i), err.(request.ErrInvalidParams)) 11450 } 11451 } 11452 } 11453 if s.RemoveTaints != nil { 11454 for i, v := range s.RemoveTaints { 11455 if v == nil { 11456 continue 11457 } 11458 if err := v.Validate(); err != nil { 11459 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RemoveTaints", i), err.(request.ErrInvalidParams)) 11460 } 11461 } 11462 } 11463 11464 if invalidParams.Len() > 0 { 11465 return invalidParams 11466 } 11467 return nil 11468 } 11469 11470 // SetAddOrUpdateTaints sets the AddOrUpdateTaints field's value. 11471 func (s *UpdateTaintsPayload) SetAddOrUpdateTaints(v []*Taint) *UpdateTaintsPayload { 11472 s.AddOrUpdateTaints = v 11473 return s 11474 } 11475 11476 // SetRemoveTaints sets the RemoveTaints field's value. 11477 func (s *UpdateTaintsPayload) SetRemoveTaints(v []*Taint) *UpdateTaintsPayload { 11478 s.RemoveTaints = v 11479 return s 11480 } 11481 11482 // An object representing the VPC configuration to use for an Amazon EKS cluster. 11483 type VpcConfigRequest struct { 11484 _ struct{} `type:"structure"` 11485 11486 // Set this value to true to enable private access for your cluster's Kubernetes 11487 // API server endpoint. If you enable private access, Kubernetes API requests 11488 // from within your cluster's VPC use the private VPC endpoint. The default 11489 // value for this parameter is false, which disables private access for your 11490 // Kubernetes API server. If you disable private access and you have nodes or 11491 // Fargate pods in the cluster, then ensure that publicAccessCidrs includes 11492 // the necessary CIDR blocks for communication with the nodes or Fargate pods. 11493 // For more information, see Amazon EKS cluster endpoint access control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 11494 // in the Amazon EKS User Guide . 11495 EndpointPrivateAccess *bool `locationName:"endpointPrivateAccess" type:"boolean"` 11496 11497 // Set this value to false to disable public access to your cluster's Kubernetes 11498 // API server endpoint. If you disable public access, your cluster's Kubernetes 11499 // API server can only receive requests from within the cluster VPC. The default 11500 // value for this parameter is true, which enables public access for your Kubernetes 11501 // API server. For more information, see Amazon EKS cluster endpoint access 11502 // control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 11503 // in the Amazon EKS User Guide . 11504 EndpointPublicAccess *bool `locationName:"endpointPublicAccess" type:"boolean"` 11505 11506 // The CIDR blocks that are allowed access to your cluster's public Kubernetes 11507 // API server endpoint. Communication to the endpoint from addresses outside 11508 // of the CIDR blocks that you specify is denied. The default value is 0.0.0.0/0. 11509 // If you've disabled private endpoint access and you have nodes or Fargate 11510 // pods in the cluster, then ensure that you specify the necessary CIDR blocks. 11511 // For more information, see Amazon EKS cluster endpoint access control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 11512 // in the Amazon EKS User Guide . 11513 PublicAccessCidrs []*string `locationName:"publicAccessCidrs" type:"list"` 11514 11515 // Specify one or more security groups for the cross-account elastic network 11516 // interfaces that Amazon EKS creates to use that allow communication between 11517 // your nodes and the Kubernetes control plane. If you don't specify any security 11518 // groups, then familiarize yourself with the difference between Amazon EKS 11519 // defaults for clusters deployed with Kubernetes: 11520 // 11521 // * 1.14 Amazon EKS platform version eks.2 and earlier 11522 // 11523 // * 1.14 Amazon EKS platform version eks.3 and later 11524 // 11525 // For more information, see Amazon EKS security group considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) 11526 // in the Amazon EKS User Guide . 11527 SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` 11528 11529 // Specify subnets for your Amazon EKS nodes. Amazon EKS creates cross-account 11530 // elastic network interfaces in these subnets to allow communication between 11531 // your nodes and the Kubernetes control plane. 11532 SubnetIds []*string `locationName:"subnetIds" type:"list"` 11533 } 11534 11535 // String returns the string representation. 11536 // 11537 // API parameter values that are decorated as "sensitive" in the API will not 11538 // be included in the string output. The member name will be present, but the 11539 // value will be replaced with "sensitive". 11540 func (s VpcConfigRequest) String() string { 11541 return awsutil.Prettify(s) 11542 } 11543 11544 // GoString returns the string representation. 11545 // 11546 // API parameter values that are decorated as "sensitive" in the API will not 11547 // be included in the string output. The member name will be present, but the 11548 // value will be replaced with "sensitive". 11549 func (s VpcConfigRequest) GoString() string { 11550 return s.String() 11551 } 11552 11553 // SetEndpointPrivateAccess sets the EndpointPrivateAccess field's value. 11554 func (s *VpcConfigRequest) SetEndpointPrivateAccess(v bool) *VpcConfigRequest { 11555 s.EndpointPrivateAccess = &v 11556 return s 11557 } 11558 11559 // SetEndpointPublicAccess sets the EndpointPublicAccess field's value. 11560 func (s *VpcConfigRequest) SetEndpointPublicAccess(v bool) *VpcConfigRequest { 11561 s.EndpointPublicAccess = &v 11562 return s 11563 } 11564 11565 // SetPublicAccessCidrs sets the PublicAccessCidrs field's value. 11566 func (s *VpcConfigRequest) SetPublicAccessCidrs(v []*string) *VpcConfigRequest { 11567 s.PublicAccessCidrs = v 11568 return s 11569 } 11570 11571 // SetSecurityGroupIds sets the SecurityGroupIds field's value. 11572 func (s *VpcConfigRequest) SetSecurityGroupIds(v []*string) *VpcConfigRequest { 11573 s.SecurityGroupIds = v 11574 return s 11575 } 11576 11577 // SetSubnetIds sets the SubnetIds field's value. 11578 func (s *VpcConfigRequest) SetSubnetIds(v []*string) *VpcConfigRequest { 11579 s.SubnetIds = v 11580 return s 11581 } 11582 11583 // An object representing an Amazon EKS cluster VPC configuration response. 11584 type VpcConfigResponse struct { 11585 _ struct{} `type:"structure"` 11586 11587 // The cluster security group that was created by Amazon EKS for the cluster. 11588 // Managed node groups use this security group for control-plane-to-data-plane 11589 // communication. 11590 ClusterSecurityGroupId *string `locationName:"clusterSecurityGroupId" type:"string"` 11591 11592 // This parameter indicates whether the Amazon EKS private API server endpoint 11593 // is enabled. If the Amazon EKS private API server endpoint is enabled, Kubernetes 11594 // API requests that originate from within your cluster's VPC use the private 11595 // VPC endpoint instead of traversing the internet. If this value is disabled 11596 // and you have nodes or Fargate pods in the cluster, then ensure that publicAccessCidrs 11597 // includes the necessary CIDR blocks for communication with the nodes or Fargate 11598 // pods. For more information, see Amazon EKS cluster endpoint access control 11599 // (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 11600 // in the Amazon EKS User Guide . 11601 EndpointPrivateAccess *bool `locationName:"endpointPrivateAccess" type:"boolean"` 11602 11603 // This parameter indicates whether the Amazon EKS public API server endpoint 11604 // is enabled. If the Amazon EKS public API server endpoint is disabled, your 11605 // cluster's Kubernetes API server can only receive requests that originate 11606 // from within the cluster VPC. 11607 EndpointPublicAccess *bool `locationName:"endpointPublicAccess" type:"boolean"` 11608 11609 // The CIDR blocks that are allowed access to your cluster's public Kubernetes 11610 // API server endpoint. Communication to the endpoint from addresses outside 11611 // of the listed CIDR blocks is denied. The default value is 0.0.0.0/0. If you've 11612 // disabled private endpoint access and you have nodes or Fargate pods in the 11613 // cluster, then ensure that the necessary CIDR blocks are listed. For more 11614 // information, see Amazon EKS cluster endpoint access control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) 11615 // in the Amazon EKS User Guide . 11616 PublicAccessCidrs []*string `locationName:"publicAccessCidrs" type:"list"` 11617 11618 // The security groups associated with the cross-account elastic network interfaces 11619 // that are used to allow communication between your nodes and the Kubernetes 11620 // control plane. 11621 SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` 11622 11623 // The subnets associated with your cluster. 11624 SubnetIds []*string `locationName:"subnetIds" type:"list"` 11625 11626 // The VPC associated with your cluster. 11627 VpcId *string `locationName:"vpcId" type:"string"` 11628 } 11629 11630 // String returns the string representation. 11631 // 11632 // API parameter values that are decorated as "sensitive" in the API will not 11633 // be included in the string output. The member name will be present, but the 11634 // value will be replaced with "sensitive". 11635 func (s VpcConfigResponse) String() string { 11636 return awsutil.Prettify(s) 11637 } 11638 11639 // GoString returns the string representation. 11640 // 11641 // API parameter values that are decorated as "sensitive" in the API will not 11642 // be included in the string output. The member name will be present, but the 11643 // value will be replaced with "sensitive". 11644 func (s VpcConfigResponse) GoString() string { 11645 return s.String() 11646 } 11647 11648 // SetClusterSecurityGroupId sets the ClusterSecurityGroupId field's value. 11649 func (s *VpcConfigResponse) SetClusterSecurityGroupId(v string) *VpcConfigResponse { 11650 s.ClusterSecurityGroupId = &v 11651 return s 11652 } 11653 11654 // SetEndpointPrivateAccess sets the EndpointPrivateAccess field's value. 11655 func (s *VpcConfigResponse) SetEndpointPrivateAccess(v bool) *VpcConfigResponse { 11656 s.EndpointPrivateAccess = &v 11657 return s 11658 } 11659 11660 // SetEndpointPublicAccess sets the EndpointPublicAccess field's value. 11661 func (s *VpcConfigResponse) SetEndpointPublicAccess(v bool) *VpcConfigResponse { 11662 s.EndpointPublicAccess = &v 11663 return s 11664 } 11665 11666 // SetPublicAccessCidrs sets the PublicAccessCidrs field's value. 11667 func (s *VpcConfigResponse) SetPublicAccessCidrs(v []*string) *VpcConfigResponse { 11668 s.PublicAccessCidrs = v 11669 return s 11670 } 11671 11672 // SetSecurityGroupIds sets the SecurityGroupIds field's value. 11673 func (s *VpcConfigResponse) SetSecurityGroupIds(v []*string) *VpcConfigResponse { 11674 s.SecurityGroupIds = v 11675 return s 11676 } 11677 11678 // SetSubnetIds sets the SubnetIds field's value. 11679 func (s *VpcConfigResponse) SetSubnetIds(v []*string) *VpcConfigResponse { 11680 s.SubnetIds = v 11681 return s 11682 } 11683 11684 // SetVpcId sets the VpcId field's value. 11685 func (s *VpcConfigResponse) SetVpcId(v string) *VpcConfigResponse { 11686 s.VpcId = &v 11687 return s 11688 } 11689 11690 const ( 11691 // AMITypesAl2X8664 is a AMITypes enum value 11692 AMITypesAl2X8664 = "AL2_x86_64" 11693 11694 // AMITypesAl2X8664Gpu is a AMITypes enum value 11695 AMITypesAl2X8664Gpu = "AL2_x86_64_GPU" 11696 11697 // AMITypesAl2Arm64 is a AMITypes enum value 11698 AMITypesAl2Arm64 = "AL2_ARM_64" 11699 11700 // AMITypesCustom is a AMITypes enum value 11701 AMITypesCustom = "CUSTOM" 11702 ) 11703 11704 // AMITypes_Values returns all elements of the AMITypes enum 11705 func AMITypes_Values() []string { 11706 return []string{ 11707 AMITypesAl2X8664, 11708 AMITypesAl2X8664Gpu, 11709 AMITypesAl2Arm64, 11710 AMITypesCustom, 11711 } 11712 } 11713 11714 const ( 11715 // AddonIssueCodeAccessDenied is a AddonIssueCode enum value 11716 AddonIssueCodeAccessDenied = "AccessDenied" 11717 11718 // AddonIssueCodeInternalFailure is a AddonIssueCode enum value 11719 AddonIssueCodeInternalFailure = "InternalFailure" 11720 11721 // AddonIssueCodeClusterUnreachable is a AddonIssueCode enum value 11722 AddonIssueCodeClusterUnreachable = "ClusterUnreachable" 11723 11724 // AddonIssueCodeInsufficientNumberOfReplicas is a AddonIssueCode enum value 11725 AddonIssueCodeInsufficientNumberOfReplicas = "InsufficientNumberOfReplicas" 11726 11727 // AddonIssueCodeConfigurationConflict is a AddonIssueCode enum value 11728 AddonIssueCodeConfigurationConflict = "ConfigurationConflict" 11729 11730 // AddonIssueCodeAdmissionRequestDenied is a AddonIssueCode enum value 11731 AddonIssueCodeAdmissionRequestDenied = "AdmissionRequestDenied" 11732 11733 // AddonIssueCodeUnsupportedAddonModification is a AddonIssueCode enum value 11734 AddonIssueCodeUnsupportedAddonModification = "UnsupportedAddonModification" 11735 11736 // AddonIssueCodeK8sResourceNotFound is a AddonIssueCode enum value 11737 AddonIssueCodeK8sResourceNotFound = "K8sResourceNotFound" 11738 ) 11739 11740 // AddonIssueCode_Values returns all elements of the AddonIssueCode enum 11741 func AddonIssueCode_Values() []string { 11742 return []string{ 11743 AddonIssueCodeAccessDenied, 11744 AddonIssueCodeInternalFailure, 11745 AddonIssueCodeClusterUnreachable, 11746 AddonIssueCodeInsufficientNumberOfReplicas, 11747 AddonIssueCodeConfigurationConflict, 11748 AddonIssueCodeAdmissionRequestDenied, 11749 AddonIssueCodeUnsupportedAddonModification, 11750 AddonIssueCodeK8sResourceNotFound, 11751 } 11752 } 11753 11754 const ( 11755 // AddonStatusCreating is a AddonStatus enum value 11756 AddonStatusCreating = "CREATING" 11757 11758 // AddonStatusActive is a AddonStatus enum value 11759 AddonStatusActive = "ACTIVE" 11760 11761 // AddonStatusCreateFailed is a AddonStatus enum value 11762 AddonStatusCreateFailed = "CREATE_FAILED" 11763 11764 // AddonStatusUpdating is a AddonStatus enum value 11765 AddonStatusUpdating = "UPDATING" 11766 11767 // AddonStatusDeleting is a AddonStatus enum value 11768 AddonStatusDeleting = "DELETING" 11769 11770 // AddonStatusDeleteFailed is a AddonStatus enum value 11771 AddonStatusDeleteFailed = "DELETE_FAILED" 11772 11773 // AddonStatusDegraded is a AddonStatus enum value 11774 AddonStatusDegraded = "DEGRADED" 11775 ) 11776 11777 // AddonStatus_Values returns all elements of the AddonStatus enum 11778 func AddonStatus_Values() []string { 11779 return []string{ 11780 AddonStatusCreating, 11781 AddonStatusActive, 11782 AddonStatusCreateFailed, 11783 AddonStatusUpdating, 11784 AddonStatusDeleting, 11785 AddonStatusDeleteFailed, 11786 AddonStatusDegraded, 11787 } 11788 } 11789 11790 const ( 11791 // CapacityTypesOnDemand is a CapacityTypes enum value 11792 CapacityTypesOnDemand = "ON_DEMAND" 11793 11794 // CapacityTypesSpot is a CapacityTypes enum value 11795 CapacityTypesSpot = "SPOT" 11796 ) 11797 11798 // CapacityTypes_Values returns all elements of the CapacityTypes enum 11799 func CapacityTypes_Values() []string { 11800 return []string{ 11801 CapacityTypesOnDemand, 11802 CapacityTypesSpot, 11803 } 11804 } 11805 11806 const ( 11807 // ClusterStatusCreating is a ClusterStatus enum value 11808 ClusterStatusCreating = "CREATING" 11809 11810 // ClusterStatusActive is a ClusterStatus enum value 11811 ClusterStatusActive = "ACTIVE" 11812 11813 // ClusterStatusDeleting is a ClusterStatus enum value 11814 ClusterStatusDeleting = "DELETING" 11815 11816 // ClusterStatusFailed is a ClusterStatus enum value 11817 ClusterStatusFailed = "FAILED" 11818 11819 // ClusterStatusUpdating is a ClusterStatus enum value 11820 ClusterStatusUpdating = "UPDATING" 11821 11822 // ClusterStatusPending is a ClusterStatus enum value 11823 ClusterStatusPending = "PENDING" 11824 ) 11825 11826 // ClusterStatus_Values returns all elements of the ClusterStatus enum 11827 func ClusterStatus_Values() []string { 11828 return []string{ 11829 ClusterStatusCreating, 11830 ClusterStatusActive, 11831 ClusterStatusDeleting, 11832 ClusterStatusFailed, 11833 ClusterStatusUpdating, 11834 ClusterStatusPending, 11835 } 11836 } 11837 11838 const ( 11839 // ConfigStatusCreating is a ConfigStatus enum value 11840 ConfigStatusCreating = "CREATING" 11841 11842 // ConfigStatusDeleting is a ConfigStatus enum value 11843 ConfigStatusDeleting = "DELETING" 11844 11845 // ConfigStatusActive is a ConfigStatus enum value 11846 ConfigStatusActive = "ACTIVE" 11847 ) 11848 11849 // ConfigStatus_Values returns all elements of the ConfigStatus enum 11850 func ConfigStatus_Values() []string { 11851 return []string{ 11852 ConfigStatusCreating, 11853 ConfigStatusDeleting, 11854 ConfigStatusActive, 11855 } 11856 } 11857 11858 const ( 11859 // ConnectorConfigProviderEksAnywhere is a ConnectorConfigProvider enum value 11860 ConnectorConfigProviderEksAnywhere = "EKS_ANYWHERE" 11861 11862 // ConnectorConfigProviderAnthos is a ConnectorConfigProvider enum value 11863 ConnectorConfigProviderAnthos = "ANTHOS" 11864 11865 // ConnectorConfigProviderGke is a ConnectorConfigProvider enum value 11866 ConnectorConfigProviderGke = "GKE" 11867 11868 // ConnectorConfigProviderAks is a ConnectorConfigProvider enum value 11869 ConnectorConfigProviderAks = "AKS" 11870 11871 // ConnectorConfigProviderOpenshift is a ConnectorConfigProvider enum value 11872 ConnectorConfigProviderOpenshift = "OPENSHIFT" 11873 11874 // ConnectorConfigProviderTanzu is a ConnectorConfigProvider enum value 11875 ConnectorConfigProviderTanzu = "TANZU" 11876 11877 // ConnectorConfigProviderRancher is a ConnectorConfigProvider enum value 11878 ConnectorConfigProviderRancher = "RANCHER" 11879 11880 // ConnectorConfigProviderEc2 is a ConnectorConfigProvider enum value 11881 ConnectorConfigProviderEc2 = "EC2" 11882 11883 // ConnectorConfigProviderOther is a ConnectorConfigProvider enum value 11884 ConnectorConfigProviderOther = "OTHER" 11885 ) 11886 11887 // ConnectorConfigProvider_Values returns all elements of the ConnectorConfigProvider enum 11888 func ConnectorConfigProvider_Values() []string { 11889 return []string{ 11890 ConnectorConfigProviderEksAnywhere, 11891 ConnectorConfigProviderAnthos, 11892 ConnectorConfigProviderGke, 11893 ConnectorConfigProviderAks, 11894 ConnectorConfigProviderOpenshift, 11895 ConnectorConfigProviderTanzu, 11896 ConnectorConfigProviderRancher, 11897 ConnectorConfigProviderEc2, 11898 ConnectorConfigProviderOther, 11899 } 11900 } 11901 11902 const ( 11903 // ErrorCodeSubnetNotFound is a ErrorCode enum value 11904 ErrorCodeSubnetNotFound = "SubnetNotFound" 11905 11906 // ErrorCodeSecurityGroupNotFound is a ErrorCode enum value 11907 ErrorCodeSecurityGroupNotFound = "SecurityGroupNotFound" 11908 11909 // ErrorCodeEniLimitReached is a ErrorCode enum value 11910 ErrorCodeEniLimitReached = "EniLimitReached" 11911 11912 // ErrorCodeIpNotAvailable is a ErrorCode enum value 11913 ErrorCodeIpNotAvailable = "IpNotAvailable" 11914 11915 // ErrorCodeAccessDenied is a ErrorCode enum value 11916 ErrorCodeAccessDenied = "AccessDenied" 11917 11918 // ErrorCodeOperationNotPermitted is a ErrorCode enum value 11919 ErrorCodeOperationNotPermitted = "OperationNotPermitted" 11920 11921 // ErrorCodeVpcIdNotFound is a ErrorCode enum value 11922 ErrorCodeVpcIdNotFound = "VpcIdNotFound" 11923 11924 // ErrorCodeUnknown is a ErrorCode enum value 11925 ErrorCodeUnknown = "Unknown" 11926 11927 // ErrorCodeNodeCreationFailure is a ErrorCode enum value 11928 ErrorCodeNodeCreationFailure = "NodeCreationFailure" 11929 11930 // ErrorCodePodEvictionFailure is a ErrorCode enum value 11931 ErrorCodePodEvictionFailure = "PodEvictionFailure" 11932 11933 // ErrorCodeInsufficientFreeAddresses is a ErrorCode enum value 11934 ErrorCodeInsufficientFreeAddresses = "InsufficientFreeAddresses" 11935 11936 // ErrorCodeClusterUnreachable is a ErrorCode enum value 11937 ErrorCodeClusterUnreachable = "ClusterUnreachable" 11938 11939 // ErrorCodeInsufficientNumberOfReplicas is a ErrorCode enum value 11940 ErrorCodeInsufficientNumberOfReplicas = "InsufficientNumberOfReplicas" 11941 11942 // ErrorCodeConfigurationConflict is a ErrorCode enum value 11943 ErrorCodeConfigurationConflict = "ConfigurationConflict" 11944 11945 // ErrorCodeAdmissionRequestDenied is a ErrorCode enum value 11946 ErrorCodeAdmissionRequestDenied = "AdmissionRequestDenied" 11947 11948 // ErrorCodeUnsupportedAddonModification is a ErrorCode enum value 11949 ErrorCodeUnsupportedAddonModification = "UnsupportedAddonModification" 11950 11951 // ErrorCodeK8sResourceNotFound is a ErrorCode enum value 11952 ErrorCodeK8sResourceNotFound = "K8sResourceNotFound" 11953 ) 11954 11955 // ErrorCode_Values returns all elements of the ErrorCode enum 11956 func ErrorCode_Values() []string { 11957 return []string{ 11958 ErrorCodeSubnetNotFound, 11959 ErrorCodeSecurityGroupNotFound, 11960 ErrorCodeEniLimitReached, 11961 ErrorCodeIpNotAvailable, 11962 ErrorCodeAccessDenied, 11963 ErrorCodeOperationNotPermitted, 11964 ErrorCodeVpcIdNotFound, 11965 ErrorCodeUnknown, 11966 ErrorCodeNodeCreationFailure, 11967 ErrorCodePodEvictionFailure, 11968 ErrorCodeInsufficientFreeAddresses, 11969 ErrorCodeClusterUnreachable, 11970 ErrorCodeInsufficientNumberOfReplicas, 11971 ErrorCodeConfigurationConflict, 11972 ErrorCodeAdmissionRequestDenied, 11973 ErrorCodeUnsupportedAddonModification, 11974 ErrorCodeK8sResourceNotFound, 11975 } 11976 } 11977 11978 const ( 11979 // FargateProfileStatusCreating is a FargateProfileStatus enum value 11980 FargateProfileStatusCreating = "CREATING" 11981 11982 // FargateProfileStatusActive is a FargateProfileStatus enum value 11983 FargateProfileStatusActive = "ACTIVE" 11984 11985 // FargateProfileStatusDeleting is a FargateProfileStatus enum value 11986 FargateProfileStatusDeleting = "DELETING" 11987 11988 // FargateProfileStatusCreateFailed is a FargateProfileStatus enum value 11989 FargateProfileStatusCreateFailed = "CREATE_FAILED" 11990 11991 // FargateProfileStatusDeleteFailed is a FargateProfileStatus enum value 11992 FargateProfileStatusDeleteFailed = "DELETE_FAILED" 11993 ) 11994 11995 // FargateProfileStatus_Values returns all elements of the FargateProfileStatus enum 11996 func FargateProfileStatus_Values() []string { 11997 return []string{ 11998 FargateProfileStatusCreating, 11999 FargateProfileStatusActive, 12000 FargateProfileStatusDeleting, 12001 FargateProfileStatusCreateFailed, 12002 FargateProfileStatusDeleteFailed, 12003 } 12004 } 12005 12006 const ( 12007 // LogTypeApi is a LogType enum value 12008 LogTypeApi = "api" 12009 12010 // LogTypeAudit is a LogType enum value 12011 LogTypeAudit = "audit" 12012 12013 // LogTypeAuthenticator is a LogType enum value 12014 LogTypeAuthenticator = "authenticator" 12015 12016 // LogTypeControllerManager is a LogType enum value 12017 LogTypeControllerManager = "controllerManager" 12018 12019 // LogTypeScheduler is a LogType enum value 12020 LogTypeScheduler = "scheduler" 12021 ) 12022 12023 // LogType_Values returns all elements of the LogType enum 12024 func LogType_Values() []string { 12025 return []string{ 12026 LogTypeApi, 12027 LogTypeAudit, 12028 LogTypeAuthenticator, 12029 LogTypeControllerManager, 12030 LogTypeScheduler, 12031 } 12032 } 12033 12034 const ( 12035 // NodegroupIssueCodeAutoScalingGroupNotFound is a NodegroupIssueCode enum value 12036 NodegroupIssueCodeAutoScalingGroupNotFound = "AutoScalingGroupNotFound" 12037 12038 // NodegroupIssueCodeAutoScalingGroupInvalidConfiguration is a NodegroupIssueCode enum value 12039 NodegroupIssueCodeAutoScalingGroupInvalidConfiguration = "AutoScalingGroupInvalidConfiguration" 12040 12041 // NodegroupIssueCodeEc2securityGroupNotFound is a NodegroupIssueCode enum value 12042 NodegroupIssueCodeEc2securityGroupNotFound = "Ec2SecurityGroupNotFound" 12043 12044 // NodegroupIssueCodeEc2securityGroupDeletionFailure is a NodegroupIssueCode enum value 12045 NodegroupIssueCodeEc2securityGroupDeletionFailure = "Ec2SecurityGroupDeletionFailure" 12046 12047 // NodegroupIssueCodeEc2launchTemplateNotFound is a NodegroupIssueCode enum value 12048 NodegroupIssueCodeEc2launchTemplateNotFound = "Ec2LaunchTemplateNotFound" 12049 12050 // NodegroupIssueCodeEc2launchTemplateVersionMismatch is a NodegroupIssueCode enum value 12051 NodegroupIssueCodeEc2launchTemplateVersionMismatch = "Ec2LaunchTemplateVersionMismatch" 12052 12053 // NodegroupIssueCodeEc2subnetNotFound is a NodegroupIssueCode enum value 12054 NodegroupIssueCodeEc2subnetNotFound = "Ec2SubnetNotFound" 12055 12056 // NodegroupIssueCodeEc2subnetInvalidConfiguration is a NodegroupIssueCode enum value 12057 NodegroupIssueCodeEc2subnetInvalidConfiguration = "Ec2SubnetInvalidConfiguration" 12058 12059 // NodegroupIssueCodeIamInstanceProfileNotFound is a NodegroupIssueCode enum value 12060 NodegroupIssueCodeIamInstanceProfileNotFound = "IamInstanceProfileNotFound" 12061 12062 // NodegroupIssueCodeIamLimitExceeded is a NodegroupIssueCode enum value 12063 NodegroupIssueCodeIamLimitExceeded = "IamLimitExceeded" 12064 12065 // NodegroupIssueCodeIamNodeRoleNotFound is a NodegroupIssueCode enum value 12066 NodegroupIssueCodeIamNodeRoleNotFound = "IamNodeRoleNotFound" 12067 12068 // NodegroupIssueCodeNodeCreationFailure is a NodegroupIssueCode enum value 12069 NodegroupIssueCodeNodeCreationFailure = "NodeCreationFailure" 12070 12071 // NodegroupIssueCodeAsgInstanceLaunchFailures is a NodegroupIssueCode enum value 12072 NodegroupIssueCodeAsgInstanceLaunchFailures = "AsgInstanceLaunchFailures" 12073 12074 // NodegroupIssueCodeInstanceLimitExceeded is a NodegroupIssueCode enum value 12075 NodegroupIssueCodeInstanceLimitExceeded = "InstanceLimitExceeded" 12076 12077 // NodegroupIssueCodeInsufficientFreeAddresses is a NodegroupIssueCode enum value 12078 NodegroupIssueCodeInsufficientFreeAddresses = "InsufficientFreeAddresses" 12079 12080 // NodegroupIssueCodeAccessDenied is a NodegroupIssueCode enum value 12081 NodegroupIssueCodeAccessDenied = "AccessDenied" 12082 12083 // NodegroupIssueCodeInternalFailure is a NodegroupIssueCode enum value 12084 NodegroupIssueCodeInternalFailure = "InternalFailure" 12085 12086 // NodegroupIssueCodeClusterUnreachable is a NodegroupIssueCode enum value 12087 NodegroupIssueCodeClusterUnreachable = "ClusterUnreachable" 12088 ) 12089 12090 // NodegroupIssueCode_Values returns all elements of the NodegroupIssueCode enum 12091 func NodegroupIssueCode_Values() []string { 12092 return []string{ 12093 NodegroupIssueCodeAutoScalingGroupNotFound, 12094 NodegroupIssueCodeAutoScalingGroupInvalidConfiguration, 12095 NodegroupIssueCodeEc2securityGroupNotFound, 12096 NodegroupIssueCodeEc2securityGroupDeletionFailure, 12097 NodegroupIssueCodeEc2launchTemplateNotFound, 12098 NodegroupIssueCodeEc2launchTemplateVersionMismatch, 12099 NodegroupIssueCodeEc2subnetNotFound, 12100 NodegroupIssueCodeEc2subnetInvalidConfiguration, 12101 NodegroupIssueCodeIamInstanceProfileNotFound, 12102 NodegroupIssueCodeIamLimitExceeded, 12103 NodegroupIssueCodeIamNodeRoleNotFound, 12104 NodegroupIssueCodeNodeCreationFailure, 12105 NodegroupIssueCodeAsgInstanceLaunchFailures, 12106 NodegroupIssueCodeInstanceLimitExceeded, 12107 NodegroupIssueCodeInsufficientFreeAddresses, 12108 NodegroupIssueCodeAccessDenied, 12109 NodegroupIssueCodeInternalFailure, 12110 NodegroupIssueCodeClusterUnreachable, 12111 } 12112 } 12113 12114 const ( 12115 // NodegroupStatusCreating is a NodegroupStatus enum value 12116 NodegroupStatusCreating = "CREATING" 12117 12118 // NodegroupStatusActive is a NodegroupStatus enum value 12119 NodegroupStatusActive = "ACTIVE" 12120 12121 // NodegroupStatusUpdating is a NodegroupStatus enum value 12122 NodegroupStatusUpdating = "UPDATING" 12123 12124 // NodegroupStatusDeleting is a NodegroupStatus enum value 12125 NodegroupStatusDeleting = "DELETING" 12126 12127 // NodegroupStatusCreateFailed is a NodegroupStatus enum value 12128 NodegroupStatusCreateFailed = "CREATE_FAILED" 12129 12130 // NodegroupStatusDeleteFailed is a NodegroupStatus enum value 12131 NodegroupStatusDeleteFailed = "DELETE_FAILED" 12132 12133 // NodegroupStatusDegraded is a NodegroupStatus enum value 12134 NodegroupStatusDegraded = "DEGRADED" 12135 ) 12136 12137 // NodegroupStatus_Values returns all elements of the NodegroupStatus enum 12138 func NodegroupStatus_Values() []string { 12139 return []string{ 12140 NodegroupStatusCreating, 12141 NodegroupStatusActive, 12142 NodegroupStatusUpdating, 12143 NodegroupStatusDeleting, 12144 NodegroupStatusCreateFailed, 12145 NodegroupStatusDeleteFailed, 12146 NodegroupStatusDegraded, 12147 } 12148 } 12149 12150 const ( 12151 // ResolveConflictsOverwrite is a ResolveConflicts enum value 12152 ResolveConflictsOverwrite = "OVERWRITE" 12153 12154 // ResolveConflictsNone is a ResolveConflicts enum value 12155 ResolveConflictsNone = "NONE" 12156 ) 12157 12158 // ResolveConflicts_Values returns all elements of the ResolveConflicts enum 12159 func ResolveConflicts_Values() []string { 12160 return []string{ 12161 ResolveConflictsOverwrite, 12162 ResolveConflictsNone, 12163 } 12164 } 12165 12166 const ( 12167 // TaintEffectNoSchedule is a TaintEffect enum value 12168 TaintEffectNoSchedule = "NO_SCHEDULE" 12169 12170 // TaintEffectNoExecute is a TaintEffect enum value 12171 TaintEffectNoExecute = "NO_EXECUTE" 12172 12173 // TaintEffectPreferNoSchedule is a TaintEffect enum value 12174 TaintEffectPreferNoSchedule = "PREFER_NO_SCHEDULE" 12175 ) 12176 12177 // TaintEffect_Values returns all elements of the TaintEffect enum 12178 func TaintEffect_Values() []string { 12179 return []string{ 12180 TaintEffectNoSchedule, 12181 TaintEffectNoExecute, 12182 TaintEffectPreferNoSchedule, 12183 } 12184 } 12185 12186 const ( 12187 // UpdateParamTypeVersion is a UpdateParamType enum value 12188 UpdateParamTypeVersion = "Version" 12189 12190 // UpdateParamTypePlatformVersion is a UpdateParamType enum value 12191 UpdateParamTypePlatformVersion = "PlatformVersion" 12192 12193 // UpdateParamTypeEndpointPrivateAccess is a UpdateParamType enum value 12194 UpdateParamTypeEndpointPrivateAccess = "EndpointPrivateAccess" 12195 12196 // UpdateParamTypeEndpointPublicAccess is a UpdateParamType enum value 12197 UpdateParamTypeEndpointPublicAccess = "EndpointPublicAccess" 12198 12199 // UpdateParamTypeClusterLogging is a UpdateParamType enum value 12200 UpdateParamTypeClusterLogging = "ClusterLogging" 12201 12202 // UpdateParamTypeDesiredSize is a UpdateParamType enum value 12203 UpdateParamTypeDesiredSize = "DesiredSize" 12204 12205 // UpdateParamTypeLabelsToAdd is a UpdateParamType enum value 12206 UpdateParamTypeLabelsToAdd = "LabelsToAdd" 12207 12208 // UpdateParamTypeLabelsToRemove is a UpdateParamType enum value 12209 UpdateParamTypeLabelsToRemove = "LabelsToRemove" 12210 12211 // UpdateParamTypeTaintsToAdd is a UpdateParamType enum value 12212 UpdateParamTypeTaintsToAdd = "TaintsToAdd" 12213 12214 // UpdateParamTypeTaintsToRemove is a UpdateParamType enum value 12215 UpdateParamTypeTaintsToRemove = "TaintsToRemove" 12216 12217 // UpdateParamTypeMaxSize is a UpdateParamType enum value 12218 UpdateParamTypeMaxSize = "MaxSize" 12219 12220 // UpdateParamTypeMinSize is a UpdateParamType enum value 12221 UpdateParamTypeMinSize = "MinSize" 12222 12223 // UpdateParamTypeReleaseVersion is a UpdateParamType enum value 12224 UpdateParamTypeReleaseVersion = "ReleaseVersion" 12225 12226 // UpdateParamTypePublicAccessCidrs is a UpdateParamType enum value 12227 UpdateParamTypePublicAccessCidrs = "PublicAccessCidrs" 12228 12229 // UpdateParamTypeLaunchTemplateName is a UpdateParamType enum value 12230 UpdateParamTypeLaunchTemplateName = "LaunchTemplateName" 12231 12232 // UpdateParamTypeLaunchTemplateVersion is a UpdateParamType enum value 12233 UpdateParamTypeLaunchTemplateVersion = "LaunchTemplateVersion" 12234 12235 // UpdateParamTypeIdentityProviderConfig is a UpdateParamType enum value 12236 UpdateParamTypeIdentityProviderConfig = "IdentityProviderConfig" 12237 12238 // UpdateParamTypeEncryptionConfig is a UpdateParamType enum value 12239 UpdateParamTypeEncryptionConfig = "EncryptionConfig" 12240 12241 // UpdateParamTypeAddonVersion is a UpdateParamType enum value 12242 UpdateParamTypeAddonVersion = "AddonVersion" 12243 12244 // UpdateParamTypeServiceAccountRoleArn is a UpdateParamType enum value 12245 UpdateParamTypeServiceAccountRoleArn = "ServiceAccountRoleArn" 12246 12247 // UpdateParamTypeResolveConflicts is a UpdateParamType enum value 12248 UpdateParamTypeResolveConflicts = "ResolveConflicts" 12249 12250 // UpdateParamTypeMaxUnavailable is a UpdateParamType enum value 12251 UpdateParamTypeMaxUnavailable = "MaxUnavailable" 12252 12253 // UpdateParamTypeMaxUnavailablePercentage is a UpdateParamType enum value 12254 UpdateParamTypeMaxUnavailablePercentage = "MaxUnavailablePercentage" 12255 ) 12256 12257 // UpdateParamType_Values returns all elements of the UpdateParamType enum 12258 func UpdateParamType_Values() []string { 12259 return []string{ 12260 UpdateParamTypeVersion, 12261 UpdateParamTypePlatformVersion, 12262 UpdateParamTypeEndpointPrivateAccess, 12263 UpdateParamTypeEndpointPublicAccess, 12264 UpdateParamTypeClusterLogging, 12265 UpdateParamTypeDesiredSize, 12266 UpdateParamTypeLabelsToAdd, 12267 UpdateParamTypeLabelsToRemove, 12268 UpdateParamTypeTaintsToAdd, 12269 UpdateParamTypeTaintsToRemove, 12270 UpdateParamTypeMaxSize, 12271 UpdateParamTypeMinSize, 12272 UpdateParamTypeReleaseVersion, 12273 UpdateParamTypePublicAccessCidrs, 12274 UpdateParamTypeLaunchTemplateName, 12275 UpdateParamTypeLaunchTemplateVersion, 12276 UpdateParamTypeIdentityProviderConfig, 12277 UpdateParamTypeEncryptionConfig, 12278 UpdateParamTypeAddonVersion, 12279 UpdateParamTypeServiceAccountRoleArn, 12280 UpdateParamTypeResolveConflicts, 12281 UpdateParamTypeMaxUnavailable, 12282 UpdateParamTypeMaxUnavailablePercentage, 12283 } 12284 } 12285 12286 const ( 12287 // UpdateStatusInProgress is a UpdateStatus enum value 12288 UpdateStatusInProgress = "InProgress" 12289 12290 // UpdateStatusFailed is a UpdateStatus enum value 12291 UpdateStatusFailed = "Failed" 12292 12293 // UpdateStatusCancelled is a UpdateStatus enum value 12294 UpdateStatusCancelled = "Cancelled" 12295 12296 // UpdateStatusSuccessful is a UpdateStatus enum value 12297 UpdateStatusSuccessful = "Successful" 12298 ) 12299 12300 // UpdateStatus_Values returns all elements of the UpdateStatus enum 12301 func UpdateStatus_Values() []string { 12302 return []string{ 12303 UpdateStatusInProgress, 12304 UpdateStatusFailed, 12305 UpdateStatusCancelled, 12306 UpdateStatusSuccessful, 12307 } 12308 } 12309 12310 const ( 12311 // UpdateTypeVersionUpdate is a UpdateType enum value 12312 UpdateTypeVersionUpdate = "VersionUpdate" 12313 12314 // UpdateTypeEndpointAccessUpdate is a UpdateType enum value 12315 UpdateTypeEndpointAccessUpdate = "EndpointAccessUpdate" 12316 12317 // UpdateTypeLoggingUpdate is a UpdateType enum value 12318 UpdateTypeLoggingUpdate = "LoggingUpdate" 12319 12320 // UpdateTypeConfigUpdate is a UpdateType enum value 12321 UpdateTypeConfigUpdate = "ConfigUpdate" 12322 12323 // UpdateTypeAssociateIdentityProviderConfig is a UpdateType enum value 12324 UpdateTypeAssociateIdentityProviderConfig = "AssociateIdentityProviderConfig" 12325 12326 // UpdateTypeDisassociateIdentityProviderConfig is a UpdateType enum value 12327 UpdateTypeDisassociateIdentityProviderConfig = "DisassociateIdentityProviderConfig" 12328 12329 // UpdateTypeAssociateEncryptionConfig is a UpdateType enum value 12330 UpdateTypeAssociateEncryptionConfig = "AssociateEncryptionConfig" 12331 12332 // UpdateTypeAddonUpdate is a UpdateType enum value 12333 UpdateTypeAddonUpdate = "AddonUpdate" 12334 ) 12335 12336 // UpdateType_Values returns all elements of the UpdateType enum 12337 func UpdateType_Values() []string { 12338 return []string{ 12339 UpdateTypeVersionUpdate, 12340 UpdateTypeEndpointAccessUpdate, 12341 UpdateTypeLoggingUpdate, 12342 UpdateTypeConfigUpdate, 12343 UpdateTypeAssociateIdentityProviderConfig, 12344 UpdateTypeDisassociateIdentityProviderConfig, 12345 UpdateTypeAssociateEncryptionConfig, 12346 UpdateTypeAddonUpdate, 12347 } 12348 }