aws

package
v1.6.2 Latest Latest
Warning

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

Go to latest
Published: Aug 13, 2025 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TestCategoryDimension           = "category"
	TestNameDimension               = "name"
	GitRefDimension                 = "gitRef"
	ProvisionedNodeCountDimension   = "provisionedNodeCount"
	DeprovisionedNodeCountDimension = "deprovisionedNodeCount"
	PodDensityDimension             = "podDensity"
)

Variables

View Source
var (
	CleanableObjects = []client.Object{
		&v1.EC2NodeClass{},
	}
)
View Source
var EphemeralInitContainerImage = "alpine"
View Source
var WindowsDefaultImage = "mcr.microsoft.com/oss/kubernetes/pause:3.9"

Functions

func ExpectCapacityReservationCreated added in v1.3.0

func ExpectCapacityReservationCreated(
	ctx context.Context,
	ec2api *ec2.Client,
	instanceType ec2types.InstanceType,
	zone string,
	capacity int32,
	endDate *time.Time,
	tags map[string]string,
) string

func ExpectCapacityReservationsCanceled added in v1.3.0

func ExpectCapacityReservationsCanceled(ctx context.Context, ec2api *ec2.Client, reservationIDs ...string)

func GetTimeStreamAPI

func GetTimeStreamAPI(ctx context.Context, cfg aws.Config) sdk.TimestreamWriteAPI

Types

type Environment

type Environment struct {
	*common.Environment
	Region string

	STSAPI        *sts.Client
	EC2API        *ec2.Client
	SSMAPI        *ssm.Client
	IAMAPI        *iam.Client
	FISAPI        *fis.Client
	EKSAPI        *eks.Client
	TimeStreamAPI sdk.TimestreamWriteAPI

	SQSProvider sqs.Provider

	ClusterName       string
	ClusterEndpoint   string
	InterruptionQueue string
	PrivateCluster    bool
	ZoneInfo          []ZoneInfo
}

func NewEnvironment

func NewEnvironment(t *testing.T) *Environment

func (*Environment) AfterEach

func (env *Environment) AfterEach()

func (*Environment) BeforeEach

func (env *Environment) BeforeEach()

func (*Environment) Cleanup

func (env *Environment) Cleanup()

func (*Environment) DefaultEC2NodeClass

func (env *Environment) DefaultEC2NodeClass() *v1.EC2NodeClass

func (*Environment) EventuallyExpectInstanceProfileExists

func (env *Environment) EventuallyExpectInstanceProfileExists(profileName string) iamtypes.InstanceProfile

func (*Environment) EventuallyExpectRunInstances

func (env *Environment) EventuallyExpectRunInstances(instanceInput *ec2.RunInstancesInput) ec2types.Reservation

func (*Environment) ExpectAccountID

func (env *Environment) ExpectAccountID() string

func (*Environment) ExpectExperimentTemplateDeleted

func (env *Environment) ExpectExperimentTemplateDeleted(id string)

func (*Environment) ExpectIPv6ClusterDNS

func (env *Environment) ExpectIPv6ClusterDNS() string

func (*Environment) ExpectInstance

func (env *Environment) ExpectInstance(nodeName string) Assertion

func (*Environment) ExpectInstanceProfileCreated

func (env *Environment) ExpectInstanceProfileCreated(instanceProfileName, roleName string)

func (*Environment) ExpectInstanceProfileDeleted

func (env *Environment) ExpectInstanceProfileDeleted(instanceProfileName, roleName string)

func (*Environment) ExpectInstanceStopped

func (env *Environment) ExpectInstanceStopped(nodeName string)

func (*Environment) ExpectInstanceTerminated

func (env *Environment) ExpectInstanceTerminated(nodeName string)

func (*Environment) ExpectMessagesCreated

func (env *Environment) ExpectMessagesCreated(msgs ...interface{})

func (*Environment) ExpectMetric

func (env *Environment) ExpectMetric(name string, value float64, labels map[string]string)

func (*Environment) ExpectParsedProviderID

func (env *Environment) ExpectParsedProviderID(providerID string) string

func (*Environment) ExpectSpotInterruptionExperiment

func (env *Environment) ExpectSpotInterruptionExperiment(instanceIDs ...string) *fistypes.Experiment

func (*Environment) ExpectSpotInterruptionRole

func (env *Environment) ExpectSpotInterruptionRole() *iamtypes.Role

func (*Environment) ExpectWindowsIPAMDisabled

func (env *Environment) ExpectWindowsIPAMDisabled()

func (*Environment) ExpectWindowsIPAMEnabled

func (env *Environment) ExpectWindowsIPAMEnabled()

func (*Environment) GetAMIBySSMPath added in v0.37.0

func (env *Environment) GetAMIBySSMPath(ssmPath string) string

func (*Environment) GetDeprecatedAMI added in v1.1.0

func (env *Environment) GetDeprecatedAMI(amiID string, amifamily string) string

func (*Environment) GetInstance

func (env *Environment) GetInstance(nodeName string) ec2types.Instance

func (*Environment) GetInstanceByID

func (env *Environment) GetInstanceByID(instanceID string) ec2types.Instance

func (*Environment) GetInstanceProfileName

func (env *Environment) GetInstanceProfileName(nodeClass *v1.EC2NodeClass) string

GetInstanceProfileName gets the string for the profile name based on the cluster name, region and the NodeClass name. The length of this string can never exceed the maximum instance profile name limit of 128 characters.

func (*Environment) GetNetworkInterface

func (env *Environment) GetNetworkInterface(id string) ec2types.NetworkInterface

func (*Environment) GetNetworkInterfaces

func (env *Environment) GetNetworkInterfaces(ids ...string) []ec2types.NetworkInterface

func (*Environment) GetSecurityGroups

func (env *Environment) GetSecurityGroups(tags map[string]string) []SecurityGroup

GetSecurityGroups returns all getSecurityGroups matching the label selector

func (*Environment) GetSpotInstance added in v1.1.0

func (env *Environment) GetSpotInstance(id string) ec2types.SpotInstanceRequest

func (*Environment) GetSubnetInfo added in v0.37.0

func (env *Environment) GetSubnetInfo(tags map[string]string) []SubnetInfo

GetSubnetInfo returns all subnets matching the label selector

func (*Environment) GetSubnets

func (env *Environment) GetSubnets(tags map[string]string) map[string][]string

GetSubnets returns all subnets matching the label selector mapped from AZ -> {subnet-ids...}

func (*Environment) GetVolume

func (env *Environment) GetVolume(id string) ec2types.Volume

func (*Environment) GetVolumes

func (env *Environment) GetVolumes(ids ...string) []ec2types.Volume

func (*Environment) K8sMinorVersion added in v0.37.0

func (env *Environment) K8sMinorVersion() int

func (*Environment) K8sVersion added in v0.37.0

func (env *Environment) K8sVersion() string

func (*Environment) K8sVersionWithOffset added in v0.37.0

func (env *Environment) K8sVersionWithOffset(offset int) string

func (*Environment) MeasureDeprovisioningDurationFor

func (env *Environment) MeasureDeprovisioningDurationFor(f func(), dimensions map[string]string)

func (*Environment) MeasureDurationFor

func (env *Environment) MeasureDurationFor(f func(), eventType EventType, dimensions map[string]string)

MeasureDurationFor observes the duration between the beginning of the function f() and the end of the function f()

func (*Environment) MeasureProvisioningDurationFor

func (env *Environment) MeasureProvisioningDurationFor(f func(), dimensions map[string]string)

type EventType

type EventType string
const (
	ProvisioningEventType   EventType = "provisioning"
	DeprovisioningEventType EventType = "deprovisioning"
)

type NoOpTimeStreamAPI

type NoOpTimeStreamAPI struct {
	sdk.TimestreamWriteAPI
}

func (NoOpTimeStreamAPI) WriteRecords added in v1.1.0

type SecurityGroup

type SecurityGroup struct {
	ec2types.GroupIdentifier
	Tags []ec2types.Tag
}

type SubnetInfo

type SubnetInfo struct {
	Name string
	ID   string
	ZoneInfo
}

SubnetInfo is a simple struct for testing

type ZoneInfo added in v0.37.0

type ZoneInfo struct {
	Zone     string
	ZoneID   string
	ZoneType string
}

Jump to

Keyboard shortcuts

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