Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AwsLogger

func AwsLogger() aws.Logger

func NewAWSCredentials

func NewAWSCredentials(id, secret, token string) *defaultAWSCredentials

Types

type AwsDefaultCredentialsProvider

type AwsDefaultCredentialsProvider struct{}

func (*AwsDefaultCredentialsProvider) Credentials

type Driver

type Driver struct {
	*drivers.BaseDriver

	Id           string
	AccessKey    string
	SecretKey    string
	SessionToken string
	Region       string
	AMI          string
	SSHKeyID     int
	// ExistingKey keeps track of whether the key was created by us or we used an existing one. If an existing one was used, we shouldn't delete it when the machine is deleted.
	ExistingKey      bool
	KeyName          string
	InstanceId       string
	InstanceType     string
	PrivateIPAddress string

	// NB: SecurityGroupId expanded from single value to slice on 26 Feb 2016 - we maintain both for host storage backwards compatibility.
	SecurityGroupId  string
	SecurityGroupIds []string

	// NB: SecurityGroupName expanded from single value to slice on 26 Feb 2016 - we maintain both for host storage backwards compatibility.
	SecurityGroupName  string
	SecurityGroupNames []string

	SecurityGroupReadOnly bool
	OpenPorts             []string
	Tags                  string
	ReservationId         string
	DeviceName            string
	RootSize              int64
	VolumeType            string
	IamInstanceProfile    string
	VpcId                 string
	SubnetId              string
	Zone                  string

	RequestSpotInstance     bool
	SpotPrice               string
	BlockDurationMinutes    int64
	PrivateIPOnly           bool
	UsePrivateIP            bool
	UseEbsOptimizedInstance bool
	Monitoring              bool
	SSHPrivateKeyPath       string
	RetryCount              int
	Endpoint                string
	DisableSSL              bool
	UserDataFile            string
	// contains filtered or unexported fields
}

func NewDriver

func NewDriver(hostName, storePath string) *Driver

func (*Driver) Base64UserData

func (d *Driver) Base64UserData() (userdata string, err error)

func (*Driver) Create

func (d *Driver) Create() error

func (*Driver) DriverName

func (d *Driver) DriverName() string

    DriverName returns the name of the driver

    func (*Driver) GetCreateFlags

    func (d *Driver) GetCreateFlags() []mcnflag.Flag

    func (*Driver) GetIP

    func (d *Driver) GetIP() (string, error)

    func (*Driver) GetSSHHostname

    func (d *Driver) GetSSHHostname() (string, error)

    func (*Driver) GetSSHPort

    func (d *Driver) GetSSHPort() (int, error)

    func (*Driver) GetSSHUsername

    func (d *Driver) GetSSHUsername() string

    func (*Driver) GetState

    func (d *Driver) GetState() (state.State, error)

    func (*Driver) GetURL

    func (d *Driver) GetURL() (string, error)

    func (*Driver) Kill

    func (d *Driver) Kill() error

    func (*Driver) PreCreateCheck

    func (d *Driver) PreCreateCheck() error

    func (*Driver) Remove

    func (d *Driver) Remove() error

    func (*Driver) Restart

    func (d *Driver) Restart() error

    func (*Driver) SetConfigFromFlags

    func (d *Driver) SetConfigFromFlags(flags drivers.DriverOptions) error

    func (*Driver) Start

    func (d *Driver) Start() error

    func (*Driver) Stop

    func (d *Driver) Stop() error

    type Ec2Client

    type Ec2Client interface {
    	DescribeAccountAttributes(input *ec2.DescribeAccountAttributesInput) (*ec2.DescribeAccountAttributesOutput, error)
    
    	DescribeSubnets(input *ec2.DescribeSubnetsInput) (*ec2.DescribeSubnetsOutput, error)
    
    	CreateTags(input *ec2.CreateTagsInput) (*ec2.CreateTagsOutput, error)
    
    	CreateSecurityGroup(input *ec2.CreateSecurityGroupInput) (*ec2.CreateSecurityGroupOutput, error)
    
    	AuthorizeSecurityGroupIngress(input *ec2.AuthorizeSecurityGroupIngressInput) (*ec2.AuthorizeSecurityGroupIngressOutput, error)
    
    	DescribeSecurityGroups(input *ec2.DescribeSecurityGroupsInput) (*ec2.DescribeSecurityGroupsOutput, error)
    
    	DeleteSecurityGroup(input *ec2.DeleteSecurityGroupInput) (*ec2.DeleteSecurityGroupOutput, error)
    
    	DeleteKeyPair(input *ec2.DeleteKeyPairInput) (*ec2.DeleteKeyPairOutput, error)
    
    	ImportKeyPair(input *ec2.ImportKeyPairInput) (*ec2.ImportKeyPairOutput, error)
    
    	DescribeKeyPairs(input *ec2.DescribeKeyPairsInput) (*ec2.DescribeKeyPairsOutput, error)
    
    	DescribeInstances(input *ec2.DescribeInstancesInput) (*ec2.DescribeInstancesOutput, error)
    
    	StartInstances(input *ec2.StartInstancesInput) (*ec2.StartInstancesOutput, error)
    
    	RebootInstances(input *ec2.RebootInstancesInput) (*ec2.RebootInstancesOutput, error)
    
    	StopInstances(input *ec2.StopInstancesInput) (*ec2.StopInstancesOutput, error)
    
    	RunInstances(input *ec2.RunInstancesInput) (*ec2.Reservation, error)
    
    	TerminateInstances(input *ec2.TerminateInstancesInput) (*ec2.TerminateInstancesOutput, error)
    
    	RequestSpotInstances(input *ec2.RequestSpotInstancesInput) (*ec2.RequestSpotInstancesOutput, error)
    
    	DescribeSpotInstanceRequests(input *ec2.DescribeSpotInstanceRequestsInput) (*ec2.DescribeSpotInstanceRequestsOutput, error)
    
    	WaitUntilSpotInstanceRequestFulfilled(input *ec2.DescribeSpotInstanceRequestsInput) error
    	CancelSpotInstanceRequests(input *ec2.CancelSpotInstanceRequestsInput) (*ec2.CancelSpotInstanceRequestsOutput, error)
    }

    type ProviderFactory

    type ProviderFactory interface {
    	NewStaticProvider(id, secret, token string) credentials.Provider
    }