aws

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2022 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultInstanceParams = &ec2.RunInstancesInput{
	MinCount:           aws.Int32(1),
	MaxCount:           aws.Int32(1),
	IamInstanceProfile: nil,
	ImageId:            aws.String("ami-0892d3c7ee96c0bf7"),
	InstanceMarketOptions: &types.InstanceMarketOptionsRequest{
		MarketType:  types.MarketTypeSpot,
		SpotOptions: nil,
	},
	InstanceType:     "g4dn.xlarge",
	KeyName:          aws.String("us-west-ec2-keys"),
	SecurityGroupIds: []string{"sg-09b52430796d9b9c5"},
	UserData:         aws.String(base64.StdEncoding.EncodeToString(userData)),
}

Functions

func NewWorkerFactory

func NewWorkerFactory(logger *zap.Logger, client WorkerEC2Client, input *ec2.RunInstancesInput, port uint16) compute.WorkerFactory

Types

type Worker

type Worker struct {
	// contains filtered or unexported fields
}

func (*Worker) Close

func (w *Worker) Close() error

func (*Worker) Connect

func (w *Worker) Connect(ctx context.Context) (err error)

func (*Worker) Equals

func (w *Worker) Equals(other compute.Worker) bool

func (*Worker) IsReady

func (w *Worker) IsReady(ctx context.Context, opts ...compute.ReadyOptionsFunc) (bool, error)

func (*Worker) IsReadyChan

func (w *Worker) IsReadyChan(ctx context.Context, opts ...compute.ReadyOptionsFunc) <-chan error

func (*Worker) Job

func (w *Worker) Job() proto.JobServiceClient

func (*Worker) Worker

func (w *Worker) Worker() proto.WorkerServiceClient

type WorkerEC2Client

type WorkerEC2Client interface {
	RunInstances(ctx context.Context, params *ec2.RunInstancesInput, optFns ...func(*ec2.Options)) (*ec2.RunInstancesOutput, error)
	DescribeInstances(ctx context.Context, params *ec2.DescribeInstancesInput, optFns ...func(*ec2.Options)) (*ec2.DescribeInstancesOutput, error)
	DescribeInstanceStatus(ctx context.Context, params *ec2.DescribeInstanceStatusInput, optFns ...func(*ec2.Options)) (*ec2.DescribeInstanceStatusOutput, error)
	TerminateInstances(ctx context.Context, params *ec2.TerminateInstancesInput, optFns ...func(*ec2.Options)) (*ec2.TerminateInstancesOutput, error)
}

type WorkerFactory

type WorkerFactory struct {
	// contains filtered or unexported fields
}

func (*WorkerFactory) Create

func (f *WorkerFactory) Create(ctx context.Context) (compute.Worker, error)

Jump to

Keyboard shortcuts

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