eks

package
v1.17.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 10, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package eks provides the client and types for making API requests to Amazon Elastic Container Service for Kubernetes.

Amazon Elastic Container Service for Kubernetes (Amazon EKS) is a managed service that makes it easy for you to run Kubernetes on AWS without needing to stand up or maintain your own Kubernetes control plane. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.

Amazon EKS runs up-to-date versions of the open-source Kubernetes software, so you can use all the existing plugins and tooling from the Kubernetes community. Applications running on Amazon EKS are fully compatible with applications running on any standard Kubernetes environment, whether running in on-premises data centers or public clouds. This means that you can easily migrate any standard Kubernetes application to Amazon EKS without any code modification required.

See https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01 for more information on this service.

See eks package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/eks/

Using the Client

To contact Amazon Elastic Container Service for Kubernetes with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Amazon Elastic Container Service for Kubernetes client EKS for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/eks/#New

Index

Examples

Constants

View Source
const (
	// ClusterStatusCreating is a ClusterStatus enum value
	ClusterStatusCreating = "CREATING"

	// ClusterStatusActive is a ClusterStatus enum value
	ClusterStatusActive = "ACTIVE"

	// ClusterStatusDeleting is a ClusterStatus enum value
	ClusterStatusDeleting = "DELETING"

	// ClusterStatusFailed is a ClusterStatus enum value
	ClusterStatusFailed = "FAILED"
)
View Source
const (
	// ErrorCodeSubnetNotFound is a ErrorCode enum value
	ErrorCodeSubnetNotFound = "SubnetNotFound"

	// ErrorCodeSecurityGroupNotFound is a ErrorCode enum value
	ErrorCodeSecurityGroupNotFound = "SecurityGroupNotFound"

	// ErrorCodeEniLimitReached is a ErrorCode enum value
	ErrorCodeEniLimitReached = "EniLimitReached"

	// ErrorCodeIpNotAvailable is a ErrorCode enum value
	ErrorCodeIpNotAvailable = "IpNotAvailable"

	// ErrorCodeAccessDenied is a ErrorCode enum value
	ErrorCodeAccessDenied = "AccessDenied"

	// ErrorCodeOperationNotPermitted is a ErrorCode enum value
	ErrorCodeOperationNotPermitted = "OperationNotPermitted"

	// ErrorCodeVpcIdNotFound is a ErrorCode enum value
	ErrorCodeVpcIdNotFound = "VpcIdNotFound"

	// ErrorCodeUnknown is a ErrorCode enum value
	ErrorCodeUnknown = "Unknown"
)
View Source
const (
	// UpdateParamTypeVersion is a UpdateParamType enum value
	UpdateParamTypeVersion = "Version"

	// UpdateParamTypePlatformVersion is a UpdateParamType enum value
	UpdateParamTypePlatformVersion = "PlatformVersion"
)
View Source
const (
	// UpdateStatusInProgress is a UpdateStatus enum value
	UpdateStatusInProgress = "InProgress"

	// UpdateStatusFailed is a UpdateStatus enum value
	UpdateStatusFailed = "Failed"

	// UpdateStatusCancelled is a UpdateStatus enum value
	UpdateStatusCancelled = "Cancelled"

	// UpdateStatusSuccessful is a UpdateStatus enum value
	UpdateStatusSuccessful = "Successful"
)
View Source
const (

	// ErrCodeClientException for service response error code
	// "ClientException".
	//
	// These errors are usually caused by a client action. Actions can include using
	// an action or resource on behalf of a user that doesn't have permissions to
	// use the action or resource or specifying an identifier that is not valid.
	ErrCodeClientException = "ClientException"

	// ErrCodeInvalidParameterException for service response error code
	// "InvalidParameterException".
	//
	// The specified parameter is invalid. Review the available parameters for the
	// API request.
	ErrCodeInvalidParameterException = "InvalidParameterException"

	// ErrCodeInvalidRequestException for service response error code
	// "InvalidRequestException".
	//
	// The request is invalid given the state of the cluster. Check the state of
	// the cluster and the associated operations.
	ErrCodeInvalidRequestException = "InvalidRequestException"

	// ErrCodeResourceInUseException for service response error code
	// "ResourceInUseException".
	//
	// The specified resource is in use.
	ErrCodeResourceInUseException = "ResourceInUseException"

	// ErrCodeResourceLimitExceededException for service response error code
	// "ResourceLimitExceededException".
	//
	// You have encountered a service limit on the specified resource.
	ErrCodeResourceLimitExceededException = "ResourceLimitExceededException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// The specified resource could not be found. You can view your available clusters
	// with ListClusters. Amazon EKS clusters are Region-specific.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"

	// ErrCodeServerException for service response error code
	// "ServerException".
	//
	// These errors are usually caused by a server-side issue.
	ErrCodeServerException = "ServerException"

	// ErrCodeServiceUnavailableException for service response error code
	// "ServiceUnavailableException".
	//
	// The service is unavailable. Back off and retry the operation.
	ErrCodeServiceUnavailableException = "ServiceUnavailableException"

	// ErrCodeUnsupportedAvailabilityZoneException for service response error code
	// "UnsupportedAvailabilityZoneException".
	//
	// At least one of your specified cluster subnets is in an Availability Zone
	// that does not support Amazon EKS. The exception output specifies the supported
	// Availability Zones for your account, from which you can choose subnets for
	// your cluster.
	ErrCodeUnsupportedAvailabilityZoneException = "UnsupportedAvailabilityZoneException"
)
View Source
const (
	ServiceName = "eks"       // Name of service.
	EndpointsID = ServiceName // ID to lookup a service endpoint with.
	ServiceID   = "EKS"       // ServiceID is a unique identifer of a specific service.
)

Service information constants

View Source
const (
	// UpdateTypeVersionUpdate is a UpdateType enum value
	UpdateTypeVersionUpdate = "VersionUpdate"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Certificate

type Certificate struct {

	// The base64 encoded certificate data required to communicate with your cluster.
	// Add this to the certificate-authority-data section of the kubeconfig file
	// for your cluster.
	Data *string `locationName:"data" type:"string"`
	// contains filtered or unexported fields
}

An object representing the certificate-authority-data for your cluster.

func (Certificate) GoString

func (s Certificate) GoString() string

GoString returns the string representation

func (*Certificate) SetData

func (s *Certificate) SetData(v string) *Certificate

SetData sets the Data field's value.

func (Certificate) String

func (s Certificate) String() string

String returns the string representation

type Cluster

type Cluster struct {

	// The Amazon Resource Name (ARN) of the cluster.
	Arn *string `locationName:"arn" type:"string"`

	// The certificate-authority-data for your cluster.
	CertificateAuthority *Certificate `locationName:"certificateAuthority" type:"structure"`

	// Unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `locationName:"clientRequestToken" type:"string"`

	// The Unix epoch timestamp in seconds for when the cluster was created.
	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`

	// The endpoint for your Kubernetes API server.
	Endpoint *string `locationName:"endpoint" type:"string"`

	// The name of the cluster.
	Name *string `locationName:"name" type:"string"`

	// The platform version of your Amazon EKS cluster. For more information, see
	// Platform Versions (http://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html)
	// in the Amazon EKS User Guide.
	PlatformVersion *string `locationName:"platformVersion" type:"string"`

	// The VPC subnets and security groups used by the cluster control plane. Amazon
	// EKS VPC resources have specific requirements to work properly with Kubernetes.
	// For more information, see Cluster VPC Considerations (http://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html)
	// and Cluster Security Group Considerations (http://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html)
	// in the Amazon EKS User Guide.
	ResourcesVpcConfig *VpcConfigResponse `locationName:"resourcesVpcConfig" type:"structure"`

	// The Amazon Resource Name (ARN) of the IAM role that provides permissions
	// for the Kubernetes control plane to make calls to AWS API operations on your
	// behalf.
	RoleArn *string `locationName:"roleArn" type:"string"`

	// The current status of the cluster.
	Status *string `locationName:"status" type:"string" enum:"ClusterStatus"`

	// The Kubernetes server version for the cluster.
	Version *string `locationName:"version" type:"string"`
	// contains filtered or unexported fields
}

An object representing an Amazon EKS cluster.

func (Cluster) GoString

func (s Cluster) GoString() string

GoString returns the string representation

func (*Cluster) SetArn

func (s *Cluster) SetArn(v string) *Cluster

SetArn sets the Arn field's value.

func (*Cluster) SetCertificateAuthority

func (s *Cluster) SetCertificateAuthority(v *Certificate) *Cluster

SetCertificateAuthority sets the CertificateAuthority field's value.

func (*Cluster) SetClientRequestToken

func (s *Cluster) SetClientRequestToken(v string) *Cluster

SetClientRequestToken sets the ClientRequestToken field's value.

func (*Cluster) SetCreatedAt

func (s *Cluster) SetCreatedAt(v time.Time) *Cluster

SetCreatedAt sets the CreatedAt field's value.

func (*Cluster) SetEndpoint

func (s *Cluster) SetEndpoint(v string) *Cluster

SetEndpoint sets the Endpoint field's value.

func (*Cluster) SetName

func (s *Cluster) SetName(v string) *Cluster

SetName sets the Name field's value.

func (*Cluster) SetPlatformVersion added in v1.17.5

func (s *Cluster) SetPlatformVersion(v string) *Cluster

SetPlatformVersion sets the PlatformVersion field's value.

func (*Cluster) SetResourcesVpcConfig

func (s *Cluster) SetResourcesVpcConfig(v *VpcConfigResponse) *Cluster

SetResourcesVpcConfig sets the ResourcesVpcConfig field's value.

func (*Cluster) SetRoleArn

func (s *Cluster) SetRoleArn(v string) *Cluster

SetRoleArn sets the RoleArn field's value.

func (*Cluster) SetStatus

func (s *Cluster) SetStatus(v string) *Cluster

SetStatus sets the Status field's value.

func (*Cluster) SetVersion

func (s *Cluster) SetVersion(v string) *Cluster

SetVersion sets the Version field's value.

func (Cluster) String

func (s Cluster) String() string

String returns the string representation

type CreateClusterInput

type CreateClusterInput struct {

	// Unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"`

	// The unique name to give to your cluster.
	//
	// Name is a required field
	Name *string `locationName:"name" min:"1" type:"string" required:"true"`

	// The VPC subnets and security groups used by the cluster control plane. Amazon
	// EKS VPC resources have specific requirements to work properly with Kubernetes.
	// For more information, see Cluster VPC Considerations (http://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html)
	// and Cluster Security Group Considerations (http://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html)
	// in the Amazon EKS User Guide. You must specify at least two subnets. You
	// may specify up to five security groups, but we recommend that you use a dedicated
	// security group for your cluster control plane.
	//
	// ResourcesVpcConfig is a required field
	ResourcesVpcConfig *VpcConfigRequest `locationName:"resourcesVpcConfig" type:"structure" required:"true"`

	// The Amazon Resource Name (ARN) of the IAM role that provides permissions
	// for Amazon EKS to make calls to other AWS API operations on your behalf.
	// For more information, see Amazon EKS Service IAM Role (http://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html)
	// in the Amazon EKS User Guide.
	//
	// RoleArn is a required field
	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`

	// The desired Kubernetes version for your cluster. If you do not specify a
	// value here, the latest version available in Amazon EKS is used.
	Version *string `locationName:"version" type:"string"`
	// contains filtered or unexported fields
}

func (CreateClusterInput) GoString

func (s CreateClusterInput) GoString() string

GoString returns the string representation

func (*CreateClusterInput) SetClientRequestToken

func (s *CreateClusterInput) SetClientRequestToken(v string) *CreateClusterInput

SetClientRequestToken sets the ClientRequestToken field's value.

func (*CreateClusterInput) SetName

SetName sets the Name field's value.

func (*CreateClusterInput) SetResourcesVpcConfig

func (s *CreateClusterInput) SetResourcesVpcConfig(v *VpcConfigRequest) *CreateClusterInput

SetResourcesVpcConfig sets the ResourcesVpcConfig field's value.

func (*CreateClusterInput) SetRoleArn

func (s *CreateClusterInput) SetRoleArn(v string) *CreateClusterInput

SetRoleArn sets the RoleArn field's value.

func (*CreateClusterInput) SetVersion

func (s *CreateClusterInput) SetVersion(v string) *CreateClusterInput

SetVersion sets the Version field's value.

func (CreateClusterInput) String

func (s CreateClusterInput) String() string

String returns the string representation

func (*CreateClusterInput) Validate

func (s *CreateClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateClusterOutput

type CreateClusterOutput struct {

	// The full description of your new cluster.
	Cluster *Cluster `locationName:"cluster" type:"structure"`
	// contains filtered or unexported fields
}

func (CreateClusterOutput) GoString

func (s CreateClusterOutput) GoString() string

GoString returns the string representation

func (*CreateClusterOutput) SetCluster

func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput

SetCluster sets the Cluster field's value.

func (CreateClusterOutput) String

func (s CreateClusterOutput) String() string

String returns the string representation

type DeleteClusterInput

type DeleteClusterInput struct {

	// The name of the cluster to delete.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"name" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteClusterInput) GoString

func (s DeleteClusterInput) GoString() string

GoString returns the string representation

func (*DeleteClusterInput) SetName

SetName sets the Name field's value.

func (DeleteClusterInput) String

func (s DeleteClusterInput) String() string

String returns the string representation

func (*DeleteClusterInput) Validate

func (s *DeleteClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteClusterOutput

type DeleteClusterOutput struct {

	// The full description of the cluster to delete.
	Cluster *Cluster `locationName:"cluster" type:"structure"`
	// contains filtered or unexported fields
}

func (DeleteClusterOutput) GoString

func (s DeleteClusterOutput) GoString() string

GoString returns the string representation

func (*DeleteClusterOutput) SetCluster

func (s *DeleteClusterOutput) SetCluster(v *Cluster) *DeleteClusterOutput

SetCluster sets the Cluster field's value.

func (DeleteClusterOutput) String

func (s DeleteClusterOutput) String() string

String returns the string representation

type DescribeClusterInput

type DescribeClusterInput struct {

	// The name of the cluster to describe.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"name" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DescribeClusterInput) GoString

func (s DescribeClusterInput) GoString() string

GoString returns the string representation

func (*DescribeClusterInput) SetName

SetName sets the Name field's value.

func (DescribeClusterInput) String

func (s DescribeClusterInput) String() string

String returns the string representation

func (*DescribeClusterInput) Validate

func (s *DescribeClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeClusterOutput

type DescribeClusterOutput struct {

	// The full description of your specified cluster.
	Cluster *Cluster `locationName:"cluster" type:"structure"`
	// contains filtered or unexported fields
}

func (DescribeClusterOutput) GoString

func (s DescribeClusterOutput) GoString() string

GoString returns the string representation

func (*DescribeClusterOutput) SetCluster

SetCluster sets the Cluster field's value.

func (DescribeClusterOutput) String

func (s DescribeClusterOutput) String() string

String returns the string representation

type DescribeUpdateInput added in v1.17.5

type DescribeUpdateInput struct {

	// The name of the Amazon EKS cluster to update.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"name" type:"string" required:"true"`

	// The ID of the update to describe.
	//
	// UpdateId is a required field
	UpdateId *string `location:"uri" locationName:"updateId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DescribeUpdateInput) GoString added in v1.17.5

func (s DescribeUpdateInput) GoString() string

GoString returns the string representation

func (*DescribeUpdateInput) SetName added in v1.17.5

SetName sets the Name field's value.

func (*DescribeUpdateInput) SetUpdateId added in v1.17.5

func (s *DescribeUpdateInput) SetUpdateId(v string) *DescribeUpdateInput

SetUpdateId sets the UpdateId field's value.

func (DescribeUpdateInput) String added in v1.17.5

func (s DescribeUpdateInput) String() string

String returns the string representation

func (*DescribeUpdateInput) Validate added in v1.17.5

func (s *DescribeUpdateInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeUpdateOutput added in v1.17.5

type DescribeUpdateOutput struct {

	// The full description of the specified update.
	Update *Update `locationName:"update" type:"structure"`
	// contains filtered or unexported fields
}

func (DescribeUpdateOutput) GoString added in v1.17.5

func (s DescribeUpdateOutput) GoString() string

GoString returns the string representation

func (*DescribeUpdateOutput) SetUpdate added in v1.17.5

SetUpdate sets the Update field's value.

func (DescribeUpdateOutput) String added in v1.17.5

func (s DescribeUpdateOutput) String() string

String returns the string representation

type EKS

type EKS struct {
	*client.Client
}

EKS provides the API operation methods for making requests to Amazon Elastic Container Service for Kubernetes. See this package's package overview docs for details on the service.

EKS methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *EKS

New creates a new instance of the EKS client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a EKS client from just a session.
svc := eks.New(mySession)

// Create a EKS client with additional configuration
svc := eks.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*EKS) CreateCluster

func (c *EKS) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error)

CreateCluster API operation for Amazon Elastic Container Service for Kubernetes.

Creates an Amazon EKS control plane.

The Amazon EKS control plane consists of control plane instances that run the Kubernetes software, like etcd and the API server. The control plane runs in an account managed by AWS, and the Kubernetes API is exposed via the Amazon EKS API server endpoint.

Amazon EKS worker nodes run in your AWS account and connect to your cluster's control plane via the Kubernetes API server endpoint and a certificate file that is created for your cluster.

The cluster control plane is provisioned across multiple Availability Zones and fronted by an Elastic Load Balancing Network Load Balancer. Amazon EKS also provisions elastic network interfaces in your VPC subnets to provide connectivity from the control plane instances to the worker nodes (for example, to support kubectl exec, logs, and proxy data flows).

After you create an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate with the API server and launch worker nodes into your cluster. For more information, see Managing Cluster Authentication (http://docs.aws.amazon.com/eks/latest/userguide/managing-auth.html) and Launching Amazon EKS Worker Nodes (http://docs.aws.amazon.com/eks/latest/userguide/launch-workers.html)in the Amazon EKS User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation CreateCluster for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseException "ResourceInUseException" The specified resource is in use.

  • ErrCodeResourceLimitExceededException "ResourceLimitExceededException" You have encountered a service limit on the specified resource.

  • ErrCodeInvalidParameterException "InvalidParameterException" The specified parameter is invalid. Review the available parameters for the API request.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable. Back off and retry the operation.

  • ErrCodeUnsupportedAvailabilityZoneException "UnsupportedAvailabilityZoneException" At least one of your specified cluster subnets is in an Availability Zone that does not support Amazon EKS. The exception output specifies the supported Availability Zones for your account, from which you can choose subnets for your cluster.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCluster

Example (Shared00)

To create a new cluster

The following example creates an Amazon EKS cluster called prod.

package main

import (
	"fmt"

	"github.com/journeymidnight/aws-sdk-go/aws"
	"github.com/journeymidnight/aws-sdk-go/aws/awserr"
	"github.com/journeymidnight/aws-sdk-go/aws/session"
	"github.com/journeymidnight/aws-sdk-go/service/eks"
)

func main() {
	svc := eks.New(session.New())
	input := &eks.CreateClusterInput{
		ClientRequestToken: aws.String("1d2129a1-3d38-460a-9756-e5b91fddb951"),
		Name:               aws.String("prod"),
		ResourcesVpcConfig: &eks.VpcConfigRequest{
			SecurityGroupIds: []*string{
				aws.String("sg-6979fe18"),
			},
			SubnetIds: []*string{
				aws.String("subnet-6782e71e"),
				aws.String("subnet-e7e761ac"),
			},
		},
		RoleArn: aws.String("arn:aws:iam::012345678910:role/eks-service-role-AWSServiceRoleForAmazonEKS-J7ONKE3BQ4PI"),
		Version: aws.String("1.10"),
	}

	result, err := svc.CreateCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case eks.ErrCodeResourceInUseException:
				fmt.Println(eks.ErrCodeResourceInUseException, aerr.Error())
			case eks.ErrCodeResourceLimitExceededException:
				fmt.Println(eks.ErrCodeResourceLimitExceededException, aerr.Error())
			case eks.ErrCodeInvalidParameterException:
				fmt.Println(eks.ErrCodeInvalidParameterException, aerr.Error())
			case eks.ErrCodeClientException:
				fmt.Println(eks.ErrCodeClientException, aerr.Error())
			case eks.ErrCodeServerException:
				fmt.Println(eks.ErrCodeServerException, aerr.Error())
			case eks.ErrCodeServiceUnavailableException:
				fmt.Println(eks.ErrCodeServiceUnavailableException, aerr.Error())
			case eks.ErrCodeUnsupportedAvailabilityZoneException:
				fmt.Println(eks.ErrCodeUnsupportedAvailabilityZoneException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*EKS) CreateClusterRequest

func (c *EKS) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput)

CreateClusterRequest generates a "aws/request.Request" representing the client's request for the CreateCluster operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateCluster for more information on using the CreateCluster API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateClusterRequest method.
req, resp := client.CreateClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCluster

func (*EKS) CreateClusterWithContext

func (c *EKS) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error)

CreateClusterWithContext is the same as CreateCluster with the addition of the ability to pass a context and additional request options.

See CreateCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) DeleteCluster

func (c *EKS) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error)

DeleteCluster API operation for Amazon Elastic Container Service for Kubernetes.

Deletes the Amazon EKS cluster control plane.

If you have active services in your cluster that are associated with a load balancer, you must delete those services before deleting the cluster so that the load balancers are deleted properly. Otherwise, you can have orphaned resources in your VPC that prevent you from being able to delete the VPC. For more information, see Deleting a Cluster (http://docs.aws.amazon.com/eks/latest/userguide/delete-cluster.html) in the Amazon EKS User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation DeleteCluster for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseException "ResourceInUseException" The specified resource is in use.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found. You can view your available clusters with ListClusters. Amazon EKS clusters are Region-specific.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable. Back off and retry the operation.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCluster

Example (Shared00)

To delete a cluster

This example command deletes a cluster named `devel` in your default region.

package main

import (
	"fmt"

	"github.com/journeymidnight/aws-sdk-go/aws"
	"github.com/journeymidnight/aws-sdk-go/aws/awserr"
	"github.com/journeymidnight/aws-sdk-go/aws/session"
	"github.com/journeymidnight/aws-sdk-go/service/eks"
)

func main() {
	svc := eks.New(session.New())
	input := &eks.DeleteClusterInput{
		Name: aws.String("devel"),
	}

	result, err := svc.DeleteCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case eks.ErrCodeResourceInUseException:
				fmt.Println(eks.ErrCodeResourceInUseException, aerr.Error())
			case eks.ErrCodeResourceNotFoundException:
				fmt.Println(eks.ErrCodeResourceNotFoundException, aerr.Error())
			case eks.ErrCodeClientException:
				fmt.Println(eks.ErrCodeClientException, aerr.Error())
			case eks.ErrCodeServerException:
				fmt.Println(eks.ErrCodeServerException, aerr.Error())
			case eks.ErrCodeServiceUnavailableException:
				fmt.Println(eks.ErrCodeServiceUnavailableException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*EKS) DeleteClusterRequest

func (c *EKS) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput)

DeleteClusterRequest generates a "aws/request.Request" representing the client's request for the DeleteCluster operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteCluster for more information on using the DeleteCluster API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteClusterRequest method.
req, resp := client.DeleteClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCluster

func (*EKS) DeleteClusterWithContext

func (c *EKS) DeleteClusterWithContext(ctx aws.Context, input *DeleteClusterInput, opts ...request.Option) (*DeleteClusterOutput, error)

DeleteClusterWithContext is the same as DeleteCluster with the addition of the ability to pass a context and additional request options.

See DeleteCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) DescribeCluster

func (c *EKS) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error)

DescribeCluster API operation for Amazon Elastic Container Service for Kubernetes.

Returns descriptive information about an Amazon EKS cluster.

The API server endpoint and certificate authority data returned by this operation are required for kubelet and kubectl to communicate with your Kubernetes API server. For more information, see Create a kubeconfig for Amazon EKS (http://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html).

The API server endpoint and certificate authority data are not available until the cluster reaches the ACTIVE state.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation DescribeCluster for usage and error information.

Returned Error Codes:

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found. You can view your available clusters with ListClusters. Amazon EKS clusters are Region-specific.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable. Back off and retry the operation.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster

Example (Shared00)

To describe a cluster

This example command provides a description of the specified cluster in your default region.

package main

import (
	"fmt"

	"github.com/journeymidnight/aws-sdk-go/aws"
	"github.com/journeymidnight/aws-sdk-go/aws/awserr"
	"github.com/journeymidnight/aws-sdk-go/aws/session"
	"github.com/journeymidnight/aws-sdk-go/service/eks"
)

func main() {
	svc := eks.New(session.New())
	input := &eks.DescribeClusterInput{
		Name: aws.String("devel"),
	}

	result, err := svc.DescribeCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case eks.ErrCodeResourceNotFoundException:
				fmt.Println(eks.ErrCodeResourceNotFoundException, aerr.Error())
			case eks.ErrCodeClientException:
				fmt.Println(eks.ErrCodeClientException, aerr.Error())
			case eks.ErrCodeServerException:
				fmt.Println(eks.ErrCodeServerException, aerr.Error())
			case eks.ErrCodeServiceUnavailableException:
				fmt.Println(eks.ErrCodeServiceUnavailableException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*EKS) DescribeClusterRequest

func (c *EKS) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput)

DescribeClusterRequest generates a "aws/request.Request" representing the client's request for the DescribeCluster operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeCluster for more information on using the DescribeCluster API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeClusterRequest method.
req, resp := client.DescribeClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster

func (*EKS) DescribeClusterWithContext

func (c *EKS) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error)

DescribeClusterWithContext is the same as DescribeCluster with the addition of the ability to pass a context and additional request options.

See DescribeCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) DescribeUpdate added in v1.17.5

func (c *EKS) DescribeUpdate(input *DescribeUpdateInput) (*DescribeUpdateOutput, error)

DescribeUpdate API operation for Amazon Elastic Container Service for Kubernetes.

Returns descriptive information about an update against your Amazon EKS cluster.

When the status of the update is Succeeded, the update is complete. If an update fails, the status is Failed, and an error detail explains the reason for the failure.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation DescribeUpdate for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidParameterException "InvalidParameterException" The specified parameter is invalid. Review the available parameters for the API request.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found. You can view your available clusters with ListClusters. Amazon EKS clusters are Region-specific.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdate

func (*EKS) DescribeUpdateRequest added in v1.17.5

func (c *EKS) DescribeUpdateRequest(input *DescribeUpdateInput) (req *request.Request, output *DescribeUpdateOutput)

DescribeUpdateRequest generates a "aws/request.Request" representing the client's request for the DescribeUpdate operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeUpdate for more information on using the DescribeUpdate API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeUpdateRequest method.
req, resp := client.DescribeUpdateRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdate

func (*EKS) DescribeUpdateWithContext added in v1.17.5

func (c *EKS) DescribeUpdateWithContext(ctx aws.Context, input *DescribeUpdateInput, opts ...request.Option) (*DescribeUpdateOutput, error)

DescribeUpdateWithContext is the same as DescribeUpdate with the addition of the ability to pass a context and additional request options.

See DescribeUpdate for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) ListClusters

func (c *EKS) ListClusters(input *ListClustersInput) (*ListClustersOutput, error)

ListClusters API operation for Amazon Elastic Container Service for Kubernetes.

Lists the Amazon EKS clusters in your AWS account in the specified Region.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation ListClusters for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidParameterException "InvalidParameterException" The specified parameter is invalid. Review the available parameters for the API request.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable. Back off and retry the operation.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClusters

Example (Shared00)

To list your available clusters

This example command lists all of your available clusters in your default region.

package main

import (
	"fmt"

	"github.com/journeymidnight/aws-sdk-go/aws/awserr"
	"github.com/journeymidnight/aws-sdk-go/aws/session"
	"github.com/journeymidnight/aws-sdk-go/service/eks"
)

func main() {
	svc := eks.New(session.New())
	input := &eks.ListClustersInput{}

	result, err := svc.ListClusters(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case eks.ErrCodeInvalidParameterException:
				fmt.Println(eks.ErrCodeInvalidParameterException, aerr.Error())
			case eks.ErrCodeClientException:
				fmt.Println(eks.ErrCodeClientException, aerr.Error())
			case eks.ErrCodeServerException:
				fmt.Println(eks.ErrCodeServerException, aerr.Error())
			case eks.ErrCodeServiceUnavailableException:
				fmt.Println(eks.ErrCodeServiceUnavailableException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*EKS) ListClustersRequest

func (c *EKS) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput)

ListClustersRequest generates a "aws/request.Request" representing the client's request for the ListClusters operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ListClusters for more information on using the ListClusters API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ListClustersRequest method.
req, resp := client.ListClustersRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClusters

func (*EKS) ListClustersWithContext

func (c *EKS) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error)

ListClustersWithContext is the same as ListClusters with the addition of the ability to pass a context and additional request options.

See ListClusters for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) ListUpdates added in v1.17.5

func (c *EKS) ListUpdates(input *ListUpdatesInput) (*ListUpdatesOutput, error)

ListUpdates API operation for Amazon Elastic Container Service for Kubernetes.

Lists the updates associated with an Amazon EKS cluster in your AWS account, in the specified Region.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation ListUpdates for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidParameterException "InvalidParameterException" The specified parameter is invalid. Review the available parameters for the API request.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found. You can view your available clusters with ListClusters. Amazon EKS clusters are Region-specific.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdates

func (*EKS) ListUpdatesRequest added in v1.17.5

func (c *EKS) ListUpdatesRequest(input *ListUpdatesInput) (req *request.Request, output *ListUpdatesOutput)

ListUpdatesRequest generates a "aws/request.Request" representing the client's request for the ListUpdates operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ListUpdates for more information on using the ListUpdates API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ListUpdatesRequest method.
req, resp := client.ListUpdatesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdates

func (*EKS) ListUpdatesWithContext added in v1.17.5

func (c *EKS) ListUpdatesWithContext(ctx aws.Context, input *ListUpdatesInput, opts ...request.Option) (*ListUpdatesOutput, error)

ListUpdatesWithContext is the same as ListUpdates with the addition of the ability to pass a context and additional request options.

See ListUpdates for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) UpdateClusterVersion added in v1.17.5

func (c *EKS) UpdateClusterVersion(input *UpdateClusterVersionInput) (*UpdateClusterVersionOutput, error)

UpdateClusterVersion API operation for Amazon Elastic Container Service for Kubernetes.

Updates an Amazon EKS cluster to the specified Kubernetes version. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Elastic Container Service for Kubernetes's API operation UpdateClusterVersion for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidParameterException "InvalidParameterException" The specified parameter is invalid. Review the available parameters for the API request.

  • ErrCodeClientException "ClientException" These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

  • ErrCodeServerException "ServerException" These errors are usually caused by a server-side issue.

  • ErrCodeResourceInUseException "ResourceInUseException" The specified resource is in use.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found. You can view your available clusters with ListClusters. Amazon EKS clusters are Region-specific.

  • ErrCodeInvalidRequestException "InvalidRequestException" The request is invalid given the state of the cluster. Check the state of the cluster and the associated operations.

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersion

func (*EKS) UpdateClusterVersionRequest added in v1.17.5

func (c *EKS) UpdateClusterVersionRequest(input *UpdateClusterVersionInput) (req *request.Request, output *UpdateClusterVersionOutput)

UpdateClusterVersionRequest generates a "aws/request.Request" representing the client's request for the UpdateClusterVersion operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See UpdateClusterVersion for more information on using the UpdateClusterVersion API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the UpdateClusterVersionRequest method.
req, resp := client.UpdateClusterVersionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersion

func (*EKS) UpdateClusterVersionWithContext added in v1.17.5

func (c *EKS) UpdateClusterVersionWithContext(ctx aws.Context, input *UpdateClusterVersionInput, opts ...request.Option) (*UpdateClusterVersionOutput, error)

UpdateClusterVersionWithContext is the same as UpdateClusterVersion with the addition of the ability to pass a context and additional request options.

See UpdateClusterVersion for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) WaitUntilClusterActive added in v1.17.5

func (c *EKS) WaitUntilClusterActive(input *DescribeClusterInput) error

WaitUntilClusterActive uses the Amazon EKS API operation DescribeCluster to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

func (*EKS) WaitUntilClusterActiveWithContext added in v1.17.5

func (c *EKS) WaitUntilClusterActiveWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.WaiterOption) error

WaitUntilClusterActiveWithContext is an extended version of WaitUntilClusterActive. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*EKS) WaitUntilClusterDeleted added in v1.17.5

func (c *EKS) WaitUntilClusterDeleted(input *DescribeClusterInput) error

WaitUntilClusterDeleted uses the Amazon EKS API operation DescribeCluster to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

func (*EKS) WaitUntilClusterDeletedWithContext added in v1.17.5

func (c *EKS) WaitUntilClusterDeletedWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.WaiterOption) error

WaitUntilClusterDeletedWithContext is an extended version of WaitUntilClusterDeleted. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type ErrorDetail added in v1.17.5

type ErrorDetail struct {

	// A brief description of the error.
	//
	//    * SubnetNotFound: One of the subnets associated with the cluster could
	//    not be found.
	//
	//    * SecurityGroupNotFound: One of the security groups associated with the
	//    cluster could not be found.
	//
	//    * EniLimitReached: You have reached the elastic network interface limit
	//    for your account.
	//
	//    * IpNotAvailable: A subnet associated with the cluster does not have any
	//    free IP addresses.
	//
	//    * AccessDenied: You do not have permissions to perform the specified operation.
	//
	//    * OperationNotPermitted: The service role associated with the cluster
	//    does not have the required access permissions for Amazon EKS.
	//
	//    * VpcIdNotFound: The VPC associated with the cluster could not be found.
	ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"`

	// A more complete description of the error.
	ErrorMessage *string `locationName:"errorMessage" type:"string"`

	// An optional field that contains the resource IDs associated with the error.
	ResourceIds []*string `locationName:"resourceIds" type:"list"`
	// contains filtered or unexported fields
}

An object representing an error when an asynchronous operation fails.

func (ErrorDetail) GoString added in v1.17.5

func (s ErrorDetail) GoString() string

GoString returns the string representation

func (*ErrorDetail) SetErrorCode added in v1.17.5

func (s *ErrorDetail) SetErrorCode(v string) *ErrorDetail

SetErrorCode sets the ErrorCode field's value.

func (*ErrorDetail) SetErrorMessage added in v1.17.5

func (s *ErrorDetail) SetErrorMessage(v string) *ErrorDetail

SetErrorMessage sets the ErrorMessage field's value.

func (*ErrorDetail) SetResourceIds added in v1.17.5

func (s *ErrorDetail) SetResourceIds(v []*string) *ErrorDetail

SetResourceIds sets the ResourceIds field's value.

func (ErrorDetail) String added in v1.17.5

func (s ErrorDetail) String() string

String returns the string representation

type ListClustersInput

type ListClustersInput struct {

	// The maximum number of cluster results returned by ListClusters in paginated
	// output. When this parameter is used, ListClusters only returns maxResults
	// results in a single page along with a nextToken response element. The remaining
	// results of the initial request can be seen by sending another ListClusters
	// request with the returned nextToken value. This value can be between 1 and
	// 100. If this parameter is not used, then ListClusters returns up to 100 results
	// and a nextToken value if applicable.
	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`

	// The nextToken value returned from a previous paginated ListClusters request
	// where maxResults was used and the results exceeded the value of that parameter.
	// Pagination continues from the end of the previous results that returned the
	// nextToken value.
	//
	// This token should be treated as an opaque identifier that is only used to
	// retrieve the next items in a list and not for other programmatic purposes.
	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (ListClustersInput) GoString

func (s ListClustersInput) GoString() string

GoString returns the string representation

func (*ListClustersInput) SetMaxResults

func (s *ListClustersInput) SetMaxResults(v int64) *ListClustersInput

SetMaxResults sets the MaxResults field's value.

func (*ListClustersInput) SetNextToken

func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput

SetNextToken sets the NextToken field's value.

func (ListClustersInput) String

func (s ListClustersInput) String() string

String returns the string representation

func (*ListClustersInput) Validate

func (s *ListClustersInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListClustersOutput

type ListClustersOutput struct {

	// A list of all of the clusters for your account in the specified Region.
	Clusters []*string `locationName:"clusters" type:"list"`

	// The nextToken value to include in a future ListClusters request. When the
	// results of a ListClusters request exceed maxResults, this value can be used
	// to retrieve the next page of results. This value is null when there are no
	// more results to return.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (ListClustersOutput) GoString

func (s ListClustersOutput) GoString() string

GoString returns the string representation

func (*ListClustersOutput) SetClusters

func (s *ListClustersOutput) SetClusters(v []*string) *ListClustersOutput

SetClusters sets the Clusters field's value.

func (*ListClustersOutput) SetNextToken

func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput

SetNextToken sets the NextToken field's value.

func (ListClustersOutput) String

func (s ListClustersOutput) String() string

String returns the string representation

type ListUpdatesInput added in v1.17.5

type ListUpdatesInput struct {

	// The maximum number of update results returned by ListUpdates in paginated
	// output. When this parameter is used, ListUpdates only returns maxResults
	// results in a single page along with a nextToken response element. The remaining
	// results of the initial request can be seen by sending another ListUpdates
	// request with the returned nextToken value. This value can be between 1 and
	// 100. If this parameter is not used, then ListUpdates returns up to 100 results
	// and a nextToken value if applicable.
	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`

	// The name of the Amazon EKS cluster for which to list updates.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"name" type:"string" required:"true"`

	// The nextToken value returned from a previous paginated ListUpdates request
	// where maxResults was used and the results exceeded the value of that parameter.
	// Pagination continues from the end of the previous results that returned the
	// nextToken value.
	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (ListUpdatesInput) GoString added in v1.17.5

func (s ListUpdatesInput) GoString() string

GoString returns the string representation

func (*ListUpdatesInput) SetMaxResults added in v1.17.5

func (s *ListUpdatesInput) SetMaxResults(v int64) *ListUpdatesInput

SetMaxResults sets the MaxResults field's value.

func (*ListUpdatesInput) SetName added in v1.17.5

func (s *ListUpdatesInput) SetName(v string) *ListUpdatesInput

SetName sets the Name field's value.

func (*ListUpdatesInput) SetNextToken added in v1.17.5

func (s *ListUpdatesInput) SetNextToken(v string) *ListUpdatesInput

SetNextToken sets the NextToken field's value.

func (ListUpdatesInput) String added in v1.17.5

func (s ListUpdatesInput) String() string

String returns the string representation

func (*ListUpdatesInput) Validate added in v1.17.5

func (s *ListUpdatesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListUpdatesOutput added in v1.17.5

type ListUpdatesOutput struct {

	// The nextToken value to include in a future ListUpdates request. When the
	// results of a ListUpdates request exceed maxResults, this value can be used
	// to retrieve the next page of results. This value is null when there are no
	// more results to return.
	NextToken *string `locationName:"nextToken" type:"string"`

	// A list of all the updates for the specified cluster and Region.
	UpdateIds []*string `locationName:"updateIds" type:"list"`
	// contains filtered or unexported fields
}

func (ListUpdatesOutput) GoString added in v1.17.5

func (s ListUpdatesOutput) GoString() string

GoString returns the string representation

func (*ListUpdatesOutput) SetNextToken added in v1.17.5

func (s *ListUpdatesOutput) SetNextToken(v string) *ListUpdatesOutput

SetNextToken sets the NextToken field's value.

func (*ListUpdatesOutput) SetUpdateIds added in v1.17.5

func (s *ListUpdatesOutput) SetUpdateIds(v []*string) *ListUpdatesOutput

SetUpdateIds sets the UpdateIds field's value.

func (ListUpdatesOutput) String added in v1.17.5

func (s ListUpdatesOutput) String() string

String returns the string representation

type Update added in v1.17.5

type Update struct {

	// The Unix epoch timestamp in seconds for when the update was created.
	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`

	// Any errors associated with a Failed update.
	Errors []*ErrorDetail `locationName:"errors" type:"list"`

	// A UUID that is used to track the update.
	Id *string `locationName:"id" type:"string"`

	// A key-value map that contains the parameters associated with the update.
	Params []*UpdateParam `locationName:"params" type:"list"`

	// The current status of the update.
	Status *string `locationName:"status" type:"string" enum:"UpdateStatus"`

	// The type of the update.
	Type *string `locationName:"type" type:"string" enum:"UpdateType"`
	// contains filtered or unexported fields
}

An object representing an asynchronous update.

func (Update) GoString added in v1.17.5

func (s Update) GoString() string

GoString returns the string representation

func (*Update) SetCreatedAt added in v1.17.5

func (s *Update) SetCreatedAt(v time.Time) *Update

SetCreatedAt sets the CreatedAt field's value.

func (*Update) SetErrors added in v1.17.5

func (s *Update) SetErrors(v []*ErrorDetail) *Update

SetErrors sets the Errors field's value.

func (*Update) SetId added in v1.17.5

func (s *Update) SetId(v string) *Update

SetId sets the Id field's value.

func (*Update) SetParams added in v1.17.5

func (s *Update) SetParams(v []*UpdateParam) *Update

SetParams sets the Params field's value.

func (*Update) SetStatus added in v1.17.5

func (s *Update) SetStatus(v string) *Update

SetStatus sets the Status field's value.

func (*Update) SetType added in v1.17.5

func (s *Update) SetType(v string) *Update

SetType sets the Type field's value.

func (Update) String added in v1.17.5

func (s Update) String() string

String returns the string representation

type UpdateClusterVersionInput added in v1.17.5

type UpdateClusterVersionInput struct {

	// Unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"`

	// The name of the Amazon EKS cluster to update.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"name" type:"string" required:"true"`

	// The desired Kubernetes version following a successful update.
	//
	// Version is a required field
	Version *string `locationName:"version" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateClusterVersionInput) GoString added in v1.17.5

func (s UpdateClusterVersionInput) GoString() string

GoString returns the string representation

func (*UpdateClusterVersionInput) SetClientRequestToken added in v1.17.5

func (s *UpdateClusterVersionInput) SetClientRequestToken(v string) *UpdateClusterVersionInput

SetClientRequestToken sets the ClientRequestToken field's value.

func (*UpdateClusterVersionInput) SetName added in v1.17.5

SetName sets the Name field's value.

func (*UpdateClusterVersionInput) SetVersion added in v1.17.5

SetVersion sets the Version field's value.

func (UpdateClusterVersionInput) String added in v1.17.5

func (s UpdateClusterVersionInput) String() string

String returns the string representation

func (*UpdateClusterVersionInput) Validate added in v1.17.5

func (s *UpdateClusterVersionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateClusterVersionOutput added in v1.17.5

type UpdateClusterVersionOutput struct {

	// The full description of the specified update
	Update *Update `locationName:"update" type:"structure"`
	// contains filtered or unexported fields
}

func (UpdateClusterVersionOutput) GoString added in v1.17.5

func (s UpdateClusterVersionOutput) GoString() string

GoString returns the string representation

func (*UpdateClusterVersionOutput) SetUpdate added in v1.17.5

SetUpdate sets the Update field's value.

func (UpdateClusterVersionOutput) String added in v1.17.5

String returns the string representation

type UpdateParam added in v1.17.5

type UpdateParam struct {

	// The keys associated with an update request.
	Type *string `locationName:"type" type:"string" enum:"UpdateParamType"`

	// The value of the keys submitted as part of an update request.
	Value *string `locationName:"value" type:"string"`
	// contains filtered or unexported fields
}

An object representing the details of an update request.

func (UpdateParam) GoString added in v1.17.5

func (s UpdateParam) GoString() string

GoString returns the string representation

func (*UpdateParam) SetType added in v1.17.5

func (s *UpdateParam) SetType(v string) *UpdateParam

SetType sets the Type field's value.

func (*UpdateParam) SetValue added in v1.17.5

func (s *UpdateParam) SetValue(v string) *UpdateParam

SetValue sets the Value field's value.

func (UpdateParam) String added in v1.17.5

func (s UpdateParam) String() string

String returns the string representation

type VpcConfigRequest

type VpcConfigRequest struct {

	// Specify one or more security groups for the cross-account elastic network
	// interfaces that Amazon EKS creates to use to allow communication between
	// your worker nodes and the Kubernetes control plane. If you do not specify
	// a security group, the default security group for your VPC is used.
	SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"`

	// Specify subnets for your Amazon EKS worker nodes. Amazon EKS creates cross-account
	// elastic network interfaces in these subnets to allow communication between
	// your worker nodes and the Kubernetes control plane.
	//
	// SubnetIds is a required field
	SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"`
	// contains filtered or unexported fields
}

An object representing an Amazon EKS cluster VPC configuration request.

func (VpcConfigRequest) GoString

func (s VpcConfigRequest) GoString() string

GoString returns the string representation

func (*VpcConfigRequest) SetSecurityGroupIds

func (s *VpcConfigRequest) SetSecurityGroupIds(v []*string) *VpcConfigRequest

SetSecurityGroupIds sets the SecurityGroupIds field's value.

func (*VpcConfigRequest) SetSubnetIds

func (s *VpcConfigRequest) SetSubnetIds(v []*string) *VpcConfigRequest

SetSubnetIds sets the SubnetIds field's value.

func (VpcConfigRequest) String

func (s VpcConfigRequest) String() string

String returns the string representation

func (*VpcConfigRequest) Validate

func (s *VpcConfigRequest) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type VpcConfigResponse

type VpcConfigResponse struct {

	// The security groups associated with the cross-account elastic network interfaces
	// that are used to allow communication between your worker nodes and the Kubernetes
	// control plane.
	SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"`

	// The subnets associated with your cluster.
	SubnetIds []*string `locationName:"subnetIds" type:"list"`

	// The VPC associated with your cluster.
	VpcId *string `locationName:"vpcId" type:"string"`
	// contains filtered or unexported fields
}

An object representing an Amazon EKS cluster VPC configuration response.

func (VpcConfigResponse) GoString

func (s VpcConfigResponse) GoString() string

GoString returns the string representation

func (*VpcConfigResponse) SetSecurityGroupIds

func (s *VpcConfigResponse) SetSecurityGroupIds(v []*string) *VpcConfigResponse

SetSecurityGroupIds sets the SecurityGroupIds field's value.

func (*VpcConfigResponse) SetSubnetIds

func (s *VpcConfigResponse) SetSubnetIds(v []*string) *VpcConfigResponse

SetSubnetIds sets the SubnetIds field's value.

func (*VpcConfigResponse) SetVpcId

func (s *VpcConfigResponse) SetVpcId(v string) *VpcConfigResponse

SetVpcId sets the VpcId field's value.

func (VpcConfigResponse) String

func (s VpcConfigResponse) String() string

String returns the string representation

Directories

Path Synopsis
Package eksiface provides an interface to enable mocking the Amazon Elastic Container Service for Kubernetes service client for testing your code.
Package eksiface provides an interface to enable mocking the Amazon Elastic Container Service for Kubernetes service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL