eks

package
v2.3.0 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2023 License: Apache-2.0 Imports: 60 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrClusterExists is an error if a EKS cluster already exists with
	// the same name in the spec but that isn't owned by the CAPI cluster.
	ErrClusterExists = errors.New("an EKS cluster already exists with same name but isn't owned by cluster")
	// ErrUnknownTokenMethod defines an error if a unsupported token generation method is supplied.
	ErrUnknownTokenMethod = errors.New("unknown token method")
	// ErrClusterRoleNameMissing if no role name is specified.
	ErrClusterRoleNameMissing = errors.New("a cluster role name must be specified")
	// ErrClusterRoleNotFound is an error if the specified role couldn't be founbd in AWS.
	ErrClusterRoleNotFound = errors.New("the specified cluster role couldn't be found")
	// ErrNodegroupRoleNotFound is an error if the specified role couldn't be founbd in AWS.
	ErrNodegroupRoleNotFound = errors.New("the specified nodegroup role couldn't be found")
	// ErrFargateRoleNotFound is an error if the specified role couldn't be founbd in AWS.
	ErrFargateRoleNotFound = errors.New("the specified fargate role couldn't be found")
	// ErrCannotUseAdditionalRoles is an error if the spec contains additional role and the
	// EKSAllowAddRoles feature flag isn't enabled.
	ErrCannotUseAdditionalRoles = errors.New("additional rules cannot be added as this has been disabled")
	// ErrNoSecurityGroup is an error when no security group is found for an EKS cluster.
	ErrNoSecurityGroup = errors.New("no security group for EKS cluster")
)

Functions

func FargateRolePolicies

func FargateRolePolicies() []string

FargateRolePolicies gives the policies required for a fargate role.

func FargateRolePoliciesUSGov added in v2.1.0

func FargateRolePoliciesUSGov() []string

FargateRolePoliciesUSGov gives the policies required for a fargate role.

func NodegroupRolePolicies

func NodegroupRolePolicies() []string

NodegroupRolePolicies gives the policies required for a nodegroup role.

func NodegroupRolePoliciesUSGov added in v2.1.0

func NodegroupRolePoliciesUSGov() []string

NodegroupRolePoliciesUSGov gives the policies required for a nodegroup role.

Types

type EKSAPI

type EKSAPI interface {
	eksiface.EKSAPI
	WaitUntilClusterUpdating(input *eks.DescribeClusterInput, opts ...request.WaiterOption) error
}

EKSAPI defines the EKS API interface.

type EKSClient

type EKSClient struct {
	eksiface.EKSAPI
}

EKSClient defines a wrapper over EKS API.

func (EKSClient) WaitUntilClusterUpdating

func (c EKSClient) WaitUntilClusterUpdating(input *eks.DescribeClusterInput, opts ...request.WaiterOption) error

WaitUntilClusterUpdating is adapted from aws-sdk-go/service/eks/waiters.go.

type FargateService

type FargateService struct {
	EKSClient eksiface.EKSAPI
	iam.IAMService
	STSClient stsiface.STSAPI
	// contains filtered or unexported fields
}

FargateService holds a collection of interfaces. The interfaces are broken down like this to group functions together.

func NewFargateService

func NewFargateService(fargatePoolScope *scope.FargateProfileScope) *FargateService

NewFargateService returns a new service given the api clients.

func (*FargateService) Reconcile

func (s *FargateService) Reconcile() (reconcile.Result, error)

Reconcile is the entrypoint for FargateProfile reconciliation.

func (*FargateService) ReconcileDelete

func (s *FargateService) ReconcileDelete() (reconcile.Result, error)

ReconcileDelete is the entrypoint for FargateProfile reconciliation.

type NodegroupService

type NodegroupService struct {
	AutoscalingClient autoscalingiface.AutoScalingAPI
	EKSClient         eksiface.EKSAPI
	iam.IAMService
	STSClient stsiface.STSAPI
	// contains filtered or unexported fields
}

NodegroupService holds a collection of interfaces. The interfaces are broken down like this to group functions together. One alternative is to have a large list of functions from the ec2 client.

func NewNodegroupService

func NewNodegroupService(machinePoolScope *scope.ManagedMachinePoolScope) *NodegroupService

NewNodegroupService returns a new service given the api clients.

func (*NodegroupService) ReconcilePool

func (s *NodegroupService) ReconcilePool(ctx context.Context) error

ReconcilePool is the entrypoint for ManagedMachinePool reconciliation.

func (*NodegroupService) ReconcilePoolDelete

func (s *NodegroupService) ReconcilePoolDelete() error

ReconcilePoolDelete is the entrypoint for ManagedMachinePool deletion reconciliation.

type Service

type Service struct {
	EC2Client ec2iface.EC2API
	EKSClient EKSAPI
	iam.IAMService
	STSClient stsiface.STSAPI
	// contains filtered or unexported fields
}

Service holds a collection of interfaces. The interfaces are broken down like this to group functions together. One alternative is to have a large list of functions from the ec2 client.

func NewService

func NewService(controlPlaneScope *scope.ManagedControlPlaneScope, opts ...ServiceOpts) *Service

NewService returns a new service given the api clients.

func (*Service) DeleteControlPlane

func (s *Service) DeleteControlPlane() (err error)

DeleteControlPlane deletes the EKS control plane.

func (*Service) ReconcileControlPlane

func (s *Service) ReconcileControlPlane(ctx context.Context) error

ReconcileControlPlane reconciles a EKS control plane.

type ServiceOpts

type ServiceOpts func(s *Service)

func WithIAMClient

func WithIAMClient(client *http.Client) ServiceOpts

WithIAMClient creates an access spec with a custom http client.

Directories

Path Synopsis
Package mock_eksiface is a generated GoMock package.
Package mock_eksiface is a generated GoMock package.

Jump to

Keyboard shortcuts

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