ec2

package
v0.0.0-...-79b8c57 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2014 License: LGPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AllocateAddress

type AllocateAddress struct {
	Domain string
}

The AllocateAddress request parameters

see http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-AllocateAddress.html

type AllocateAddressResp

type AllocateAddressResp struct {
	RequestId    string `xml:"requestId"`
	PublicIp     string `xml:"publicIp"`
	Domain       string `xml:"domain"`
	AllocationId string `xml:"allocationId"`
}

Response to an AllocateAddress request

type AssociateAddress

type AssociateAddress struct {
	InstanceId         string
	AllocationId       string
	AllowReassociation bool
}

The AssociateAddress request parameters

http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-AssociateAddress.html

type AssociateAddressResp

type AssociateAddressResp struct {
	RequestId     string `xml:"requestId"`
	Return        bool   `xml:"return"`
	AssociationId string `xml:"associationId"`
}

Response to an AssociateAddress request

type AttachVolumeResp

type AttachVolumeResp struct {
	RequestId  string `xml:"requestId"`
	VolumeId   string `xml:"volumeId"`
	InstanceId string `xml:"instanceId"`
	Device     string `xml:"device"`
	Status     string `xml:"status"`
	AttachTime string `xml:"attachTime"`
}

Response to an AttachVolume request

type BlockDeviceMapping

type BlockDeviceMapping struct {
	DeviceName          string `xml:"deviceName"`
	VirtualName         string `xml:"virtualName"`
	SnapshotId          string `xml:"ebs>snapshotId"`
	VolumeType          string `xml:"ebs>volumeType"`
	VolumeSize          int64  `xml:"ebs>volumeSize"`
	DeleteOnTermination bool   `xml:"ebs>deleteOnTermination"`
	NoDevice            bool   `xml:"noDevice"`

	// The number of I/O operations per second (IOPS) that the volume supports.
	IOPS int64 `xml:"ebs>iops"`
}

BlockDeviceMapping represents the association of a block device with an image.

See http://goo.gl/wnDBf for more details.

type CopyImage

type CopyImage struct {
	SourceRegion  string
	SourceImageId string
	Name          string
	Description   string
	ClientToken   string
}

The CopyImage request parameters.

See http://goo.gl/hQwPCK for more details.

type CopyImageResp

type CopyImageResp struct {
	RequestId string `xml:"requestId"`
	ImageId   string `xml:"imageId"`
}

Response to a CopyImage request.

See http://goo.gl/hQwPCK for more details.

type CreateImage

type CreateImage struct {
	InstanceId   string
	Name         string
	Description  string
	NoReboot     bool
	BlockDevices []BlockDeviceMapping
}

The CreateImage request parameters.

See http://goo.gl/cxU41 for more details.

type CreateImageResp

type CreateImageResp struct {
	RequestId string `xml:"requestId"`
	ImageId   string `xml:"imageId"`
}

Response to a CreateImage request.

See http://goo.gl/cxU41 for more details.

type CreateKeyPairResp

type CreateKeyPairResp struct {
	RequestId      string `xml:"requestId"`
	KeyName        string `xml:"keyName"`
	KeyFingerprint string `xml:"keyFingerprint"`
	KeyMaterial    string `xml:"keyMaterial"`
}

type CreateSecurityGroupResp

type CreateSecurityGroupResp struct {
	SecurityGroup
	RequestId string `xml:"requestId"`
}

CreateSecurityGroupResp represents a response to a CreateSecurityGroup request.

type CreateSnapshotResp

type CreateSnapshotResp struct {
	RequestId string `xml:"requestId"`
	Snapshot
}

Response to a CreateSnapshot request.

See http://goo.gl/ttcda for more details.

type CreateVolume

type CreateVolume struct {
	AvailZone  string
	Size       int64
	SnapshotId string
	VolumeType string
	IOPS       int64
}

The CreateVolume request parameters

See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVolume.html

type CreateVolumeResp

type CreateVolumeResp struct {
	RequestId  string `xml:"requestId"`
	VolumeId   string `xml:"volumeId"`
	Size       int64  `xml:"size"`
	SnapshotId string `xml:"snapshotId"`
	AvailZone  string `xml:"availabilityZone"`
	Status     string `xml:"status"`
	CreateTime string `xml:"createTime"`
	VolumeType string `xml:"volumeType"`
	IOPS       int64  `xml:"iops"`
}

Response to a CreateVolume request

type DeregisterImageResp

type DeregisterImageResp struct {
	RequestId string `xml:"requestId"`
	Return    bool   `xml:"return"`
}

Response to a DegisterImage request.

See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DeregisterImage.html

type EC2

type EC2 struct {
	aws.Auth
	aws.Region
	// contains filtered or unexported fields
}

The EC2 type encapsulates operations with a specific EC2 region.

func New

func New(auth aws.Auth, region aws.Region) *EC2

func NewWithClient

func NewWithClient(auth aws.Auth, region aws.Region, client *http.Client) *EC2

New creates a new EC2.

func (*EC2) AllocateAddress

func (ec2 *EC2) AllocateAddress(options *AllocateAddress) (resp *AllocateAddressResp, err error)

Allocate a new Elastic IP.

func (*EC2) AssociateAddress

func (ec2 *EC2) AssociateAddress(options *AssociateAddress) (resp *AssociateAddressResp, err error)

Associate an address with a VPC instance.

func (*EC2) AttachVolume

func (ec2 *EC2) AttachVolume(volumeId string, instanceId string, device string) (resp *AttachVolumeResp, err error)

Attach a volume.

func (*EC2) AuthorizeSecurityGroup

func (ec2 *EC2) AuthorizeSecurityGroup(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)

AuthorizeSecurityGroup creates an allowance for clients matching the provided rules to access instances within the given security group.

See http://goo.gl/u2sDJ for more details.

func (*EC2) CopyImage

func (ec2 *EC2) CopyImage(options *CopyImage) (resp *CopyImageResp, err error)

Copy and Image from one region to another.

See http://goo.gl/hQwPCK for more details.

func (*EC2) CreateImage

func (ec2 *EC2) CreateImage(options *CreateImage) (resp *CreateImageResp, err error)

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

See http://goo.gl/cxU41 for more details.

func (*EC2) CreateKeyPair

func (ec2 *EC2) CreateKeyPair(keyName string) (resp *CreateKeyPairResp, err error)

CreateKeyPair creates a new key pair and returns the private key contents.

See http://goo.gl/0S6hV

func (*EC2) CreateSecurityGroup

func (ec2 *EC2) CreateSecurityGroup(group SecurityGroup) (resp *CreateSecurityGroupResp, err error)

CreateSecurityGroup run a CreateSecurityGroup request in EC2, with the provided name and description.

See http://goo.gl/Eo7Yl for more details.

func (*EC2) CreateSnapshot

func (ec2 *EC2) CreateSnapshot(volumeId, description string) (resp *CreateSnapshotResp, err error)

CreateSnapshot creates a volume snapshot and stores it in S3.

See http://goo.gl/ttcda for more details.

func (*EC2) CreateTags

func (ec2 *EC2) CreateTags(resourceIds []string, tags []Tag) (resp *SimpleResp, err error)

CreateTags adds or overwrites one or more tags for the specified taggable resources. For a list of tagable resources, see: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html

See http://goo.gl/Vmkqc for more details

func (*EC2) CreateVolume

func (ec2 *EC2) CreateVolume(options *CreateVolume) (resp *CreateVolumeResp, err error)

Create a new volume.

func (*EC2) DeleteKeyPair

func (ec2 *EC2) DeleteKeyPair(name string) (resp *SimpleResp, err error)

DeleteKeyPair deletes a key pair.

See http://goo.gl/0bqok

func (*EC2) DeleteSecurityGroup

func (ec2 *EC2) DeleteSecurityGroup(group SecurityGroup) (resp *SimpleResp, err error)

DeleteSecurityGroup removes the given security group in EC2.

See http://goo.gl/QJJDO for more details.

func (*EC2) DeleteSnapshots

func (ec2 *EC2) DeleteSnapshots(ids []string) (resp *SimpleResp, err error)

DeleteSnapshots deletes the volume snapshots with the given ids.

Note: If you make periodic snapshots of a volume, the snapshots are incremental so that only the blocks on the device that have changed since your last snapshot are incrementally saved in the new snapshot. Even though snapshots are saved incrementally, the snapshot deletion process is designed so that you need to retain only the most recent snapshot in order to restore the volume.

See http://goo.gl/vwU1y for more details.

func (*EC2) DeleteVolume

func (ec2 *EC2) DeleteVolume(id string) (resp *SimpleResp, err error)

Delete an EBS volume.

func (*EC2) DeregisterImage

func (ec2 *EC2) DeregisterImage(imageId string) (resp *DeregisterImageResp, err error)

Degisters an image. Note that this does not delete the backing stores of the AMI.

See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DeregisterImage.html

func (*EC2) DetachVolume

func (ec2 *EC2) DetachVolume(id string) (resp *SimpleResp, err error)

Detaches an EBS volume.

func (*EC2) DisassociateAddress

func (ec2 *EC2) DisassociateAddress(id string) (resp *SimpleResp, err error)

Disassociate an address from a VPC instance.

func (*EC2) ImageAttribute

func (ec2 *EC2) ImageAttribute(imageId, attribute string) (resp *ImageAttributeResp, err error)

ImageAttribute describes an attribute of an AMI. You can specify only one attribute at a time. Valid attributes are:

description | kernel | ramdisk | launchPermission | productCodes | blockDeviceMapping

See http://goo.gl/bHO3zT for more details.

func (*EC2) Images

func (ec2 *EC2) Images(ids []string, filter *Filter) (resp *ImagesResp, err error)

Images returns details about available images. The ids and filter parameters, if provided, will limit the images returned. For example, to get all the private images associated with this account set the boolean filter "is-public" to 0. For list of filters: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeImages.html

Note: calling this function with nil ids and filter parameters will result in a very large number of images being returned.

See http://goo.gl/SRBhW for more details.

func (*EC2) ImagesByOwners

func (ec2 *EC2) ImagesByOwners(ids []string, owners []string, filter *Filter) (resp *ImagesResp, err error)

ImagesByOwners returns details about available images. The ids, owners, and filter parameters, if provided, will limit the images returned. For example, to get all the private images associated with this account set the boolean filter "is-public" to 0. For list of filters: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeImages.html

Note: calling this function with nil ids and filter parameters will result in a very large number of images being returned.

See http://goo.gl/SRBhW for more details.

func (*EC2) Instances

func (ec2 *EC2) Instances(instIds []string, filter *Filter) (resp *InstancesResp, err error)

Instances returns details about instances in EC2. Both parameters are optional, and if provided will limit the instances returned to those matching the given instance ids or filtering rules.

See http://goo.gl/4No7c for more details.

func (*EC2) ModifyImageAttribute

func (ec2 *EC2) ModifyImageAttribute(imageId string, options *ModifyImageAttribute) (resp *SimpleResp, err error)

ModifyImageAttribute sets attributes for an image.

See http://goo.gl/YUjO4G for more details.

func (*EC2) ModifyInstance

func (ec2 *EC2) ModifyInstance(instId string, options *ModifyInstance) (resp *ModifyInstanceResp, err error)

ModifyImageAttribute modifies the specified attribute of the specified instance. You can specify only one attribute at a time. To modify some attributes, the instance must be stopped.

See http://goo.gl/icuXh5 for more details.

func (*EC2) RebootInstances

func (ec2 *EC2) RebootInstances(ids ...string) (resp *SimpleResp, err error)

RebootInstance requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instance(s). The operation will succeed if the instances are valid and belong to you.

Requests to reboot terminated instances are ignored.

See http://goo.gl/baoUf for more details.

func (*EC2) RegisterImage

func (ec2 *EC2) RegisterImage(options *RegisterImage) (resp *RegisterImageResp, err error)

Registers a new AMI with EC2.

See: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-RegisterImage.html

func (*EC2) ReleaseAddress

func (ec2 *EC2) ReleaseAddress(id string) (resp *SimpleResp, err error)

Release an Elastic IP (VPC).

func (*EC2) RevokeSecurityGroup

func (ec2 *EC2) RevokeSecurityGroup(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)

RevokeSecurityGroup revokes permissions from a group.

See http://goo.gl/ZgdxA for more details.

func (*EC2) RunInstances

func (ec2 *EC2) RunInstances(options *RunInstances) (resp *RunInstancesResp, err error)

RunInstances starts new instances in EC2. If options.MinCount and options.MaxCount are both zero, a single instance will be started; otherwise if options.MaxCount is zero, options.MinCount will be used insteead.

See http://goo.gl/Mcm3b for more details.

func (*EC2) SecurityGroups

func (ec2 *EC2) SecurityGroups(groups []SecurityGroup, filter *Filter) (resp *SecurityGroupsResp, err error)

SecurityGroups returns details about security groups in EC2. Both parameters are optional, and if provided will limit the security groups returned to those matching the given groups or filtering rules.

See http://goo.gl/k12Uy for more details.

func (*EC2) Snapshots

func (ec2 *EC2) Snapshots(ids []string, filter *Filter) (resp *SnapshotsResp, err error)

Snapshots returns details about volume snapshots available to the user. The ids and filter parameters, if provided, limit the snapshots returned.

See http://goo.gl/ogJL4 for more details.

func (*EC2) StartInstances

func (ec2 *EC2) StartInstances(ids ...string) (resp *StartInstanceResp, err error)

StartInstances starts an Amazon EBS-backed AMI that you've previously stopped.

See http://goo.gl/awKeF for more details.

func (*EC2) StopInstances

func (ec2 *EC2) StopInstances(ids ...string) (resp *StopInstanceResp, err error)

StopInstances requests stopping one or more Amazon EBS-backed instances.

See http://goo.gl/436dJ for more details.

func (*EC2) TerminateInstances

func (ec2 *EC2) TerminateInstances(instIds []string) (resp *TerminateInstancesResp, err error)

TerminateInstances requests the termination of instances when the given ids.

See http://goo.gl/3BKHj for more details.

func (*EC2) Volumes

func (ec2 *EC2) Volumes(volIds []string, filter *Filter) (resp *VolumesResp, err error)

Finds or lists all volumes.

type Error

type Error struct {
	// HTTP status code (200, 403, ...)
	StatusCode int
	// EC2 error code ("UnsupportedOperation", ...)
	Code string
	// The human-oriented error message
	Message   string
	RequestId string `xml:"RequestID"`
}

Error encapsulates an error returned by EC2.

See http://goo.gl/VZGuC for more details.

func (*Error) Error

func (err *Error) Error() string

type Filter

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

Filter builds filtering parameters to be used in an EC2 query which supports filtering. For example:

filter := NewFilter()
filter.Add("architecture", "i386")
filter.Add("launch-index", "0")
resp, err := ec2.Instances(nil, filter)

func NewFilter

func NewFilter() *Filter

NewFilter creates a new Filter.

func (*Filter) Add

func (f *Filter) Add(name string, value ...string)

Add appends a filtering parameter with the given name and value(s).

type IPPerm

type IPPerm struct {
	Protocol     string              `xml:"ipProtocol"`
	FromPort     int                 `xml:"fromPort"`
	ToPort       int                 `xml:"toPort"`
	SourceIPs    []string            `xml:"ipRanges>item>cidrIp"`
	SourceGroups []UserSecurityGroup `xml:"groups>item"`
}

IPPerm represents an allowance within an EC2 security group.

See http://goo.gl/4oTxv for more details.

type Image

type Image struct {
	Id                 string               `xml:"imageId"`
	Name               string               `xml:"name"`
	Description        string               `xml:"description"`
	Type               string               `xml:"imageType"`
	State              string               `xml:"imageState"`
	Location           string               `xml:"imageLocation"`
	Public             bool                 `xml:"isPublic"`
	Architecture       string               `xml:"architecture"`
	Platform           string               `xml:"platform"`
	ProductCodes       []string             `xml:"productCode>item>productCode"`
	KernelId           string               `xml:"kernelId"`
	RamdiskId          string               `xml:"ramdiskId"`
	StateReason        string               `xml:"stateReason"`
	OwnerId            string               `xml:"imageOwnerId"`
	OwnerAlias         string               `xml:"imageOwnerAlias"`
	RootDeviceType     string               `xml:"rootDeviceType"`
	RootDeviceName     string               `xml:"rootDeviceName"`
	VirtualizationType string               `xml:"virtualizationType"`
	Hypervisor         string               `xml:"hypervisor"`
	BlockDevices       []BlockDeviceMapping `xml:"blockDeviceMapping>item"`
	Tags               []Tag                `xml:"tagSet>item"`
}

Image represents details about an image.

See http://goo.gl/iSqJG for more details.

type ImageAttributeResp

type ImageAttributeResp struct {
	RequestId    string               `xml:"requestId"`
	ImageId      string               `xml:"imageId"`
	Kernel       string               `xml:"kernel>value"`
	RamDisk      string               `xml:"ramdisk>value"`
	Description  string               `xml:"description>value"`
	Group        string               `xml:"launchPermission>item>group"`
	UserIds      []string             `xml:"launchPermission>item>userId"`
	ProductCodes []string             `xml:"productCodes>item>productCode"`
	BlockDevices []BlockDeviceMapping `xml:"blockDeviceMapping>item"`
}

Response to a DescribeImageAttribute request.

See http://goo.gl/bHO3zT for more details.

type ImagesResp

type ImagesResp struct {
	RequestId string  `xml:"requestId"`
	Images    []Image `xml:"imagesSet>item"`
}

Response to a DescribeImages request.

See http://goo.gl/hLnyg for more details.

type Instance

type Instance struct {
	InstanceId         string        `xml:"instanceId"`
	InstanceType       string        `xml:"instanceType"`
	ImageId            string        `xml:"imageId"`
	PrivateDNSName     string        `xml:"privateDnsName"`
	DNSName            string        `xml:"dnsName"`
	KeyName            string        `xml:"keyName"`
	AMILaunchIndex     int           `xml:"amiLaunchIndex"`
	Hypervisor         string        `xml:"hypervisor"`
	VirtType           string        `xml:"virtualizationType"`
	Monitoring         string        `xml:"monitoring>state"`
	AvailZone          string        `xml:"placement>availabilityZone"`
	PlacementGroupName string        `xml:"placement>groupName"`
	State              InstanceState `xml:"instanceState"`
	Tags               []Tag         `xml:"tagSet>item"`
	VpcId              string        `xml:"vpcId"`
	SubnetId           string        `xml:"subnetId"`
	IamInstanceProfile string        `xml:"iamInstanceProfile"`
	PrivateIpAddress   string        `xml:"privateIpAddress"`
	PublicIpAddress    string        `xml:"ipAddress"`
	Architecture       string        `xml:"architecture"`
}

Instance encapsulates a running instance in EC2.

See http://goo.gl/OCH8a for more details.

type InstanceState

type InstanceState struct {
	Code int    `xml:"code"` // Watch out, bits 15-8 have unpublished meaning.
	Name string `xml:"name"`
}

InstanceState encapsulates the state of an instance in EC2.

See http://goo.gl/y3ZBq for more details.

type InstanceStateChange

type InstanceStateChange struct {
	InstanceId    string        `xml:"instanceId"`
	CurrentState  InstanceState `xml:"currentState"`
	PreviousState InstanceState `xml:"previousState"`
}

InstanceStateChange informs of the previous and current states for an instance when a state change is requested.

type InstancesResp

type InstancesResp struct {
	RequestId    string        `xml:"requestId"`
	Reservations []Reservation `xml:"reservationSet>item"`
}

Response to a DescribeInstances request.

See http://goo.gl/mLbmw for more details.

type ModifyImageAttribute

type ModifyImageAttribute struct {
	AddUsers     []string
	RemoveUsers  []string
	AddGroups    []string
	RemoveGroups []string
	ProductCodes []string
	Description  string
}

The ModifyImageAttribute request parameters.

type ModifyInstance

type ModifyInstance struct {
	InstanceType          string
	BlockDevices          []BlockDeviceMapping
	DisableAPITermination bool
	EbsOptimized          bool
	SecurityGroups        []SecurityGroup
	ShutdownBehavior      string
	KernelId              string
	RamdiskId             string
	SourceDestCheck       bool
	SriovNetSupport       bool
	UserData              []byte
}

The ModifyInstanceAttribute request parameters.

type ModifyInstanceResp

type ModifyInstanceResp struct {
	RequestId string `xml:"requestId"`
	Return    bool   `xml:"return"`
}

Response to a ModifyInstanceAttribute request.

http://goo.gl/icuXh5 for more details.

type RegisterImage

type RegisterImage struct {
	ImageLocation  string
	Name           string
	Description    string
	Architecture   string
	KernelId       string
	RamdiskId      string
	RootDeviceName string
	VirtType       string
	BlockDevices   []BlockDeviceMapping
}

The RegisterImage request parameters.

type RegisterImageResp

type RegisterImageResp struct {
	RequestId string `xml:"requestId"`
	ImageId   string `xml:"imageId"`
}

Response to a RegisterImage request.

type Reservation

type Reservation struct {
	ReservationId  string          `xml:"reservationId"`
	OwnerId        string          `xml:"ownerId"`
	RequesterId    string          `xml:"requesterId"`
	SecurityGroups []SecurityGroup `xml:"groupSet>item"`
	Instances      []Instance      `xml:"instancesSet>item"`
}

Reservation represents details about a reservation in EC2.

See http://goo.gl/0ItPT for more details.

type RunInstances

type RunInstances struct {
	ImageId                  string
	MinCount                 int
	MaxCount                 int
	KeyName                  string
	InstanceType             string
	SecurityGroups           []SecurityGroup
	IamInstanceProfile       string
	KernelId                 string
	RamdiskId                string
	UserData                 []byte
	AvailZone                string
	PlacementGroupName       string
	Monitoring               bool
	SubnetId                 string
	AssociatePublicIpAddress bool
	DisableAPITermination    bool
	ShutdownBehavior         string
	PrivateIPAddress         string
	BlockDevices             []BlockDeviceMapping
}

The RunInstances type encapsulates options for the respective request in EC2.

See http://goo.gl/Mcm3b for more details.

type RunInstancesResp

type RunInstancesResp struct {
	RequestId      string          `xml:"requestId"`
	ReservationId  string          `xml:"reservationId"`
	OwnerId        string          `xml:"ownerId"`
	SecurityGroups []SecurityGroup `xml:"groupSet>item"`
	Instances      []Instance      `xml:"instancesSet>item"`
}

Response to a RunInstances request.

See http://goo.gl/Mcm3b for more details.

type SecurityGroup

type SecurityGroup struct {
	Id          string `xml:"groupId"`
	Name        string `xml:"groupName"`
	Description string `xml:"groupDescription"`
	VpcId       string `xml:"vpcId"`
}

SecurityGroup represents an EC2 security group. If SecurityGroup is used as a parameter, then one of Id or Name may be empty. If both are set, then Id is used.

func SecurityGroupIds

func SecurityGroupIds(ids ...string) []SecurityGroup

SecurityGroupNames is a convenience function that returns a slice of security groups with the given ids.

func SecurityGroupNames

func SecurityGroupNames(names ...string) []SecurityGroup

SecurityGroupNames is a convenience function that returns a slice of security groups with the given names.

type SecurityGroupInfo

type SecurityGroupInfo struct {
	SecurityGroup
	OwnerId     string   `xml:"ownerId"`
	Description string   `xml:"groupDescription"`
	IPPerms     []IPPerm `xml:"ipPermissions>item"`
}

SecurityGroup encapsulates details for a security group in EC2.

See http://goo.gl/CIdyP for more details.

type SecurityGroupsResp

type SecurityGroupsResp struct {
	RequestId string              `xml:"requestId"`
	Groups    []SecurityGroupInfo `xml:"securityGroupInfo>item"`
}

SecurityGroupsResp represents a response to a DescribeSecurityGroups request in EC2.

See http://goo.gl/k12Uy for more details.

type SimpleResp

type SimpleResp struct {
	XMLName   xml.Name
	RequestId string `xml:"requestId"`
}

SimpleResp represents a response to an EC2 request which on success will return no other information besides a request id.

type Snapshot

type Snapshot struct {
	Id          string `xml:"snapshotId"`
	VolumeId    string `xml:"volumeId"`
	VolumeSize  string `xml:"volumeSize"`
	Status      string `xml:"status"`
	StartTime   string `xml:"startTime"`
	Description string `xml:"description"`
	Progress    string `xml:"progress"`
	OwnerId     string `xml:"ownerId"`
	OwnerAlias  string `xml:"ownerAlias"`
	Tags        []Tag  `xml:"tagSet>item"`
}

Snapshot represents details about a volume snapshot.

See http://goo.gl/nkovs for more details.

type SnapshotsResp

type SnapshotsResp struct {
	RequestId string     `xml:"requestId"`
	Snapshots []Snapshot `xml:"snapshotSet>item"`
}

Response to a DescribeSnapshots request.

See http://goo.gl/nClDT for more details.

type StartInstanceResp

type StartInstanceResp struct {
	RequestId    string                `xml:"requestId"`
	StateChanges []InstanceStateChange `xml:"instancesSet>item"`
}

Response to a StartInstances request.

See http://goo.gl/awKeF for more details.

type StopInstanceResp

type StopInstanceResp struct {
	RequestId    string                `xml:"requestId"`
	StateChanges []InstanceStateChange `xml:"instancesSet>item"`
}

Response to a StopInstances request.

See http://goo.gl/436dJ for more details.

type Tag

type Tag struct {
	Key   string `xml:"key"`
	Value string `xml:"value"`
}

ResourceTag represents key-value metadata used to classify and organize EC2 instances.

See http://goo.gl/bncl3 for more details

type TerminateInstancesResp

type TerminateInstancesResp struct {
	RequestId    string                `xml:"requestId"`
	StateChanges []InstanceStateChange `xml:"instancesSet>item"`
}

Response to a TerminateInstances request.

See http://goo.gl/3BKHj for more details.

type UserSecurityGroup

type UserSecurityGroup struct {
	Id      string `xml:"groupId"`
	Name    string `xml:"groupName"`
	OwnerId string `xml:"userId"`
}

UserSecurityGroup holds a security group and the owner of that group.

type Volume

type Volume struct {
	VolumeId    string             `xml:"volumeId"`
	Size        string             `xml:"size"`
	SnapshotId  string             `xml:"snapshotId"`
	AvailZone   string             `xml:"availabilityZone"`
	Status      string             `xml:"status"`
	Attachments []VolumeAttachment `xml:"attachmentSet>item"`
	VolumeType  string             `xml:"volumeType"`
	IOPS        int64              `xml:"iops"`
	Tags        []Tag              `xml:"tagSet>item"`
}

Volume is a single volume.

type VolumeAttachment

type VolumeAttachment struct {
	VolumeId   string `xml:"volumeId"`
	InstanceId string `xml:"instanceId"`
	Device     string `xml:"device"`
	Status     string `xml:"status"`
}

type VolumesResp

type VolumesResp struct {
	RequestId string   `xml:"requestId"`
	Volumes   []Volume `xml:"volumeSet>item"`
}

Response to a DescribeVolumes request

Directories

Path Synopsis
The ec2test package implements a fake EC2 provider with the capability of inducing errors on any given operation, and retrospectively determining what operations have been carried out.
The ec2test package implements a fake EC2 provider with the capability of inducing errors on any given operation, and retrospectively determining what operations have been carried out.

Jump to

Keyboard shortcuts

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