aws

package
v0.1.8 Latest Latest
Warning

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

Go to latest
Published: Aug 8, 2018 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultVolumeClass = 1
	DefaultDevice      = "/dev/sdf"
	DefaultZone        = "us-east-2"
)
View Source
const (
	G = 1024
)

Variables

View Source
var (
	InstanceTypeMap = map[CpuAndMemory]string{
		{1, 1 * G}:  "t2.micro",
		{1, 2 * G}:  "t2.small",
		{2, 4 * G}:  "t2.medium",
		{2, 8 * G}:  "t2.large",
		{4, 16 * G}: "t2.xlarge",
		{8, 32 * G}: "t2.2xlarge",
	}
)
View Source
var MyProvider = constants.ProviderAWS

Functions

func ConvertToInstanceType

func ConvertToInstanceType(cpu, memory int) (string, error)

func ConvertToVolumeType

func ConvertToVolumeType(volumeClass int) (string, error)

Types

type CpuAndMemory

type CpuAndMemory struct {
	Cpu    int
	Memory int
}

type Credential

type Credential struct {
	AccessKeyId     string `json:"access_key_id"`
	SecretAccessKey string `json:"secret_access_key"`
}

type Provider

type Provider struct {
	Logger *logger.Logger
}

func NewProvider

func NewProvider(l *logger.Logger) *Provider

func (*Provider) CheckResource added in v0.1.7

func (p *Provider) CheckResource(ctx context.Context, clusterWrapper *models.ClusterWrapper) error

func (*Provider) DescribeRuntimeProviderAvailabilityZones

func (p *Provider) DescribeRuntimeProviderAvailabilityZones(url, credential, zone string) ([]string, error)

func (*Provider) DescribeRuntimeProviderZones

func (p *Provider) DescribeRuntimeProviderZones(url, credential string) ([]string, error)

func (*Provider) DescribeSubnets

func (*Provider) DescribeVpc

func (p *Provider) DescribeVpc(runtimeId, vpcId string) (*models.Vpc, error)

func (*Provider) HandleSubtask

func (p *Provider) HandleSubtask(task *models.Task) error

func (*Provider) ParseClusterConf

func (p *Provider) ParseClusterConf(versionId, runtimeId, conf string) (*models.ClusterWrapper, error)

func (*Provider) SetLogger

func (p *Provider) SetLogger(logger *logger.Logger)

func (*Provider) SplitJobIntoTasks

func (p *Provider) SplitJobIntoTasks(job *models.Job) (*models.TaskLayer, error)

func (*Provider) UpdateClusterStatus

func (p *Provider) UpdateClusterStatus(job *models.Job) error

func (*Provider) ValidateCredential

func (p *Provider) ValidateCredential(url, credential, zone string) error

func (*Provider) WaitSubtask

func (p *Provider) WaitSubtask(task *models.Task, timeout time.Duration, waitInterval time.Duration) error

type ProviderHandler

type ProviderHandler struct {
	vmbased.FrameHandler
}

func GetProviderHandler

func GetProviderHandler(Logger *logger.Logger) *ProviderHandler

func (*ProviderHandler) AttachVolumes

func (p *ProviderHandler) AttachVolumes(task *models.Task) error

func (*ProviderHandler) CheckResourceQuotas

func (p *ProviderHandler) CheckResourceQuotas(ctx context.Context, clusterWrapper *models.ClusterWrapper) error

func (*ProviderHandler) CreateVolumes

func (p *ProviderHandler) CreateVolumes(task *models.Task) error

func (*ProviderHandler) DeleteInstances

func (p *ProviderHandler) DeleteInstances(task *models.Task) error

func (*ProviderHandler) DeleteVolumes

func (p *ProviderHandler) DeleteVolumes(task *models.Task) error

func (*ProviderHandler) DescribeAvailabilityZoneBySubnetId

func (p *ProviderHandler) DescribeAvailabilityZoneBySubnetId(runtimeId, subnetId string) (string, error)

func (*ProviderHandler) DescribeAvailabilityZones

func (p *ProviderHandler) DescribeAvailabilityZones(url, credential, zone string) ([]string, error)

func (*ProviderHandler) DescribeImage

func (p *ProviderHandler) DescribeImage(runtimeId, imageName string) (string, error)

func (*ProviderHandler) DescribeKeyPairs

func (p *ProviderHandler) DescribeKeyPairs(url, credential, zone string) ([]string, error)

func (*ProviderHandler) DescribeSubnets

func (*ProviderHandler) DescribeVpc

func (p *ProviderHandler) DescribeVpc(runtimeId, vpcId string) (*models.Vpc, error)

func (*ProviderHandler) DescribeZones

func (p *ProviderHandler) DescribeZones(url, credential string) ([]string, error)

func (*ProviderHandler) DetachVolumes

func (p *ProviderHandler) DetachVolumes(task *models.Task) error

func (*ProviderHandler) RunInstances

func (p *ProviderHandler) RunInstances(task *models.Task) error

func (*ProviderHandler) StartInstances

func (p *ProviderHandler) StartInstances(task *models.Task) error

func (*ProviderHandler) StopInstances

func (p *ProviderHandler) StopInstances(task *models.Task) error

func (*ProviderHandler) WaitAttachVolumes

func (p *ProviderHandler) WaitAttachVolumes(task *models.Task) error

func (*ProviderHandler) WaitCreateVolumes

func (p *ProviderHandler) WaitCreateVolumes(task *models.Task) error

func (*ProviderHandler) WaitDeleteInstances

func (p *ProviderHandler) WaitDeleteInstances(task *models.Task) error

func (*ProviderHandler) WaitDeleteVolumes

func (p *ProviderHandler) WaitDeleteVolumes(task *models.Task) error

func (*ProviderHandler) WaitDetachVolumes

func (p *ProviderHandler) WaitDetachVolumes(task *models.Task) error

func (*ProviderHandler) WaitInstanceState

func (p *ProviderHandler) WaitInstanceState(task *models.Task, state string) error

func (*ProviderHandler) WaitRunInstances

func (p *ProviderHandler) WaitRunInstances(task *models.Task) error

func (*ProviderHandler) WaitStartInstances

func (p *ProviderHandler) WaitStartInstances(task *models.Task) error

func (*ProviderHandler) WaitStopInstances

func (p *ProviderHandler) WaitStopInstances(task *models.Task) error

func (*ProviderHandler) WaitVolumeState

func (p *ProviderHandler) WaitVolumeState(task *models.Task, state string) error

Jump to

Keyboard shortcuts

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