aws

package
v0.0.0-...-1f20b29 Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2018 License: Apache-2.0 Imports: 15 Imported by: 1

Documentation

Index

Constants

View Source
const ProviderName = "aws"

Variables

This section is empty.

Functions

This section is empty.

Types

type Provider

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

Provider implements the vm.Provider interface for AWS.

func (*Provider) CleanSSH

func (p *Provider) CleanSSH() error

CleanSSH is part of vm.Provider. This implementation is a no-op, since we depend on the user's local identity file.

func (*Provider) ConfigSSH

func (p *Provider) ConfigSSH() error

ConfigSSH ensures that for each region we're operating in, we have a <user>-<hash> keypair where <hash> is a hash of the public key. We use a hash since a user probably has multiple machines they're running roachprod on and these machines (ought to) have separate ssh keypairs. If the remote keypair doesn't exist, we'll upload the user's ~/.ssh/id_rsa.pub file or ask them to generate one.

func (*Provider) Create

func (p *Provider) Create(names []string, opts vm.CreateOpts) error

Create is part of the vm.Provider interface.

func (*Provider) Delete

func (p *Provider) Delete(vms vm.List) error

Delete is part of vm.Provider. This will delete all instances in a single AWS command.

func (*Provider) Extend

func (p *Provider) Extend(vms vm.List, lifetime time.Duration) error

Extend is part of the vm.Provider interface. This will update the Lifetime tag on the instances.

func (*Provider) FindActiveAccount

func (p *Provider) FindActiveAccount() (string, error)

FindActiveAccount is part of the vm.Provider interface. This queries the AWS command for the current IAM user.

func (*Provider) Flags

func (p *Provider) Flags() vm.ProviderFlags

Flags is part of the vm.Provider interface.

func (*Provider) List

func (p *Provider) List() (vm.List, error)

List is part of the vm.Provider interface.

func (*Provider) Name

func (p *Provider) Name() string

Name is part of the vm.Provider interface. This returns "aws".

Jump to

Keyboard shortcuts

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