Documentation
¶
Index ¶
- type AWS
- func (aws *AWS) AccountID() (string, error)
- func (aws *AWS) CreateEndpoint(request *types.CreateEndpointRequest) (string, error)
- func (aws *AWS) DeleteEndpoint()
- func (aws *AWS) GetEndpoint(stateID string, subnet string) (*types.Endpoint, error)
- func (aws *AWS) GetMetadata() (types.Metadata, error)
- func (c *AWS) GetProvider() types.Vendor
- func (aws *AWS) InstanceDynamicData() (*DynamicData, error)
- func (aws *AWS) LoadDynamicData() (*DynamicData, error)
- func (aws *AWS) LoadInstanceMetadata() (*Instance, error)
- func (aws *AWS) RecursiveLoad() map[string]interface{}
- func (client *AWS) Subnets() []string
- type BlockDeviceMapping
- type Document
- type DynamicData
- type Events
- type IAM
- type Instance
- type InstanceIdentity
- type Interfaces
- type Mac
- type Maintenance
- type Network
- type Placement
- type Services
- type Spot
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AWS ¶
type AWS struct {
// contains filtered or unexported fields
}
func (*AWS) CreateEndpoint ¶
func (aws *AWS) CreateEndpoint(request *types.CreateEndpointRequest) (string, error)
func (*AWS) DeleteEndpoint ¶
func (aws *AWS) DeleteEndpoint()
func (*AWS) GetEndpoint ¶
func (*AWS) GetProvider ¶ added in v0.1.1
func (*AWS) InstanceDynamicData ¶
func (aws *AWS) InstanceDynamicData() (*DynamicData, error)
InstanceDynamicData - convenient instance dynamic data accessor
func (*AWS) LoadDynamicData ¶
func (aws *AWS) LoadDynamicData() (*DynamicData, error)
LoadDynamicData - load typed dynamic data
func (*AWS) LoadInstanceMetadata ¶
LoadInstanceMetadata - load typed instance metadata
func (*AWS) RecursiveLoad ¶
RecursiveLoad - load recursively all the metadata
type BlockDeviceMapping ¶
type BlockDeviceMapping struct { Ami string `json:"ami"` Ebs1 string `json:"ebs1"` Ebs2 string `json:"ebs2"` Ebs3 string `json:"ebs3"` Ebs4 string `json:"ebs4"` Ebs5 string `json:"ebs5"` Ebs6 string `json:"ebs6"` Ebs7 string `json:"ebs7"` Ephemeral0 string `json:"ephemeral0"` Ephemeral1 string `json:"ephemeral1"` Ephemeral2 string `json:"ephemeral2"` Ephemeral3 string `json:"ephemeral3"` Root string `json:"root"` Swap string `json:"swap"` }
BlockDeviceMapping - Block device mapping
type Document ¶
type Document struct { DevpayProductCodes string `json:"devpayProductCodes"` MarketplaceProductCodes []string `json:"marketplaceProductCodes"` AvailabilityZone string `json:"availabilityZone"` PrivateIP string `json:"privateIp"` Version string `json:"version"` InstanceID string `json:"instanceId"` BillingProducts string `json:"billingProducts"` InstanceType string `json:"instanceType"` AccountID string `json:"accountId"` ImageID string `json:"imageId"` PendingTime string `json:"pendingTime"` Architecture string `json:"architecture"` KernelID string `json:"kernelId"` RamdiskID string `json:"ramdiskId"` Region string `json:"region"` }
Document holds more verbose information about the instance like accountID.
type DynamicData ¶
type DynamicData struct {
InstanceIdentity InstanceIdentity `json:"instance-identity"`
}
DynamicData info
type Instance ¶
type Instance struct { AmiID string `json:"ami-id"` AmiLaunchIndex string `json:"ami-launch-index"` AmiManifestPath string `json:"ami-manifest-path"` BlockDeviceMapping BlockDeviceMapping `json:"block-device-mapping"` Events Events `json:"events"` Hostname string `json:"hostname"` IAM IAM `json:"iam"` InstanceAction string `json:"instance-action"` InstanceID string `json:"instance-id"` InstanceLifeCycle string `json:"instance-life-cycle"` InstanceType string `json:"instance-type"` KernelID string `json:"kernel-id"` LocalHostname string `json:"local-hostname"` LocalIPv4 string `json:"local-ipv4"` Mac string `json:"mac"` Network Network `json:"network"` Placement Placement `json:"placement"` ProductCodes string `json:"product-codes"` PublicHostname string `json:"public-hostname"` PublicIPv4 string `json:"public-ipv4"` RamdiskID string `json:"ramdisk-id"` ReservationID string `json:"reservation-id"` SecurityGroups string `json:"security-groups"` Services Services `json:"services"` Spot Spot `json:"spot"` }
Instance - Azure instance metadata
type InstanceIdentity ¶
type InstanceIdentity struct { Document Document `json:"document"` Dsa2048 string `json:"dsa2048"` Pkcs7 string `json:"pkcs7"` Rsa2048 string `json:"rsa2048"` Signature string `json:"signature"` }
InstanceIdentity path
type Interfaces ¶
Interfaces description
type Mac ¶
type Mac struct { DeviceNumber string `json:"device-number"` InterfaceID string `json:"interface-id"` LocalHostname string `json:"local-hostname"` Mac string `json:"mac"` NetworkCardIndex string `json:"network-card-index"` OwnerID string `json:"owner-id"` PublicHostname string `json:"public-hostname"` SecurityGroups string `json:"security-groups"` SubnetID string `json:"subnet-id"` VPCID string `json:"vpc-id"` }
Mac - Mac interface description
type Maintenance ¶
Maintenance description
type Network ¶
type Network struct {
Interfaces Interfaces `json:"interfaces"`
}
Network description
type Placement ¶
type Placement struct { AvailabilityZone string `json:"availability-zone"` AvailabilityZoneID string `json:"availability-zone-id"` GroupName string `json:"group-name"` HostID string `json:"host-id"` PartitionNumber int `json:"partition-number"` Region string `json:"region"` }
Placement info
Click to show internal directories.
Click to hide internal directories.