 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- type Address
- type AllocateAddress
- type AllocateAddressResp
- type AssociateAddress
- type AssociateAddressResp
- type AssociateRouteTableResp
- type AttachVolumeResp
- type AvailabilityZone
- type AvailabilityZoneInfo
- type BlockDevice
- type BlockDeviceMapping
- type CancelSpotRequestResult
- type CancelSpotRequestsResp
- type CopyImage
- type CopyImageResp
- type CreateImage
- type CreateImageResp
- type CreateInternetGateway
- type CreateInternetGatewayResp
- type CreateKeyPairResp
- type CreateNetworkAcl
- type CreateNetworkAclEntryResp
- type CreateNetworkAclResp
- type CreateRoute
- type CreateRouteTable
- type CreateRouteTableResp
- type CreateSecurityGroupResp
- type CreateSnapshotResp
- type CreateSubnet
- type CreateSubnetResp
- type CreateVolume
- type CreateVolumeResp
- type CreateVpc
- type CreateVpcResp
- type DeleteNetworkAclEntryResp
- type DeleteNetworkAclResp
- type DeregisterImageResp
- type DescribeAddressesResp
- type DescribeAvailabilityZonesResp
- type DescribeInstanceStatus
- type DescribeInstanceStatusResp
- type DescribeSpotPriceHistory
- type DescribeSpotPriceHistoryResp
- type EC2
- func (ec2 *EC2) Addresses(publicIps []string, allocationIds []string, filter *Filter) (resp *DescribeAddressesResp, err error)
- func (ec2 *EC2) AllocateAddress(options *AllocateAddress) (resp *AllocateAddressResp, err error)
- func (ec2 *EC2) AssociateAddress(options *AssociateAddress) (resp *AssociateAddressResp, err error)
- func (ec2 *EC2) AssociateRouteTable(id, subnetId string) (*AssociateRouteTableResp, error)
- func (ec2 *EC2) AttachInternetGateway(id, vpcId string) (resp *SimpleResp, err error)
- func (ec2 *EC2) AttachVolume(volumeId string, instanceId string, device string) (resp *AttachVolumeResp, err error)
- func (ec2 *EC2) AuthorizeSecurityGroup(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)
- func (ec2 *EC2) AuthorizeSecurityGroupEgress(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)
- func (ec2 *EC2) CancelSpotRequests(spotrequestIds []string) (resp *CancelSpotRequestsResp, err error)
- func (ec2 *EC2) CopyImage(options *CopyImage) (resp *CopyImageResp, err error)
- func (ec2 *EC2) CreateImage(options *CreateImage) (resp *CreateImageResp, err error)
- func (ec2 *EC2) CreateInternetGateway(options *CreateInternetGateway) (resp *CreateInternetGatewayResp, err error)
- func (ec2 *EC2) CreateKeyPair(keyName string) (resp *CreateKeyPairResp, err error)
- func (ec2 *EC2) CreateNetworkAcl(options *CreateNetworkAcl) (resp *CreateNetworkAclResp, err error)
- func (ec2 *EC2) CreateNetworkAclEntry(networkAclId string, options *NetworkAclEntry) (resp *CreateNetworkAclEntryResp, err error)
- func (ec2 *EC2) CreateRoute(options *CreateRoute) (resp *SimpleResp, err error)
- func (ec2 *EC2) CreateRouteTable(options *CreateRouteTable) (resp *CreateRouteTableResp, err error)
- func (ec2 *EC2) CreateSecurityGroup(group SecurityGroup) (resp *CreateSecurityGroupResp, err error)
- func (ec2 *EC2) CreateSnapshot(volumeId, description string) (resp *CreateSnapshotResp, err error)
- func (ec2 *EC2) CreateSubnet(options *CreateSubnet) (resp *CreateSubnetResp, err error)
- func (ec2 *EC2) CreateTags(resourceIds []string, tags []Tag) (resp *SimpleResp, err error)
- func (ec2 *EC2) CreateVolume(options *CreateVolume) (resp *CreateVolumeResp, err error)
- func (ec2 *EC2) CreateVpc(options *CreateVpc) (resp *CreateVpcResp, err error)
- func (ec2 *EC2) DeleteInternetGateway(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteKeyPair(name string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteNetworkAcl(id string) (resp *DeleteNetworkAclResp, err error)
- func (ec2 *EC2) DeleteNetworkAclEntry(id string, ruleNumber int, egress bool) (resp *DeleteNetworkAclEntryResp, err error)
- func (ec2 *EC2) DeleteRoute(routeTableId, cidr string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteRouteTable(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteSecurityGroup(group SecurityGroup) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteSnapshots(ids []string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteSubnet(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteTags(resourceIds []string, tags []Tag) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteVolume(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeleteVpc(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DeregisterImage(imageId string) (resp *DeregisterImageResp, err error)
- func (ec2 *EC2) DescribeAvailabilityZones(filter *Filter) (resp *DescribeAvailabilityZonesResp, err error)
- func (ec2 *EC2) DescribeInstanceStatus(options *DescribeInstanceStatus, filter *Filter) (resp *DescribeInstanceStatusResp, err error)
- func (ec2 *EC2) DescribeInternetGateways(ids []string, filter *Filter) (resp *InternetGatewaysResp, err error)
- func (ec2 *EC2) DescribeRouteTables(ids []string, filter *Filter) (resp *RouteTablesResp, err error)
- func (ec2 *EC2) DescribeSpotPriceHistory(o *DescribeSpotPriceHistory) (resp *DescribeSpotPriceHistoryResp, err error)
- func (ec2 *EC2) DescribeSpotRequests(spotrequestIds []string, filter *Filter) (resp *SpotRequestsResp, err error)
- func (ec2 *EC2) DescribeSubnets(ids []string, filter *Filter) (resp *SubnetsResp, err error)
- func (ec2 *EC2) DescribeVpcs(ids []string, filter *Filter) (resp *VpcsResp, err error)
- func (ec2 *EC2) DetachInternetGateway(id, vpcId string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DetachVolume(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DisassociateAddress(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DisassociateAddressClassic(ip string) (resp *SimpleResp, err error)
- func (ec2 *EC2) DisassociateRouteTable(id string) (*SimpleResp, error)
- func (ec2 *EC2) GetConsoleOutput(options *GetConsoleOutput) (resp *GetConsoleOutputResp, err error)
- func (ec2 *EC2) ImageAttribute(imageId, attribute string) (resp *ImageAttributeResp, err error)
- func (ec2 *EC2) Images(ids []string, filter *Filter) (resp *ImagesResp, err error)
- func (ec2 *EC2) ImagesByOwners(ids []string, owners []string, filter *Filter) (resp *ImagesResp, err error)
- func (ec2 *EC2) ImportKeyPair(keyname string, key string) (resp *ImportKeyPairResponse, err error)
- func (ec2 *EC2) Instances(instIds []string, filter *Filter) (resp *InstancesResp, err error)
- func (ec2 *EC2) KeyPairs(keynames []string, filter *Filter) (resp *KeyPairsResp, err error)
- func (ec2 *EC2) ModifyImageAttribute(imageId string, options *ModifyImageAttribute) (resp *SimpleResp, err error)
- func (ec2 *EC2) ModifyInstance(instId string, options *ModifyInstance) (resp *ModifyInstanceResp, err error)
- func (ec2 *EC2) ModifySubnetAttribute(options *ModifySubnetAttribute) (resp *ModifySubnetAttributeResp, err error)
- func (ec2 *EC2) ModifyVpcAttribute(vpcId string, options *ModifyVpcAttribute) (*SimpleResp, error)
- func (ec2 *EC2) NetworkAcls(networkAclIds []string, filter *Filter) (resp *NetworkAclsResp, err error)
- func (ec2 *EC2) ReassociateRouteTable(id, routeTableId string) (*ReassociateRouteTableResp, error)
- func (ec2 *EC2) RebootInstances(ids ...string) (resp *SimpleResp, err error)
- func (ec2 *EC2) RegisterImage(options *RegisterImage) (resp *RegisterImageResp, err error)
- func (ec2 *EC2) ReleaseAddress(id string) (resp *SimpleResp, err error)
- func (ec2 *EC2) ReleasePublicAddress(publicIp string) (resp *SimpleResp, err error)
- func (ec2 *EC2) ReplaceNetworkAclAssociation(associationId string, networkAclId string) (resp *ReplaceNetworkAclAssociationResponse, err error)
- func (ec2 *EC2) ReplaceRoute(options *ReplaceRoute) (resp *SimpleResp, err error)
- func (ec2 *EC2) RequestSpotInstances(options *RequestSpotInstances) (resp *RequestSpotInstancesResp, err error)
- func (ec2 *EC2) ResetImageAttribute(imageId string, options *ResetImageAttribute) (resp *SimpleResp, err error)
- func (ec2 *EC2) RevokeSecurityGroup(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)
- func (ec2 *EC2) RunInstances(options *RunInstances) (resp *RunInstancesResp, err error)
- func (ec2 *EC2) SecurityGroups(groups []SecurityGroup, filter *Filter) (resp *SecurityGroupsResp, err error)
- func (ec2 *EC2) Snapshots(ids []string, filter *Filter) (resp *SnapshotsResp, err error)
- func (ec2 *EC2) StartInstances(ids ...string) (resp *StartInstanceResp, err error)
- func (ec2 *EC2) StopInstances(ids ...string) (resp *StopInstanceResp, err error)
- func (ec2 *EC2) Tags(filter *Filter) (*TagsResp, error)
- func (ec2 *EC2) TerminateInstances(instIds []string) (resp *TerminateInstancesResp, err error)
- func (ec2 *EC2) Volumes(volIds []string, filter *Filter) (resp *VolumesResp, err error)
- func (ec2 *EC2) VpcAttribute(vpcId, attribute string) (resp *VpcAttributeResp, err error)
 
- type Error
- type EventsSet
- type Filter
- type GetConsoleOutput
- type GetConsoleOutputResp
- type IPPerm
- type IcmpCode
- type Image
- type ImageAttributeResp
- type ImagesResp
- type ImportKeyPairResponse
- type Instance
- type InstanceState
- type InstanceStateChange
- type InstanceStatusSet
- type InstancesResp
- type InternetGateway
- type InternetGatewayAttachment
- type InternetGatewaysResp
- type KeyPair
- type KeyPairsResp
- type ModifyImageAttribute
- type ModifyInstance
- type ModifyInstanceResp
- type ModifySubnetAttribute
- type ModifySubnetAttributeResp
- type ModifyVpcAttribute
- type NetworkAcl
- type NetworkAclAssociation
- type NetworkAclEntry
- type NetworkAclsResp
- type PortRange
- type ReassociateRouteTableResp
- type RegisterImage
- type RegisterImageResp
- type ReplaceNetworkAclAssociationResponse
- type ReplaceRoute
- type RequestSpotInstances
- type RequestSpotInstancesResp
- type Reservation
- type ResetImageAttribute
- type ResourceTag
- type Route
- type RouteTable
- type RouteTableAssociation
- type RouteTablesResp
- type RunInstances
- type RunInstancesResp
- type SecurityGroup
- type SecurityGroupInfo
- type SecurityGroupsResp
- type SimpleResp
- type Snapshot
- type SnapshotsResp
- type SpotInstanceSpec
- type SpotLaunchSpec
- type SpotPriceHistory
- type SpotRequestResult
- type SpotRequestsResp
- type SpotStatus
- type StartInstanceResp
- type Status
- type StatusDetails
- type StopInstanceResp
- type Subnet
- type SubnetsResp
- type Tag
- type TagsResp
- type TerminateInstancesResp
- type UserSecurityGroup
- type VPC
- type Volume
- type VolumeAttachment
- type VolumesResp
- type VpcAttributeResp
- type VpcsResp
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Address ¶
type Address struct {
	PublicIp                string `xml:"publicIp"`
	AllocationId            string `xml:"allocationId"`
	Domain                  string `xml:"domain"`
	InstanceId              string `xml:"instanceId"`
	AssociationId           string `xml:"associationId"`
	NetworkInterfaceId      string `xml:"networkInterfaceId"`
	NetworkInterfaceOwnerId string `xml:"networkInterfaceOwnerId"`
	PrivateIpAddress        string `xml:"privateIpAddress"`
}
    Address represents an Elastic IP Address See http://goo.gl/uxCjp7 for more details
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
	PublicIp           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 AssociateRouteTableResp ¶
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 AvailabilityZone ¶ added in v0.9.0
AvailabilityZone represents an EC2 availability zone.
type AvailabilityZoneInfo ¶ added in v0.9.0
type AvailabilityZoneInfo struct {
	AvailabilityZone
	State      string   `xml:"zoneState"`
	MessageSet []string `xml:"messageSet>item"`
}
    AvailabilityZoneInfo encapsulates details for an availability zone in EC2.
type BlockDevice ¶ added in v0.9.0
type BlockDevice struct {
	DeviceName          string `xml:"deviceName"`
	VolumeId            string `xml:"ebs>volumeId"`
	Status              string `xml:"ebs>status"`
	AttachTime          string `xml:"ebs>attachTime"`
	DeleteOnTermination bool   `xml:"ebs>deleteOnTermination"`
}
    BlockDevice represents the association of a block device with an instance.
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"`
	Encrypted           bool   `xml:"ebs>encrypted"`
	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 CancelSpotRequestResult ¶
type CancelSpotRequestResult struct {
	SpotRequestId string `xml:"spotInstanceRequestId"`
	State         string `xml:"state"`
}
    Response to a CancelSpotInstanceRequests request.
See http://goo.gl/3BKHj for more details.
type CancelSpotRequestsResp ¶
type CancelSpotRequestsResp struct {
	RequestId                string                    `xml:"requestId"`
	CancelSpotRequestResults []CancelSpotRequestResult `xml:"spotInstanceRequestSet>item"`
}
    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 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 CreateInternetGateway ¶
type CreateInternetGateway struct{}
    CreateInternetGateway request parameters.
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateInternetGateway.html
type CreateInternetGatewayResp ¶
type CreateInternetGatewayResp struct {
	RequestId       string          `xml:"requestId"`
	InternetGateway InternetGateway `xml:"internetGateway"`
}
    CreateInternetGateway response
type CreateKeyPairResp ¶
type CreateNetworkAcl ¶ added in v0.9.0
type CreateNetworkAcl struct {
	VpcId string
}
    The CreateNetworkAcl request parameters
type CreateNetworkAclEntryResp ¶ added in v0.9.0
type CreateNetworkAclEntryResp struct {
	RequestId string `xml:"requestId"`
	Return    bool   `xml:"return"`
}
    Response to CreateNetworkAclEntry request
type CreateNetworkAclResp ¶ added in v0.9.0
type CreateNetworkAclResp struct {
	RequestId  string     `xml:"requestId"`
	NetworkAcl NetworkAcl `xml:"networkAcl"`
}
    Response to a CreateNetworkAcl request
type CreateRoute ¶
type CreateRoute struct {
	RouteTableId           string
	DestinationCidrBlock   string
	GatewayId              string
	InstanceId             string
	NetworkInterfaceId     string
	VpcPeeringConnectionId string
}
    CreateRoute request parameters
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateRoute.html
type CreateRouteTable ¶
type CreateRouteTable struct {
	VpcId string
}
    The CreateRouteTable request parameters.
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateRouteTable.html
type CreateRouteTableResp ¶
type CreateRouteTableResp struct {
	RequestId  string     `xml:"requestId"`
	RouteTable RouteTable `xml:"routeTable"`
}
    Response to a CreateRouteTable request.
type CreateSecurityGroupResp ¶
type CreateSecurityGroupResp struct {
	SecurityGroup
	RequestId string `xml:"requestId"`
}
    CreateSecurityGroupResp represents a response to a CreateSecurityGroup request.
type CreateSnapshotResp ¶
Response to a CreateSnapshot request.
See http://goo.gl/ttcda for more details.
type CreateSubnet ¶
The CreateSubnet request parameters
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateSubnet.html
type CreateSubnetResp ¶
Response to a CreateSubnet request
type CreateVolume ¶
type CreateVolume struct {
	AvailZone  string
	Size       int64
	SnapshotId string
	VolumeType string
	IOPS       int64
	Encrypted  bool
}
    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"`
	Encrypted  bool   `xml:"encrypted"`
}
    Response to a CreateVolume request
type CreateVpc ¶
The CreateVpc request parameters
See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpc.html
type CreateVpcResp ¶
Response to a CreateVpc request
type DeleteNetworkAclEntryResp ¶ added in v0.9.0
type DeleteNetworkAclEntryResp struct {
	RequestId string `xml:"requestId"`
	Return    bool   `xml:"return"`
}
    Response to a DeleteNetworkAclEntry request.
type DeleteNetworkAclResp ¶ added in v0.9.0
Response to a DeleteNetworkAcl request.
type DeregisterImageResp ¶
Response to a DegisterImage request.
See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DeregisterImage.html
type DescribeAddressesResp ¶
type DescribeAvailabilityZonesResp ¶ added in v0.9.0
type DescribeAvailabilityZonesResp struct {
	RequestId string                 `xml:"requestId"`
	Zones     []AvailabilityZoneInfo `xml:"availabilityZoneInfo>item"`
}
    DescribeAvailabilityZonesResp represents a response to a DescribeAvailabilityZones request in EC2.
type DescribeInstanceStatus ¶ added in v0.9.0
type DescribeInstanceStatusResp ¶ added in v0.9.0
type DescribeInstanceStatusResp struct {
	RequestId      string              `xml:"requestId"`
	InstanceStatus []InstanceStatusSet `xml:"instanceStatusSet>item"`
}
    type DescribeSpotPriceHistory ¶ added in v0.9.0
type DescribeSpotPriceHistoryResp ¶ added in v0.9.0
type DescribeSpotPriceHistoryResp struct {
	RequestId string             `xml:"requestId"`
	History   []SpotPriceHistory `xml:"spotPriceHistorySet>item"`
}
    Response to a DescribeSpotPriceHisotyr request.
See http://goo.gl/3BKHj for more details.
type EC2 ¶
The EC2 type encapsulates operations with a specific EC2 region.
func NewWithClient ¶
New creates a new EC2.
func (*EC2) Addresses ¶
func (ec2 *EC2) Addresses(publicIps []string, allocationIds []string, filter *Filter) (resp *DescribeAddressesResp, err error)
DescribeAddresses returns details about one or more Elastic IP Addresses. Returned addresses can be filtered by Public IP, Allocation ID or multiple filters
See http://goo.gl/zW7J4p for more details.
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) AssociateRouteTable ¶
func (ec2 *EC2) AssociateRouteTable(id, subnetId string) (*AssociateRouteTableResp, error)
Associate a routing table.
func (*EC2) AttachInternetGateway ¶
func (ec2 *EC2) AttachInternetGateway(id, vpcId string) (resp *SimpleResp, err error)
Attach an InternetGateway.
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) AuthorizeSecurityGroupEgress ¶
func (ec2 *EC2) AuthorizeSecurityGroupEgress(group SecurityGroup, perms []IPPerm) (resp *SimpleResp, err error)
AuthorizeSecurityGroupEgress creates an allowance for clients matching the provided rules for egress access.
See http://goo.gl/UHnH4L for more details.
func (*EC2) CancelSpotRequests ¶
func (ec2 *EC2) CancelSpotRequests(spotrequestIds []string) (resp *CancelSpotRequestsResp, err error)
CancelSpotRequests requests the cancellation of spot requests when the given ids.
See http://goo.gl/3BKHj 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) CreateInternetGateway ¶
func (ec2 *EC2) CreateInternetGateway( options *CreateInternetGateway) (resp *CreateInternetGatewayResp, err error)
Create a new internet gateway.
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.
func (*EC2) CreateNetworkAcl ¶ added in v0.9.0
func (ec2 *EC2) CreateNetworkAcl(options *CreateNetworkAcl) (resp *CreateNetworkAclResp, err error)
CreateNetworkAcl creates a network ACL in a VPC.
func (*EC2) CreateNetworkAclEntry ¶ added in v0.9.0
func (ec2 *EC2) CreateNetworkAclEntry(networkAclId string, options *NetworkAclEntry) (resp *CreateNetworkAclEntryResp, err error)
CreateNetworkAclEntry creates an entry (a rule) in a network ACL with the specified rule number.
func (*EC2) CreateRoute ¶
func (ec2 *EC2) CreateRoute(options *CreateRoute) (resp *SimpleResp, err error)
Create a new route.
func (*EC2) CreateRouteTable ¶
func (ec2 *EC2) CreateRouteTable( options *CreateRouteTable) (resp *CreateRouteTableResp, err error)
Create a new routing table.
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) CreateSubnet ¶
func (ec2 *EC2) CreateSubnet(options *CreateSubnet) (resp *CreateSubnetResp, err error)
Create a new subnet.
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) CreateVpc ¶
func (ec2 *EC2) CreateVpc(options *CreateVpc) (resp *CreateVpcResp, err error)
Create a new VPC.
func (*EC2) DeleteInternetGateway ¶
func (ec2 *EC2) DeleteInternetGateway(id string) (resp *SimpleResp, err error)
Delete an InternetGateway.
func (*EC2) DeleteKeyPair ¶
func (ec2 *EC2) DeleteKeyPair(name string) (resp *SimpleResp, err error)
DeleteKeyPair deletes a key pair.
func (*EC2) DeleteNetworkAcl ¶ added in v0.9.0
func (ec2 *EC2) DeleteNetworkAcl(id string) (resp *DeleteNetworkAclResp, err error)
DeleteNetworkAcl deletes the network ACL with specified id.
func (*EC2) DeleteNetworkAclEntry ¶ added in v0.9.0
func (ec2 *EC2) DeleteNetworkAclEntry(id string, ruleNumber int, egress bool) (resp *DeleteNetworkAclEntryResp, err error)
DeleteNetworkAclEntry deletes the specified ingress or egress entry (rule) from the specified network ACL.
func (*EC2) DeleteRoute ¶
func (ec2 *EC2) DeleteRoute(routeTableId, cidr string) (resp *SimpleResp, err error)
Delete a Route.
func (*EC2) DeleteRouteTable ¶
func (ec2 *EC2) DeleteRouteTable(id string) (resp *SimpleResp, err error)
Delete a RouteTable.
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) DeleteSubnet ¶
func (ec2 *EC2) DeleteSubnet(id string) (resp *SimpleResp, err error)
Delete a Subnet.
func (*EC2) DeleteTags ¶ added in v0.9.0
func (ec2 *EC2) DeleteTags(resourceIds []string, tags []Tag) (resp *SimpleResp, err error)
DeleteTags deletes tags.
func (*EC2) DeleteVolume ¶
func (ec2 *EC2) DeleteVolume(id string) (resp *SimpleResp, err error)
Delete an EBS volume.
func (*EC2) DeleteVpc ¶
func (ec2 *EC2) DeleteVpc(id string) (resp *SimpleResp, err error)
Delete a VPC.
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) DescribeAvailabilityZones ¶ added in v0.9.0
func (ec2 *EC2) DescribeAvailabilityZones(filter *Filter) (resp *DescribeAvailabilityZonesResp, err error)
DescribeAvailabilityZones returns details about availability zones in EC2. The filter parameter is optional, and if provided will limit the availability zones returned to those matching the given filtering rules.
See http://goo.gl/ylxT4R for more details.
func (*EC2) DescribeInstanceStatus ¶ added in v0.9.0
func (ec2 *EC2) DescribeInstanceStatus(options *DescribeInstanceStatus, filter *Filter) (resp *DescribeInstanceStatusResp, err error)
func (*EC2) DescribeInternetGateways ¶
func (ec2 *EC2) DescribeInternetGateways(ids []string, filter *Filter) (resp *InternetGatewaysResp, err error)
DescribeInternetGateways
func (*EC2) DescribeRouteTables ¶
func (ec2 *EC2) DescribeRouteTables(ids []string, filter *Filter) (resp *RouteTablesResp, err error)
DescribeRouteTables
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeRouteTables.html
func (*EC2) DescribeSpotPriceHistory ¶ added in v0.9.0
func (ec2 *EC2) DescribeSpotPriceHistory(o *DescribeSpotPriceHistory) (resp *DescribeSpotPriceHistoryResp, err error)
DescribeSpotPriceHistory gets the spot pricing history.
See http://goo.gl/3BKHj for more details.
func (*EC2) DescribeSpotRequests ¶
func (ec2 *EC2) DescribeSpotRequests(spotrequestIds []string, filter *Filter) (resp *SpotRequestsResp, err error)
DescribeSpotInstanceRequests returns details about spot requests in EC2. Both parameters are optional, and if provided will limit the spot requests returned to those matching the given spot request ids or filtering rules.
See http://goo.gl/KsKJJk for more details.
func (*EC2) DescribeSubnets ¶
func (ec2 *EC2) DescribeSubnets(ids []string, filter *Filter) (resp *SubnetsResp, err error)
DescribeSubnets
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSubnets.html
func (*EC2) DescribeVpcs ¶
DescribeVpcs
See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeVpcs.html
func (*EC2) DetachInternetGateway ¶
func (ec2 *EC2) DetachInternetGateway(id, vpcId string) (resp *SimpleResp, err error)
Detach an InternetGateway.
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) DisassociateAddressClassic ¶ added in v0.9.0
func (ec2 *EC2) DisassociateAddressClassic(ip string) (resp *SimpleResp, err error)
Disassociate an address from a VPC instance.
func (*EC2) DisassociateRouteTable ¶
func (ec2 *EC2) DisassociateRouteTable(id string) (*SimpleResp, error)
Disassociate a routing table.
func (*EC2) GetConsoleOutput ¶ added in v0.9.0
func (ec2 *EC2) GetConsoleOutput(options *GetConsoleOutput) (resp *GetConsoleOutputResp, err error)
GetConsoleOutput returns the console output for the sepcified instance. Note that console output is base64-encoded, as in the underlying AWS API.
See http://goo.gl/EY70zb for more details.
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) ImportKeyPair ¶
func (ec2 *EC2) ImportKeyPair(keyname string, key string) (resp *ImportKeyPairResponse, err error)
ImportKeyPair imports a key into AWS
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) KeyPairs ¶
func (ec2 *EC2) KeyPairs(keynames []string, filter *Filter) (resp *KeyPairsResp, err error)
KeyPairs returns list of key pairs for this account
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) ModifySubnetAttribute ¶ added in v0.9.0
func (ec2 *EC2) ModifySubnetAttribute(options *ModifySubnetAttribute) (resp *ModifySubnetAttributeResp, err error)
ModifySubnetAttribute
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-ModifySubnetAttribute.html
func (*EC2) ModifyVpcAttribute ¶
func (ec2 *EC2) ModifyVpcAttribute(vpcId string, options *ModifyVpcAttribute) (*SimpleResp, error)
ModifyVpcAttribute modifies the specified attribute of the specified VPC.
See http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/index.html?ApiReference-query-ModifyVpcAttribute.html for more details.
func (*EC2) NetworkAcls ¶ added in v0.9.0
func (ec2 *EC2) NetworkAcls(networkAclIds []string, filter *Filter) (resp *NetworkAclsResp, err error)
NetworkAcls describes one or more of your network ACLs for given filter.
func (*EC2) ReassociateRouteTable ¶
func (ec2 *EC2) ReassociateRouteTable(id, routeTableId string) (*ReassociateRouteTableResp, error)
Re-associate a routing table.
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) ReleasePublicAddress ¶
func (ec2 *EC2) ReleasePublicAddress(publicIp string) (resp *SimpleResp, err error)
Release an Elastic IP (Public)
func (*EC2) ReplaceNetworkAclAssociation ¶ added in v0.9.0
func (ec2 *EC2) ReplaceNetworkAclAssociation(associationId string, networkAclId string) (resp *ReplaceNetworkAclAssociationResponse, err error)
ReplaceNetworkAclAssociation changes which network ACL a subnet is associated with.
func (*EC2) ReplaceRoute ¶
func (ec2 *EC2) ReplaceRoute(options *ReplaceRoute) (resp *SimpleResp, err error)
Replace a new route.
func (*EC2) RequestSpotInstances ¶
func (ec2 *EC2) RequestSpotInstances(options *RequestSpotInstances) (resp *RequestSpotInstancesResp, err error)
RequestSpotInstances requests a new spot instances in EC2.
func (*EC2) ResetImageAttribute ¶
func (ec2 *EC2) ResetImageAttribute(imageId string, options *ResetImageAttribute) (resp *SimpleResp, err error)
ResetImageAttribute resets an attribute of an AMI to its default value.
http://goo.gl/r6ZCPm for more details.
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.
func (*EC2) VpcAttribute ¶
func (ec2 *EC2) VpcAttribute(vpcId, attribute string) (resp *VpcAttributeResp, err error)
VpcAttribute describes an attribute of a VPC. You can specify only one attribute at a time. Valid attributes are:
enableDnsSupport | enableDnsHostnames
See http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/index.html?ApiReference-query-DescribeVpcAttribute.html for more details.
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.
type EventsSet ¶ added in v0.9.0
type EventsSet struct {
	Code        string `xml:"code"`
	Description string `xml:"description"`
	NotBefore   string `xml:"notBefore"`
	NotAfter    string `xml:"notAfter"`
}
    The DescribeInstanceStatus type encapsulates options for the respective request in EC2.
See http://goo.gl/DFySJY for more details.
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)
  
    type GetConsoleOutput ¶ added in v0.9.0
type GetConsoleOutput struct {
	InstanceId string
}
    The GetConsoleOutput type encapsulates options for the respective request in EC2.
See http://goo.gl/EY70zb for more details.
type GetConsoleOutputResp ¶ added in v0.9.0
type GetConsoleOutputResp struct {
	RequestId  string    `xml:"requestId"`
	InstanceId string    `xml:"instanceId"`
	Timestamp  time.Time `xml:"timestamp"`
	Output     string    `xml:"output"`
}
    Response to a GetConsoleOutput request. Note that Output is base64-encoded, as in the underlying AWS API.
See http://goo.gl/EY70zb for more details.
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 ImportKeyPairResponse ¶
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"`
	Tenancy            string          `xml:"placement>tenancy"`
	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"`
	LaunchTime         time.Time       `xml:"launchTime"`
	SourceDestCheck    bool            `xml:"sourceDestCheck"`
	SecurityGroups     []SecurityGroup `xml:"groupSet>item"`
	EbsOptimized       string          `xml:"ebsOptimized"`
	BlockDevices       []BlockDevice   `xml:"blockDeviceMapping>item"`
}
    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 InstanceStatusSet ¶ added in v0.9.0
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 InternetGateway ¶
type InternetGateway struct {
	InternetGatewayId string                      `xml:"internetGatewayId"`
	Attachments       []InternetGatewayAttachment `xml:"attachmentSet>item"`
	Tags              []Tag                       `xml:"tagSet>item"`
}
    Internet Gateway
type InternetGatewaysResp ¶
type InternetGatewaysResp struct {
	RequestId        string            `xml:"requestId"`
	InternetGateways []InternetGateway `xml:"internetGatewaySet>item"`
}
    Response to a DescribeInternetGateways request.
type KeyPairsResp ¶
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
	SetSourceDestCheck bool
}
    The ModifyInstanceAttribute request parameters.
type ModifyInstanceResp ¶
Response to a ModifyInstanceAttribute request.
http://goo.gl/icuXh5 for more details.
type ModifySubnetAttribute ¶ added in v0.9.0
The ModifySubnetAttribute request parameters
http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-ModifySubnetAttribute.html
type ModifySubnetAttributeResp ¶ added in v0.9.0
type ModifyVpcAttribute ¶
type ModifyVpcAttribute struct {
	EnableDnsSupport   bool
	EnableDnsHostnames bool
	SetEnableDnsSupport   bool
	SetEnableDnsHostnames bool
}
    The ModifyVpcAttribute request parameters.
See http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/index.html?ApiReference-query-DescribeVpcAttribute.html for more details.
type NetworkAcl ¶ added in v0.9.0
type NetworkAcl struct {
	NetworkAclId   string                  `xml:"networkAclId"`
	VpcId          string                  `xml:"vpcId"`
	Default        string                  `xml:"default"`
	EntrySet       []NetworkAclEntry       `xml:"entrySet>item"`
	AssociationSet []NetworkAclAssociation `xml:"associationSet>item"`
	Tags           []Tag                   `xml:"tagSet>item"`
}
    NetworkAcl represent network acl
type NetworkAclAssociation ¶ added in v0.9.0
type NetworkAclAssociation struct {
	NetworkAclAssociationId string `xml:"networkAclAssociationId"`
	NetworkAclId            string `xml:"networkAclId"`
	SubnetId                string `xml:"subnetId"`
}
    NetworkAclAssociation
type NetworkAclEntry ¶ added in v0.9.0
type NetworkAclEntry struct {
	RuleNumber int       `xml:"ruleNumber"`
	Protocol   int       `xml:"protocol"`
	RuleAction string    `xml:"ruleAction"`
	Egress     bool      `xml:"egress"`
	CidrBlock  string    `xml:"cidrBlock"`
	IcmpCode   IcmpCode  `xml:"icmpTypeCode"`
	PortRange  PortRange `xml:"portRange"`
}
    NetworkAclEntry represent a rule within NetworkAcl
type NetworkAclsResp ¶ added in v0.9.0
type NetworkAclsResp struct {
	RequestId   string       `xml:"requestId"`
	NetworkAcls []NetworkAcl `xml:"networkAclSet>item"`
}
    Response to describe NetworkAcls
type RegisterImage ¶
type RegisterImage struct {
	ImageLocation   string
	Name            string
	Description     string
	Architecture    string
	KernelId        string
	RamdiskId       string
	RootDeviceName  string
	VirtType        string
	SriovNetSupport string
	BlockDevices    []BlockDeviceMapping
}
    The RegisterImage request parameters.
type RegisterImageResp ¶
Response to a RegisterImage request.
type ReplaceNetworkAclAssociationResponse ¶ added in v0.9.0
type ReplaceRoute ¶
type RequestSpotInstances ¶
type RequestSpotInstances struct {
	SpotPrice                string
	InstanceCount            int
	Type                     string
	ImageId                  string
	KeyName                  string
	InstanceType             string
	SecurityGroups           []SecurityGroup
	IamInstanceProfile       string
	KernelId                 string
	RamdiskId                string
	UserData                 []byte
	AvailZone                string
	PlacementGroupName       string
	Monitoring               bool
	SubnetId                 string
	AssociatePublicIpAddress bool
	PrivateIPAddress         string
	BlockDevices             []BlockDeviceMapping
}
    The RequestSpotInstances type encapsulates options for the respective request in EC2.
See http://goo.gl/GRZgCD for more details.
type RequestSpotInstancesResp ¶
type RequestSpotInstancesResp struct {
	RequestId          string              `xml:"requestId"`
	SpotRequestResults []SpotRequestResult `xml:"spotInstanceRequestSet>item"`
}
    Response to a RequestSpotInstances request.
See http://goo.gl/GRZgCD for more details.
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 ResetImageAttribute ¶
type ResetImageAttribute struct {
	Attribute string
}
    The ResetImageAttribute request parameters.
type ResourceTag ¶
type Route ¶
type Route struct {
	DestinationCidrBlock   string `xml:"destinationCidrBlock"`
	GatewayId              string `xml:"gatewayId"`
	InstanceId             string `xml:"instanceId"`
	InstanceOwnerId        string `xml:"instanceOwnerId"`
	NetworkInterfaceId     string `xml:"networkInterfaceId"`
	State                  string `xml:"state"`
	Origin                 string `xml:"origin"`
	VpcPeeringConnectionId string `xml:"vpcPeeringConnectionId"`
}
    type RouteTable ¶
type RouteTable struct {
	RouteTableId string                  `xml:"routeTableId"`
	VpcId        string                  `xml:"vpcId"`
	Associations []RouteTableAssociation `xml:"associationSet>item"`
	Routes       []Route                 `xml:"routeSet>item"`
	Tags         []Tag                   `xml:"tagSet>item"`
}
    Routing Table
type RouteTableAssociation ¶
type RouteTablesResp ¶
type RouteTablesResp struct {
	RequestId   string       `xml:"requestId"`
	RouteTables []RouteTable `xml:"routeTableSet>item"`
}
    Response to a DescribeRouteTables request.
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
	EbsOptimized             bool
	ShutdownBehavior         string
	PrivateIPAddress         string
	BlockDevices             []BlockDeviceMapping
	Tenancy                  string
}
    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"`
	Tags        []Tag  `xml:"tagSet>item"`
}
    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 ¶
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"`
	Encrypted   bool   `xml:"encrypted"`
	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 SpotInstanceSpec ¶
type SpotInstanceSpec struct {
	ImageId                  string
	KeyName                  string
	InstanceType             string
	SecurityGroups           []SecurityGroup
	IamInstanceProfile       string
	KernelId                 string
	RamdiskId                string
	UserData                 []byte
	AvailZone                string
	PlacementGroupName       string
	Monitoring               bool
	SubnetId                 string
	AssociatePublicIpAddress bool
	PrivateIPAddress         string
	BlockDevices             []BlockDeviceMapping
}
    type SpotLaunchSpec ¶
type SpotLaunchSpec struct {
	ImageId            string               `xml:"imageId"`
	KeyName            string               `xml:"keyName"`
	InstanceType       string               `xml:"instanceType"`
	SecurityGroups     []SecurityGroup      `xml:"groupSet>item"`
	IamInstanceProfile string               `xml:"iamInstanceProfile"`
	KernelId           string               `xml:"kernelId"`
	RamdiskId          string               `xml:"ramdiskId"`
	PlacementGroupName string               `xml:"placement>groupName"`
	Monitoring         bool                 `xml:"monitoring>enabled"`
	SubnetId           string               `xml:"subnetId"`
	BlockDevices       []BlockDeviceMapping `xml:"blockDeviceMapping>item"`
}
    type SpotPriceHistory ¶ added in v0.9.0
type SpotRequestResult ¶
type SpotRequestResult struct {
	SpotRequestId  string         `xml:"spotInstanceRequestId"`
	SpotPrice      string         `xml:"spotPrice"`
	Type           string         `xml:"type"`
	AvailZone      string         `xml:"launchedAvailabilityZone"`
	InstanceId     string         `xml:"instanceId"`
	State          string         `xml:"state"`
	Status         SpotStatus     `xml:"status"`
	SpotLaunchSpec SpotLaunchSpec `xml:"launchSpecification"`
	CreateTime     string         `xml:"createTime"`
	Tags           []Tag          `xml:"tagSet>item"`
}
    type SpotRequestsResp ¶
type SpotRequestsResp struct {
	RequestId          string              `xml:"requestId"`
	SpotRequestResults []SpotRequestResult `xml:"spotInstanceRequestSet>item"`
}
    Response to a DescribeSpotInstanceRequests request.
See http://goo.gl/KsKJJk for more details.
type SpotStatus ¶
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 Status ¶ added in v0.9.0
type Status struct {
	Status  string          `xml:"status"`
	Details []StatusDetails `xml:"details>item"`
}
    type StatusDetails ¶ added in v0.9.0
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 Subnet ¶
type Subnet struct {
	SubnetId                string `xml:"subnetId"`
	State                   string `xml:"state"`
	VpcId                   string `xml:"vpcId"`
	CidrBlock               string `xml:"cidrBlock"`
	AvailableIpAddressCount int    `xml:"availableIpAddressCount"`
	AvailabilityZone        string `xml:"availabilityZone"`
	DefaultForAZ            bool   `xml:"defaultForAz"`
	MapPublicIpOnLaunch     bool   `xml:"mapPublicIpOnLaunch"`
	Tags                    []Tag  `xml:"tagSet>item"`
}
    Subnet
type SubnetsResp ¶
type SubnetsResp struct {
	RequestId string   `xml:"requestId"`
	Subnets   []Subnet `xml:"subnetSet>item"`
}
    Response to a DescribeSubnets request.
type Tag ¶
ResourceTag represents key-value metadata used to classify and organize EC2 instances.
See http://goo.gl/bncl3 for more details
type TagsResp ¶
type TagsResp struct {
	RequestId string        `xml:"requestId"`
	Tags      []ResourceTag `xml:"tagSet>item"`
}
    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 VPC ¶
type VPC struct {
	VpcId           string `xml:"vpcId"`
	State           string `xml:"state"`
	CidrBlock       string `xml:"cidrBlock"`
	DHCPOptionsID   string `xml:"dhcpOptionsId"`
	InstanceTenancy string `xml:"instanceTenancy"`
	IsDefault       bool   `xml:"isDefault"`
	Tags            []Tag  `xml:"tagSet>item"`
}
    VPC represents a single VPC.
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"`
	Encrypted   bool               `xml:"encrypted"`
	Tags        []Tag              `xml:"tagSet>item"`
}
    Volume is a single volume.
type VolumeAttachment ¶
type VolumesResp ¶
type VolumesResp struct {
	RequestId string   `xml:"requestId"`
	Volumes   []Volume `xml:"volumeSet>item"`
}
    Response to a DescribeVolumes request
type VpcAttributeResp ¶
type VpcAttributeResp struct {
	RequestId          string `xml:"requestId"`
	VpcId              string `xml:"vpcId"`
	EnableDnsSupport   bool   `xml:"enableDnsSupport>value"`
	EnableDnsHostnames bool   `xml:"enableDnsHostnames>value"`
}
    Response to a DescribeVpcAttribute request.
See http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/index.html?ApiReference-query-DescribeVpcAttribute.html for more details.
       Directories
      ¶
      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. |