services

package
v2.2.2 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2023 License: Apache-2.0 Imports: 3 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// TemporaryResourceID is the name used temporarily when creating AWS resources.
	TemporaryResourceID = "temporary-resource-id"
	// AnyIPv4CidrBlock is the CIDR block to match all IPv4 addresses.
	AnyIPv4CidrBlock = "0.0.0.0/0"
	// AnyIPv6CidrBlock is the CIDR block to match all IPv6 addresses.
	AnyIPv6CidrBlock = "::/0"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ASGInterface

type ASGInterface interface {
	ASGIfExists(id *string) (*expinfrav1.AutoScalingGroup, error)
	GetASGByName(scope *scope.MachinePoolScope) (*expinfrav1.AutoScalingGroup, error)
	CreateASG(scope *scope.MachinePoolScope) (*expinfrav1.AutoScalingGroup, error)
	UpdateASG(scope *scope.MachinePoolScope) error
	StartASGInstanceRefresh(scope *scope.MachinePoolScope) error
	CanStartASGInstanceRefresh(scope *scope.MachinePoolScope) (bool, error)
	UpdateResourceTags(resourceID *string, create, remove map[string]string) error
	DeleteASGAndWait(id string) error
	SuspendProcesses(name string, processes []string) error
	ResumeProcesses(name string, processes []string) error
	SubnetIDs(scope *scope.MachinePoolScope) ([]string, error)
}

ASGInterface encapsulates the methods exposed to the machinepool actuator.

type EC2Interface

type EC2Interface interface {
	InstanceIfExists(id *string) (*infrav1.Instance, error)
	TerminateInstance(id string) error
	CreateInstance(scope *scope.MachineScope, userData []byte, userDataFormat string) (*infrav1.Instance, error)
	GetRunningInstanceByTags(scope *scope.MachineScope) (*infrav1.Instance, error)

	GetAdditionalSecurityGroupsIDs(securityGroup []infrav1.AWSResourceReference) ([]string, error)
	GetCoreSecurityGroups(machine *scope.MachineScope) ([]string, error)
	GetInstanceSecurityGroups(instanceID string) (map[string][]string, error)
	UpdateInstanceSecurityGroups(id string, securityGroups []string) error
	UpdateResourceTags(resourceID *string, create, remove map[string]string) error
	ModifyInstanceMetadataOptions(instanceID string, options *infrav1.InstanceMetadataOptions) error

	TerminateInstanceAndWait(instanceID string) error
	DetachSecurityGroupsFromNetworkInterface(groups []string, interfaceID string) error

	ReconcileLaunchTemplate(scope scope.LaunchTemplateScope, canUpdateLaunchTemplate func() (bool, error), runPostLaunchTemplateUpdateOperation func() error) error
	ReconcileTags(scope scope.LaunchTemplateScope, resourceServicesToUpdate []scope.ResourceServiceToUpdate) error

	DiscoverLaunchTemplateAMI(scope scope.LaunchTemplateScope) (*string, error)
	GetLaunchTemplate(id string) (lt *expinfrav1.AWSLaunchTemplate, userDataHash string, err error)
	GetLaunchTemplateID(id string) (string, error)
	GetLaunchTemplateLatestVersion(id string) (string, error)
	CreateLaunchTemplate(scope scope.LaunchTemplateScope, imageID *string, userData []byte) (string, error)
	CreateLaunchTemplateVersion(id string, scope scope.LaunchTemplateScope, imageID *string, userData []byte) error
	PruneLaunchTemplateVersions(id string) error
	DeleteLaunchTemplate(id string) error
	LaunchTemplateNeedsUpdate(scope scope.LaunchTemplateScope, incoming *expinfrav1.AWSLaunchTemplate, existing *expinfrav1.AWSLaunchTemplate) (bool, error)
	DeleteBastion() error
	ReconcileBastion() error
}

EC2Interface encapsulates the methods exposed to the machine actuator.

type ELBInterface

type ELBInterface interface {
	DeleteLoadbalancers() error
	ReconcileLoadbalancers() error
	IsInstanceRegisteredWithAPIServerELB(i *infrav1.Instance) (bool, error)
	IsInstanceRegisteredWithAPIServerLB(i *infrav1.Instance) (string, bool, error)
	DeregisterInstanceFromAPIServerELB(i *infrav1.Instance) error
	DeregisterInstanceFromAPIServerLB(targetGroupArn string, i *infrav1.Instance) error
	RegisterInstanceWithAPIServerELB(i *infrav1.Instance) error
	RegisterInstanceWithAPIServerLB(i *infrav1.Instance) error
}

ELBInterface encapsulates the methods exposed to the cluster and machine controller.

type NetworkInterface

type NetworkInterface interface {
	DeleteNetwork() error
	ReconcileNetwork() error
}

NetworkInterface encapsulates the methods exposed to the cluster controller.

type ObjectStoreInterface

type ObjectStoreInterface interface {
	DeleteBucket() error
	ReconcileBucket() error
	Delete(m *scope.MachineScope) error
	Create(m *scope.MachineScope, data []byte) (objectURL string, err error)
}

ObjectStoreInterface encapsulates the methods exposed to the machine actuator.

type SecretInterface

type SecretInterface interface {
	Delete(m *scope.MachineScope) error
	Create(m *scope.MachineScope, data []byte) (string, int32, error)
	UserData(secretPrefix string, chunks int32, region string, endpoints []scope.ServiceEndpoint) ([]byte, error)
}

SecretInterface encapsulated the methods exposed to the machine actuator.

type SecurityGroupInterface

type SecurityGroupInterface interface {
	DeleteSecurityGroups() error
	ReconcileSecurityGroups() error
}

SecurityGroupInterface encapsulates the methods exposed to the cluster controller.

Directories

Path Synopsis
mock_autoscalingiface
Package mock_autoscalingiface is a generated GoMock package.
Package mock_autoscalingiface is a generated GoMock package.
eks
iam
mock_eksiface
Package mock_eksiface is a generated GoMock package.
Package mock_eksiface is a generated GoMock package.
mock_iamauth
Package mock_iamauth is a generated GoMock package.
Package mock_iamauth is a generated GoMock package.
mock_eventbridgeiface
Package mock_eventbridgeiface is a generated GoMock package.
Package mock_eventbridgeiface is a generated GoMock package.
mock_sqsiface
Package mock_sqsiface is a generated GoMock package.
Package mock_sqsiface is a generated GoMock package.
Package mock_services is a generated GoMock package.
Package mock_services is a generated GoMock package.
s3
mock_s3iface
Run go generate to regenerate this mock.
Run go generate to regenerate this mock.
mock_stsiface
Run go generate to regenerate this mock.
Run go generate to regenerate this mock.
mock_secretsmanageriface
Package mock_secretsmanageriface is a generated GoMock package.
Package mock_secretsmanageriface is a generated GoMock package.
ssm
mock_ssmiface
Package mock_ssmiface is a generated GoMock package.
Package mock_ssmiface is a generated GoMock package.
sts
mock_stsiface
Package mock_stsiface is a generated GoMock package.
Package mock_stsiface is a generated GoMock package.

Jump to

Keyboard shortcuts

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