outposts

package
v0.176.0 Latest Latest
Warning

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

Go to latest
Published: Apr 5, 2024 License: Apache-2.0 Imports: 18 Imported by: 10

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WrapClusterProvider

func WrapClusterProvider(p api.ClusterProvider) api.ClusterProvider

WrapClusterProvider wraps ClusterProvider with a custom EKS service that overrides operations unsupported on Outposts with no-ops.

Types

type ClusterExtender

type ClusterExtender struct {
	StackUpdater stackUpdater
	EC2API       awsapi.EC2
	OutpostsAPI  awsapi.Outposts
}

A ClusterExtender extends a cluster with resources required to support nodegroups on Outposts.

func (*ClusterExtender) ExtendWithOutpostSubnetsIfRequired

func (e *ClusterExtender) ExtendWithOutpostSubnetsIfRequired(ctx context.Context, cluster ClusterToExtend, clusterVPC *api.ClusterVPC) error

ExtendWithOutpostSubnetsIfRequired extends a cluster's stack with Outpost subnets if required.

type ClusterToExtend

type ClusterToExtend interface {
	// IsControlPlaneOnOutposts returns true if the control plane is on Outposts.
	IsControlPlaneOnOutposts() bool

	// FindNodeGroupOutpostARN checks whether any nodegroups are on Outposts and returns the Outpost ARN.
	FindNodeGroupOutpostARN() (outpostARN string, found bool)
}

ClusterToExtend represents a cluster that needs to be extended.

type OutpostInstance

type OutpostInstance interface {
	// SetInstanceType sets the instance type.
	SetInstanceType(instanceType string)

	// GetInstanceType returns the instance type.
	GetInstanceType() string
}

OutpostInstance represents an instance running on Outposts.

type Service

type Service struct {
	OutpostsAPI awsapi.Outposts
	EC2API      awsapi.EC2
	OutpostID   string
	// contains filtered or unexported fields
}

func (*Service) GetOutpost

func (o *Service) GetOutpost(ctx context.Context) (*outpoststypes.Outpost, error)

GetOutpost returns details for this Outpost.

func (*Service) GetSmallestInstanceType

func (o *Service) GetSmallestInstanceType(ctx context.Context) (string, error)

GetSmallestInstanceType retrieves the smallest available instance type on Outposts. Instance types that have a smaller vCPU are considered smaller.

func (*Service) SetOrValidateOutpostInstanceType

func (o *Service) SetOrValidateOutpostInstanceType(ctx context.Context, oi OutpostInstance) error

SetOrValidateOutpostInstanceType sets the instance type if it is not set, or validates that the specified instance type exists in Outposts.

func (*Service) ValidateInstanceType

func (o *Service) ValidateInstanceType(ctx context.Context, instanceType string) error

ValidateInstanceType validates that instanceType is a valid instance type for this Outpost.

func (*Service) ValidatePlacementGroup added in v0.125.0

func (o *Service) ValidatePlacementGroup(ctx context.Context, placement *api.Placement) error

ValidatePlacementGroup validates that the specified placement group exists.

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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