aws

package
v2.3.17+incompatible Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2018 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CLOUD_PROVIDER_AWS    = models.CLOUD_PROVIDER_AWS
	CLOUD_PROVIDER_AWS_CN = "AWS"

	AWS_INTERNATIONAL_DEFAULT_REGION = "us-west-1"
	AWS_CHINA_DEFAULT_REGION         = "cn-north-1"
	AWS_API_VERSION                  = "2018-10-10"
)
View Source
const (
	EIP_STATUS_INUSE     = "InUse"
	EIP_STATUS_AVAILABLE = "Available"
)
View Source
const (
	InstanceStatusPending    = "pending"
	InstanceStatusRunning    = "running"
	InstanceStatusShutting   = "shutting-down"
	InstanceStatusTerminated = "terminated"
	InstanceStatusStopping   = "stopping"
	InstanceStatusStopped    = "stopped"
)

Variables

Functions

func AppendFilter

func AppendFilter(filters []*ec2.Filter, name string, values []string) []*ec2.Filter

func AppendSingleValueFilter

func AppendSingleValueFilter(filters []*ec2.Filter, name string, value string) []*ec2.Filter

func AwsIpPermissionToYunion

func AwsIpPermissionToYunion(direction secrules.TSecurityRuleDirection, p ec2.IpPermission) ([]secrules.SecurityRule, error)

Security Rule Transform

func ConvertedList

func ConvertedList(list []string) []*string

func ConvertedPointList

func ConvertedPointList(list []*string) []string

func FetchTags

func FetchTags(client *ec2.EC2, resourceId string) (*jsonutils.JSONDict, error)

fetch tags

func FillZero

func FillZero(i interface{}) error

fill a pointer struct with zero value.

func IntVal

func IntVal(s *int64) int64

func NextDeviceName

func NextDeviceName(curDeviceNames []string) (string, error)

func StrVal

func StrVal(s *string) string

func YunionSecRuleToAws

func YunionSecRuleToAws(rule secrules.SecurityRule) ([]*ec2.IpPermission, error)

Types

type Cpu

type Cpu struct {
	Cores int    `json:"cores"`
	Units string `json:"units"`
}

type CpuCredits

type CpuCredits struct {
	OptimizationSupported bool `json:"optimizationSupported"`
}

type ImageExportTask

type ImageExportTask struct {
	ImageId  string
	RegionId string
	TaskId   string
}

type ImageImportTask

type ImageImportTask struct {
	ImageId  string
	RegionId string
	TaskId   string
}

type ImageOwnerType

type ImageOwnerType string
const (
	ImageOwnerSystem      ImageOwnerType = "amazon"
	ImageOwnerSelf        ImageOwnerType = "self"
	ImageOwnerOthers      ImageOwnerType = "microsoft"
	ImageOwnerMarketplace ImageOwnerType = "aws-marketplace"
)

type ImageStatusType

type ImageStatusType string
const (
	ImageStatusCreating     ImageStatusType = "pending"
	ImageStatusAvailable    ImageStatusType = "available"
	ImageStatusCreateFailed ImageStatusType = "failed"
)

type InstanceChargeType

type InstanceChargeType string

type ProcessorFeatures

type ProcessorFeatures struct {
	AESNI bool `json:"AES-NI"`
	AVX   bool `json:"AVX"`
	Turbo bool `json:"Turbo"`
}

type RootDevice

type RootDevice struct {
	SnapshotId string
	Size       int    // GB
	Category   string // VolumeType
}

type SAccountBalance

type SAccountBalance struct {
	AvailableAmount     float64
	AvailableCashAmount float64
	CreditAmount        float64
	MybankCreditAmount  float64
	Currency            string
}

type SAwsClient

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

func NewAwsClient

func NewAwsClient(providerId string, providerName string, accessUrl string, accessKey string, secret string) (*SAwsClient, error)

func (*SAwsClient) GetIHostById

func (self *SAwsClient) GetIHostById(id string) (cloudprovider.ICloudHost, error)

func (*SAwsClient) GetIRegionById

func (self *SAwsClient) GetIRegionById(id string) (cloudprovider.ICloudRegion, error)

func (*SAwsClient) GetIRegions

func (self *SAwsClient) GetIRegions() []cloudprovider.ICloudRegion

func (*SAwsClient) GetIStorageById

func (self *SAwsClient) GetIStorageById(id string) (cloudprovider.ICloudStorage, error)

func (*SAwsClient) GetIStoragecacheById

func (self *SAwsClient) GetIStoragecacheById(id string) (cloudprovider.ICloudStoragecache, error)

func (*SAwsClient) GetIVpcById

func (self *SAwsClient) GetIVpcById(id string) (cloudprovider.ICloudVpc, error)

func (*SAwsClient) GetRegion

func (self *SAwsClient) GetRegion(regionId string) *SRegion

func (*SAwsClient) GetRegions

func (self *SAwsClient) GetRegions() []SRegion

只是使用fetchRegions初始化好的self.iregions. 本身并不从云服务器厂商拉取region信息

func (*SAwsClient) GetSubAccounts

func (self *SAwsClient) GetSubAccounts() ([]cloudprovider.SSubAccount, error)

func (*SAwsClient) QueryAccountBalance

func (self *SAwsClient) QueryAccountBalance() (*SAccountBalance, error)

func (*SAwsClient) UpdateAccount

func (self *SAwsClient) UpdateAccount(accessKey, secret string) error

type SDisk

type SDisk struct {
	RegionId string
	ZoneId   string // AvailabilityZone
	DiskId   string // VolumeId

	DiskName         string // Tag Name
	Size             int    // Size
	Category         string // VolumeType
	Type             string // system | data
	Status           string // State
	AttachmentStatus string // attachment.status
	Device           string // Device
	InstanceId       string // InstanceId
	Encrypted        bool   // Encrypted
	SourceSnapshotId string // SnapshotId
	Iops             int    // Iops
	Tags             TagSpec

	CreationTime time.Time // CreateTime
	AttachedTime time.Time // AttachTime
	DetachedTime time.Time

	DeleteWithInstance            bool // DeleteOnTermination
	EnableAutoSnapshot            bool
	EnableAutomatedSnapshotPolicy bool

	/*下面这些字段也许不需要*/
	AutoSnapshotPolicyId string
	DeleteAutoSnapshot   bool
	Description          string
	DiskChargeType       InstanceChargeType
	ExpiredTime          time.Time
	ImageId              string
	MountInstances       SMountInstances
	Portable             bool
	ProductCode          string
	ResourceGroupId      string
	// contains filtered or unexported fields
}

func (*SDisk) CreateISnapshot

func (self *SDisk) CreateISnapshot(name string, desc string) (cloudprovider.ICloudSnapshot, error)

func (*SDisk) Delete

func (self *SDisk) Delete() error

func (*SDisk) GetBillingType

func (self *SDisk) GetBillingType() string

func (*SDisk) GetCacheMode

func (self *SDisk) GetCacheMode() string

func (*SDisk) GetDiskFormat

func (self *SDisk) GetDiskFormat() string

func (*SDisk) GetDiskSizeMB

func (self *SDisk) GetDiskSizeMB() int

func (*SDisk) GetDiskType

func (self *SDisk) GetDiskType() string

func (*SDisk) GetDriver

func (self *SDisk) GetDriver() string

func (*SDisk) GetExpiredAt

func (self *SDisk) GetExpiredAt() time.Time

func (*SDisk) GetFsFormat

func (self *SDisk) GetFsFormat() string

func (*SDisk) GetGlobalId

func (self *SDisk) GetGlobalId() string

func (*SDisk) GetISnapshot

func (self *SDisk) GetISnapshot(snapshotId string) (cloudprovider.ICloudSnapshot, error)

func (*SDisk) GetISnapshots

func (self *SDisk) GetISnapshots() ([]cloudprovider.ICloudSnapshot, error)

func (*SDisk) GetIStorge

func (self *SDisk) GetIStorge() cloudprovider.ICloudStorage

func (*SDisk) GetId

func (self *SDisk) GetId() string

func (*SDisk) GetIsAutoDelete

func (self *SDisk) GetIsAutoDelete() bool

func (*SDisk) GetIsNonPersistent

func (self *SDisk) GetIsNonPersistent() bool

func (*SDisk) GetMetadata

func (self *SDisk) GetMetadata() *jsonutils.JSONDict

func (*SDisk) GetMountpoint

func (self *SDisk) GetMountpoint() string

func (*SDisk) GetName

func (self *SDisk) GetName() string

func (*SDisk) GetStatus

func (self *SDisk) GetStatus() string

func (*SDisk) GetTemplateId

func (self *SDisk) GetTemplateId() string

func (*SDisk) IsEmulated

func (self *SDisk) IsEmulated() bool

func (*SDisk) Refresh

func (self *SDisk) Refresh() error

func (*SDisk) Reset

func (self *SDisk) Reset(snapshotId string) error

func (*SDisk) Resize

func (self *SDisk) Resize(newSize int64) error

type SEipAddress

type SEipAddress struct {
	AllocationId            string
	Bandwidth               int
	Tags                    TagSpec
	Status                  string
	InstanceId              string
	AssociationId           string
	Domain                  string
	NetworkInterfaceId      string
	NetworkInterfaceOwnerId string
	PrivateIpAddress        string
	IpAddress               string
	// contains filtered or unexported fields
}

func (*SEipAddress) Associate

func (self *SEipAddress) Associate(instanceId string) error

func (*SEipAddress) ChangeBandwidth

func (self *SEipAddress) ChangeBandwidth(bw int) error

func (*SEipAddress) Delete

func (self *SEipAddress) Delete() error

func (*SEipAddress) Dissociate

func (self *SEipAddress) Dissociate() error

func (*SEipAddress) GetAssociationExternalId

func (self *SEipAddress) GetAssociationExternalId() string

func (*SEipAddress) GetAssociationType

func (self *SEipAddress) GetAssociationType() string

func (*SEipAddress) GetBandwidth

func (self *SEipAddress) GetBandwidth() int

func (*SEipAddress) GetGlobalId

func (self *SEipAddress) GetGlobalId() string

func (*SEipAddress) GetId

func (self *SEipAddress) GetId() string

func (*SEipAddress) GetInternetChargeType

func (self *SEipAddress) GetInternetChargeType() string

func (*SEipAddress) GetIpAddr

func (self *SEipAddress) GetIpAddr() string

func (*SEipAddress) GetManagerId

func (self *SEipAddress) GetManagerId() string

func (*SEipAddress) GetMetadata

func (self *SEipAddress) GetMetadata() *jsonutils.JSONDict

func (*SEipAddress) GetMode

func (self *SEipAddress) GetMode() string

func (*SEipAddress) GetName

func (self *SEipAddress) GetName() string

func (*SEipAddress) GetStatus

func (self *SEipAddress) GetStatus() string

func (*SEipAddress) IsEmulated

func (self *SEipAddress) IsEmulated() bool

func (*SEipAddress) Refresh

func (self *SEipAddress) Refresh() error

type SHost

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

func (*SHost) CreateVM

func (self *SHost) CreateVM(name, imgId string, sysDiskSize, cpu, memMB int, networkId, ipAddr, desc,
	passwd, storageType string, diskSizes []int, publicKey string, secgroupId string, userData string) (cloudprovider.ICloudVM, error)

func (*SHost) GetAccessIp

func (self *SHost) GetAccessIp() string

func (*SHost) GetAccessMac

func (self *SHost) GetAccessMac() string

func (*SHost) GetCpuCount

func (self *SHost) GetCpuCount() int8

func (*SHost) GetCpuDesc

func (self *SHost) GetCpuDesc() string

func (*SHost) GetCpuMhz

func (self *SHost) GetCpuMhz() int

func (*SHost) GetEnabled

func (self *SHost) GetEnabled() bool

func (*SHost) GetGlobalId

func (self *SHost) GetGlobalId() string

func (*SHost) GetHostStatus

func (self *SHost) GetHostStatus() string

func (*SHost) GetHostType

func (self *SHost) GetHostType() string

func (*SHost) GetIStorageById

func (self *SHost) GetIStorageById(id string) (cloudprovider.ICloudStorage, error)

func (*SHost) GetIStorages

func (self *SHost) GetIStorages() ([]cloudprovider.ICloudStorage, error)

func (*SHost) GetIVMById

func (self *SHost) GetIVMById(gid string) (cloudprovider.ICloudVM, error)

func (*SHost) GetIVMs

func (self *SHost) GetIVMs() ([]cloudprovider.ICloudVM, error)

func (*SHost) GetIWires

func (self *SHost) GetIWires() ([]cloudprovider.ICloudWire, error)

func (*SHost) GetId

func (self *SHost) GetId() string

func (*SHost) GetInstanceById

func (self *SHost) GetInstanceById(instanceId string) (*SInstance, error)

func (*SHost) GetManagerId

func (self *SHost) GetManagerId() string

func (*SHost) GetMemSizeMB

func (self *SHost) GetMemSizeMB() int

func (*SHost) GetMetadata

func (self *SHost) GetMetadata() *jsonutils.JSONDict

func (*SHost) GetName

func (self *SHost) GetName() string

func (*SHost) GetNodeCount

func (self *SHost) GetNodeCount() int8

func (*SHost) GetSN

func (self *SHost) GetSN() string

func (*SHost) GetStatus

func (self *SHost) GetStatus() string

func (*SHost) GetStorageSizeMB

func (self *SHost) GetStorageSizeMB() int

func (*SHost) GetStorageType

func (self *SHost) GetStorageType() string

func (*SHost) GetSysInfo

func (self *SHost) GetSysInfo() jsonutils.JSONObject

func (*SHost) IsEmulated

func (self *SHost) IsEmulated() bool

func (*SHost) Refresh

func (self *SHost) Refresh() error

type SImage

type SImage struct {
	Architecture         string
	CreationTime         string
	Description          string
	ImageId              string
	ImageName            string
	OSName               string
	OSType               string
	ImageType            string
	IsSupportCloudinit   bool
	IsSupportIoOptimized bool
	Platform             string
	Size                 int
	Status               ImageStatusType
	Usage                string
	RootDevice           RootDevice
	// contains filtered or unexported fields
}

func (*SImage) Delete

func (self *SImage) Delete() error

func (*SImage) GetGlobalId

func (self *SImage) GetGlobalId() string

func (*SImage) GetIStoragecache

func (self *SImage) GetIStoragecache() cloudprovider.ICloudStoragecache

func (*SImage) GetId

func (self *SImage) GetId() string

func (*SImage) GetMetadata

func (self *SImage) GetMetadata() *jsonutils.JSONDict

func (*SImage) GetName

func (self *SImage) GetName() string

func (*SImage) GetStatus

func (self *SImage) GetStatus() string

func (*SImage) IsEmulated

func (self *SImage) IsEmulated() bool

func (*SImage) Refresh

func (self *SImage) Refresh() error

type SInstance

type SInstance struct {
	RegionId   string
	ZoneId     string
	InstanceId string
	ImageId    string

	HostName          string
	InstanceName      string
	InstanceType      string
	Cpu               int8
	Memory            int
	IoOptimized       bool
	KeyPairName       string
	CreationTime      time.Time // LaunchTime
	ExpiredTime       time.Time
	ProductCodes      []string
	PublicDNSName     string
	InnerIpAddress    SIpAddress
	PublicIpAddress   SIpAddress
	RootDeviceName    string
	Status            string // state
	VlanId            string // subnet ID ?
	VpcAttributes     SVpcAttributes
	SecurityGroupIds  SSecurityGroupIds
	NetworkInterfaces SNetworkInterfaces
	EipAddress        SEipAddress
	Disks             []string
	DeviceNames       []string
	OSName            string
	OSType            string
	Description       string
	// contains filtered or unexported fields
}

func (*SInstance) AttachDisk

func (self *SInstance) AttachDisk(diskId string) error

func (*SInstance) ChangeConfig

func (self *SInstance) ChangeConfig(instanceId string, ncpu int, vmem int) error

func (*SInstance) DeleteVM

func (self *SInstance) DeleteVM() error

func (*SInstance) DeployVM

func (self *SInstance) DeployVM(name string, password string, publicKey string, deleteKeypair bool, description string) error

func (*SInstance) DetachDisk

func (self *SInstance) DetachDisk(diskId string) error

func (*SInstance) GetBillingType

func (self *SInstance) GetBillingType() string

func (*SInstance) GetBios

func (self *SInstance) GetBios() string

func (*SInstance) GetBootOrder

func (self *SInstance) GetBootOrder() string

func (*SInstance) GetCreateTime

func (self *SInstance) GetCreateTime() time.Time

func (*SInstance) GetExpiredAt

func (self *SInstance) GetExpiredAt() time.Time

func (*SInstance) GetGlobalId

func (self *SInstance) GetGlobalId() string

func (*SInstance) GetHypervisor

func (self *SInstance) GetHypervisor() string

func (*SInstance) GetIDisks

func (self *SInstance) GetIDisks() ([]cloudprovider.ICloudDisk, error)

func (*SInstance) GetIEIP

func (self *SInstance) GetIEIP() (cloudprovider.ICloudEIP, error)

func (*SInstance) GetIHost

func (self *SInstance) GetIHost() cloudprovider.ICloudHost

func (*SInstance) GetINics

func (self *SInstance) GetINics() ([]cloudprovider.ICloudNic, error)

func (*SInstance) GetId

func (self *SInstance) GetId() string

func (*SInstance) GetMachine

func (self *SInstance) GetMachine() string

func (*SInstance) GetMetadata

func (self *SInstance) GetMetadata() *jsonutils.JSONDict

func (*SInstance) GetName

func (self *SInstance) GetName() string

func (*SInstance) GetOSName

func (self *SInstance) GetOSName() string

func (*SInstance) GetOSType

func (self *SInstance) GetOSType() string

func (*SInstance) GetStatus

func (self *SInstance) GetStatus() string

func (*SInstance) GetVNCInfo

func (self *SInstance) GetVNCInfo() (jsonutils.JSONObject, error)

func (*SInstance) GetVcpuCount

func (self *SInstance) GetVcpuCount() int8

func (*SInstance) GetVdi

func (self *SInstance) GetVdi() string

func (*SInstance) GetVga

func (self *SInstance) GetVga() string

func (*SInstance) GetVmemSizeMB

func (self *SInstance) GetVmemSizeMB() int

func (*SInstance) IsEmulated

func (self *SInstance) IsEmulated() bool

func (*SInstance) RebuildRoot

func (self *SInstance) RebuildRoot(imageId string, passwd string, publicKey string, sysSizeGB int) (string, error)

func (*SInstance) Refresh

func (self *SInstance) Refresh() error

func (*SInstance) StartVM

func (self *SInstance) StartVM() error

func (*SInstance) StopVM

func (self *SInstance) StopVM(isForce bool) error

func (*SInstance) SyncSecurityGroup

func (self *SInstance) SyncSecurityGroup(secgroupId string, name string, rules []secrules.SecurityRule) error

func (*SInstance) UpdateUserData

func (self *SInstance) UpdateUserData(userData string) error

func (*SInstance) UpdateVM

func (self *SInstance) UpdateVM(name string) error

type SInstanceNic

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

func (*SInstanceNic) GetDriver

func (self *SInstanceNic) GetDriver() string

func (*SInstanceNic) GetINetwork

func (self *SInstanceNic) GetINetwork() cloudprovider.ICloudNetwork

func (*SInstanceNic) GetIP

func (self *SInstanceNic) GetIP() string

func (*SInstanceNic) GetMAC

func (self *SInstanceNic) GetMAC() string

type SInstanceType

type SInstanceType struct {
	Architectures          []string          `json:"architectures"`
	Cpu                    Cpu               `json:"cpu"`
	CpuCredits             CpuCredits        `json:"cpuCredits"`
	Description            string            `json:"description"`
	EbsEncryptionSupported bool              `json:"ebsEncryptionSupported"`
	EbsOnly                bool              `json:"ebsOnly"`
	Family                 string            `json:"family"`
	FreeTierEligible       bool              `json:"freeTierEligible"`
	Ipv6Support            bool              `json:"ipv6Support"`
	Memory                 float32           `json:"memory"`
	NetworkPerformance     string            `json:"networkPerformance"`
	PhysicalProcessor      string            `json:"physicalProcessor"`
	ProcessorFeatures      ProcessorFeatures `json:"processorFeatures"`
	ProcessorSpeed         float32           `json:"processorSpeed"`
	SpotSupported          bool              `json:"spotSupported"`
	InstanceTypeId         string            `json:"typeName"`
	VirtualizationTypes    []string          `json:"virtualizationTypes"`
	Vpc                    bool              `json:"vpc"`
	VpcOnly                bool              `json:"vpcOnly"`
	Windows                bool              `json:"windows"`
}

type SIpAddress

type SIpAddress struct {
	IpAddress []string
}

type SKeypair

type SKeypair struct {
	KeyPairFingerPrint string
	KeyPairName        string
}

type SMountInstances

type SMountInstances struct {
	MountInstance []string
}

type SNetwork

type SNetwork struct {
	AvailableIpAddressCount int
	CidrBlock               string
	CreationTime            time.Time
	Description             string
	IsDefault               bool
	Status                  string
	NetworkId               string
	NetworkName             string
	VpcId                   string
	ZoneId                  string
	// contains filtered or unexported fields
}

func (*SNetwork) Delete

func (self *SNetwork) Delete() error

func (*SNetwork) GetAllocTimeoutSeconds

func (self *SNetwork) GetAllocTimeoutSeconds() int

func (*SNetwork) GetGateway

func (self *SNetwork) GetGateway() string

func (*SNetwork) GetGlobalId

func (self *SNetwork) GetGlobalId() string

func (*SNetwork) GetIWire

func (self *SNetwork) GetIWire() cloudprovider.ICloudWire

func (*SNetwork) GetId

func (self *SNetwork) GetId() string

func (*SNetwork) GetIpEnd

func (self *SNetwork) GetIpEnd() string

func (*SNetwork) GetIpMask

func (self *SNetwork) GetIpMask() int8

func (*SNetwork) GetIpStart

func (self *SNetwork) GetIpStart() string

func (*SNetwork) GetIsPublic

func (self *SNetwork) GetIsPublic() bool

func (*SNetwork) GetMetadata

func (self *SNetwork) GetMetadata() *jsonutils.JSONDict

func (*SNetwork) GetName

func (self *SNetwork) GetName() string

func (*SNetwork) GetServerType

func (self *SNetwork) GetServerType() string

func (*SNetwork) GetStatus

func (self *SNetwork) GetStatus() string

func (*SNetwork) IsEmulated

func (self *SNetwork) IsEmulated() bool

func (*SNetwork) Refresh

func (self *SNetwork) Refresh() error

type SNetworkInterface

type SNetworkInterface struct {
	MacAddress         string
	NetworkInterfaceId string
	PrimaryIpAddress   string // PrivateIpAddress
}

type SNetworkInterfaces

type SNetworkInterfaces struct {
	NetworkInterface []SNetworkInterface
}

type SRegion

type SRegion struct {
	RegionEndpoint string
	RegionId       string // 这里为保持一致沿用阿里云RegionId的叫法, 与AWS RegionName字段对应
	// contains filtered or unexported fields
}

func (*SRegion) AllocateEIP

func (self *SRegion) AllocateEIP(domainType string) (*SEipAddress, error)

func (*SRegion) AssociateEip

func (self *SRegion) AssociateEip(eipId string, instanceId string) error

func (*SRegion) AttachDisk

func (self *SRegion) AttachDisk(instanceId string, diskId string, deviceName string) error

func (*SRegion) AttachKeypair

func (self *SRegion) AttachKeypair(instanceId string, keypairName string) error

func (*SRegion) ChangeVMConfig

func (self *SRegion) ChangeVMConfig(zoneId string, instanceId string, ncpu int, vmem int, disks []*SDisk) error

func (*SRegion) CheckBucket

func (self *SRegion) CheckBucket(bucketName string) error

func (*SRegion) CreateDisk

func (self *SRegion) CreateDisk(zoneId string, category string, name string, sizeGb int, snapshotId string, desc string) (string, error)

func (*SRegion) CreateEIP

func (self *SRegion) CreateEIP(name string, bwMbps int, chargeType string) (cloudprovider.ICloudEIP, error)

func (*SRegion) CreateIVpc

func (self *SRegion) CreateIVpc(name string, desc string, cidr string) (cloudprovider.ICloudVpc, error)

func (*SRegion) CreateInstance

func (self *SRegion) CreateInstance(name string, imageId string, instanceType string, SubnetId string, securityGroupId string,
	zoneId string, desc string, disks []SDisk, ipAddr string,
	keypair string) (string, error)

func (*SRegion) CreateInstanceSimple

func (self *SRegion) CreateInstanceSimple(name string, imgId string, cpu int, memGB int, storageType string, dataDiskSizesGB []int, networkId string, publicKey string) (*SInstance, error)

func (*SRegion) CreateSnapshot

func (self *SRegion) CreateSnapshot(diskId, name, desc string) (string, error)

func (*SRegion) DeallocateEIP

func (self *SRegion) DeallocateEIP(eipId string) error

func (*SRegion) DeleteDisk

func (self *SRegion) DeleteDisk(diskId string) error

func (*SRegion) DeleteImage

func (self *SRegion) DeleteImage(imageId string) error

func (*SRegion) DeleteSnapshot

func (self *SRegion) DeleteSnapshot(snapshotId string) error

func (*SRegion) DeleteVM

func (self *SRegion) DeleteVM(instanceId string) error

func (*SRegion) DeleteVpc

func (self *SRegion) DeleteVpc(vpcId string) error

func (*SRegion) DeployVM

func (self *SRegion) DeployVM(instanceId string, name string, password string, keypairName string, deleteKeypair bool, description string) error

func (*SRegion) DetachDisk

func (self *SRegion) DetachDisk(instanceId string, diskId string) error

func (*SRegion) DetachKeyPair

func (self *SRegion) DetachKeyPair(instanceId string, keypairName string) error

func (*SRegion) DissociateEip

func (self *SRegion) DissociateEip(eipId string, instanceId string) error

func (*SRegion) ExportImage

func (self *SRegion) ExportImage(instanceId string, imageId string) (*ImageExportTask, error)

func (*SRegion) GetARNPartition

func (self *SRegion) GetARNPartition() string

func (*SRegion) GetClient

func (self *SRegion) GetClient() *SAwsClient

///////////////////////////////////////////////////////////////////////////

请不要使用这个client(AWS_DEFAULT_REGION)跨region查信息.有可能导致查询返回的信息为空。比如DescribeAvailabilityZones

func (*SRegion) GetDisk

func (self *SRegion) GetDisk(diskId string) (*SDisk, error)

func (*SRegion) GetDisks

func (self *SRegion) GetDisks(instanceId string, zoneId string, storageType string, diskIds []string, offset int, limit int) ([]SDisk, int, error)

func (*SRegion) GetEip

func (self *SRegion) GetEip(eipId string) (*SEipAddress, error)

func (*SRegion) GetEips

func (self *SRegion) GetEips(eipId string, offset int, limit int) ([]SEipAddress, int, error)

func (*SRegion) GetGlobalId

func (self *SRegion) GetGlobalId() string

func (*SRegion) GetIEipById

func (self *SRegion) GetIEipById(eipId string) (cloudprovider.ICloudEIP, error)

func (*SRegion) GetIEips

func (self *SRegion) GetIEips() ([]cloudprovider.ICloudEIP, error)

func (*SRegion) GetIHostById

func (self *SRegion) GetIHostById(id string) (cloudprovider.ICloudHost, error)

func (*SRegion) GetISnapshotById

func (self *SRegion) GetISnapshotById(snapshotId string) (cloudprovider.ICloudSnapshot, error)

func (*SRegion) GetISnapshots

func (self *SRegion) GetISnapshots() ([]cloudprovider.ICloudSnapshot, error)

func (*SRegion) GetIStorageById

func (self *SRegion) GetIStorageById(id string) (cloudprovider.ICloudStorage, error)

func (*SRegion) GetIStoragecacheById

func (self *SRegion) GetIStoragecacheById(id string) (cloudprovider.ICloudStoragecache, error)

func (*SRegion) GetIVpcById

func (self *SRegion) GetIVpcById(id string) (cloudprovider.ICloudVpc, error)

func (*SRegion) GetIVpcs

func (self *SRegion) GetIVpcs() ([]cloudprovider.ICloudVpc, error)

func (*SRegion) GetIZoneById

func (self *SRegion) GetIZoneById(id string) (cloudprovider.ICloudZone, error)

func (*SRegion) GetIZones

func (self *SRegion) GetIZones() ([]cloudprovider.ICloudZone, error)

func (*SRegion) GetId

func (self *SRegion) GetId() string

func (*SRegion) GetImage

func (self *SRegion) GetImage(imageId string) (*SImage, error)

func (*SRegion) GetImageByName

func (self *SRegion) GetImageByName(name string) (*SImage, error)

func (*SRegion) GetImageStatus

func (self *SRegion) GetImageStatus(imageId string) (ImageStatusType, error)

func (*SRegion) GetImages

func (self *SRegion) GetImages(status ImageStatusType, owner ImageOwnerType, imageId []string, name string, offset int, limit int) ([]SImage, int, error)

func (*SRegion) GetInstance

func (self *SRegion) GetInstance(instanceId string) (*SInstance, error)

func (*SRegion) GetInstanceIdByImageId

func (self *SRegion) GetInstanceIdByImageId(imageId string) (string, error)

func (*SRegion) GetInstanceStatus

func (self *SRegion) GetInstanceStatus(instanceId string) (string, error)

func (*SRegion) GetInstanceType

func (self *SRegion) GetInstanceType(instanceTypeId string) (*SInstanceType, error)

func (*SRegion) GetInstanceTypes

func (self *SRegion) GetInstanceTypes() ([]SInstanceType, error)

func (*SRegion) GetInstances

func (self *SRegion) GetInstances(zoneId string, ids []string, offset int, limit int) ([]SInstance, int, error)

func (*SRegion) GetKeypairs

func (self *SRegion) GetKeypairs(finger string, name string, offset int, limit int) ([]SKeypair, int, error)

func (*SRegion) GetLatitude

func (self *SRegion) GetLatitude() float32

func (*SRegion) GetLongitude

func (self *SRegion) GetLongitude() float32

func (*SRegion) GetMatchInstanceTypes

func (self *SRegion) GetMatchInstanceTypes(cpu int, memMB int, gpu int, zoneId string) ([]SInstanceType, error)

func (*SRegion) GetMetadata

func (self *SRegion) GetMetadata() *jsonutils.JSONDict

func (*SRegion) GetName

func (self *SRegion) GetName() string

func (*SRegion) GetNetwroks

func (self *SRegion) GetNetwroks(ids []string, vpcId string, limit int, offset int) ([]SNetwork, int, error)

func (*SRegion) GetProvider

func (self *SRegion) GetProvider() string

func (*SRegion) GetSecurityGroupDetails

func (self *SRegion) GetSecurityGroupDetails(secGroupId string) (*SSecurityGroup, error)

func (*SRegion) GetSecurityGroups

func (self *SRegion) GetSecurityGroups(vpcId string, secgroupIdTag string, offset int, limit int) ([]SSecurityGroup, int, error)

func (*SRegion) GetSnapshots

func (self *SRegion) GetSnapshots(instanceId string, diskId string, snapshotName string, snapshotIds []string, offset int, limit int) ([]SSnapshot, int, error)

func (*SRegion) GetStatus

func (self *SRegion) GetStatus() string

func (*SRegion) GetVpcs

func (self *SRegion) GetVpcs(vpcId []string, offset int, limit int) ([]SVpc, int, error)

func (*SRegion) ImportImage

func (self *SRegion) ImportImage(name string, osArch string, osType string, osDist string, diskFormat string, bucket string, key string) (*ImageImportTask, error)

func (*SRegion) ImportKeypair

func (self *SRegion) ImportKeypair(name string, pubKey string) (*SKeypair, error)

func (*SRegion) IsBucketExist

func (self *SRegion) IsBucketExist(bucketName string) (bool, error)

func (*SRegion) IsEmulated

func (self *SRegion) IsEmulated() bool

func (*SRegion) Refresh

func (self *SRegion) Refresh() error

func (*SRegion) ReplaceSystemDisk

func (self *SRegion) ReplaceSystemDisk(instanceId string, imageId string, sysDiskSizeGB int) (string, error)

func (*SRegion) StartVM

func (self *SRegion) StartVM(instanceId string) error

func (*SRegion) StopVM

func (self *SRegion) StopVM(instanceId string, isForce bool) error

func (*SRegion) UpdateEipBandwidth

func (self *SRegion) UpdateEipBandwidth(eipId string, bw int) error

func (*SRegion) UpdateVM

func (self *SRegion) UpdateVM(instanceId string, hostname string) error

type SSecurityGroup

type SSecurityGroup struct {
	RegionId          string
	VpcId             string
	SecurityGroupId   string
	Description       string
	SecurityGroupName string
	Permissions       []secrules.SecurityRule
	Tags              Tags
	// contains filtered or unexported fields
}

func (*SSecurityGroup) GetDescription

func (self *SSecurityGroup) GetDescription() string

func (*SSecurityGroup) GetGlobalId

func (self *SSecurityGroup) GetGlobalId() string

func (*SSecurityGroup) GetId

func (self *SSecurityGroup) GetId() string

func (*SSecurityGroup) GetMetadata

func (self *SSecurityGroup) GetMetadata() *jsonutils.JSONDict

func (*SSecurityGroup) GetName

func (self *SSecurityGroup) GetName() string

func (*SSecurityGroup) GetRules

func (self *SSecurityGroup) GetRules() ([]secrules.SecurityRule, error)

func (*SSecurityGroup) GetStatus

func (self *SSecurityGroup) GetStatus() string

func (*SSecurityGroup) IsEmulated

func (self *SSecurityGroup) IsEmulated() bool

func (*SSecurityGroup) Refresh

func (self *SSecurityGroup) Refresh() error

type SSecurityGroupIds

type SSecurityGroupIds struct {
	SecurityGroupId []string
}

type SSnapshot

type SSnapshot struct {
	Progress       string
	SnapshotId     string
	SnapshotName   string
	SourceDiskId   string
	SourceDiskSize int32
	SourceDiskType string
	Status         SnapshotStatusType
	Usage          string
	// contains filtered or unexported fields
}

func (*SSnapshot) Delete

func (self *SSnapshot) Delete() error

func (*SSnapshot) GetDiskId

func (self *SSnapshot) GetDiskId() string

func (*SSnapshot) GetDiskType

func (self *SSnapshot) GetDiskType() string

func (*SSnapshot) GetGlobalId

func (self *SSnapshot) GetGlobalId() string

func (*SSnapshot) GetId

func (self *SSnapshot) GetId() string

func (*SSnapshot) GetManagerId

func (self *SSnapshot) GetManagerId() string

func (*SSnapshot) GetMetadata

func (self *SSnapshot) GetMetadata() *jsonutils.JSONDict

func (*SSnapshot) GetName

func (self *SSnapshot) GetName() string

func (*SSnapshot) GetRegionId

func (self *SSnapshot) GetRegionId() string

func (*SSnapshot) GetSize

func (self *SSnapshot) GetSize() int32

func (*SSnapshot) GetStatus

func (self *SSnapshot) GetStatus() string

func (*SSnapshot) IsEmulated

func (self *SSnapshot) IsEmulated() bool

func (*SSnapshot) Refresh

func (self *SSnapshot) Refresh() error

type SStorage

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

func (*SStorage) CreateIDisk

func (self *SStorage) CreateIDisk(name string, sizeGb int, desc string) (cloudprovider.ICloudDisk, error)

func (*SStorage) GetCapacityMB

func (self *SStorage) GetCapacityMB() int

func (*SStorage) GetEnabled

func (self *SStorage) GetEnabled() bool

func (*SStorage) GetGlobalId

func (self *SStorage) GetGlobalId() string

func (*SStorage) GetIDisk

func (self *SStorage) GetIDisk(idStr string) (cloudprovider.ICloudDisk, error)

func (*SStorage) GetIDisks

func (self *SStorage) GetIDisks() ([]cloudprovider.ICloudDisk, error)

func (*SStorage) GetIStoragecache

func (self *SStorage) GetIStoragecache() cloudprovider.ICloudStoragecache

func (*SStorage) GetIZone

func (self *SStorage) GetIZone() cloudprovider.ICloudZone

func (*SStorage) GetId

func (self *SStorage) GetId() string

func (*SStorage) GetManagerId

func (self *SStorage) GetManagerId() string

func (*SStorage) GetMediumType

func (self *SStorage) GetMediumType() string

func (*SStorage) GetMetadata

func (self *SStorage) GetMetadata() *jsonutils.JSONDict

func (*SStorage) GetName

func (self *SStorage) GetName() string

func (*SStorage) GetStatus

func (self *SStorage) GetStatus() string

func (*SStorage) GetStorageConf

func (self *SStorage) GetStorageConf() jsonutils.JSONObject

func (*SStorage) GetStorageType

func (self *SStorage) GetStorageType() string

func (*SStorage) IsEmulated

func (self *SStorage) IsEmulated() bool

func (*SStorage) Refresh

func (self *SStorage) Refresh() error

type SStoragecache

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

func (*SStoragecache) CreateIImage

func (self *SStoragecache) CreateIImage(snapshotId, imageName, osType, imageDesc string) (cloudprovider.ICloudImage, error)

func (*SStoragecache) DownloadImage

func (self *SStoragecache) DownloadImage(userCred mcclient.TokenCredential, imageId string, extId string, path string) (jsonutils.JSONObject, error)

func (*SStoragecache) GetGlobalId

func (self *SStoragecache) GetGlobalId() string

func (*SStoragecache) GetIImages

func (self *SStoragecache) GetIImages() ([]cloudprovider.ICloudImage, error)

func (*SStoragecache) GetId

func (self *SStoragecache) GetId() string

func (*SStoragecache) GetManagerId

func (self *SStoragecache) GetManagerId() string

func (*SStoragecache) GetMetadata

func (self *SStoragecache) GetMetadata() *jsonutils.JSONDict

func (*SStoragecache) GetName

func (self *SStoragecache) GetName() string

func (*SStoragecache) GetStatus

func (self *SStoragecache) GetStatus() string

func (*SStoragecache) IsEmulated

func (self *SStoragecache) IsEmulated() bool

func (*SStoragecache) Refresh

func (self *SStoragecache) Refresh() error

func (*SStoragecache) UploadImage

func (self *SStoragecache) UploadImage(userCred mcclient.TokenCredential, imageId string, osArch, osType, osDist string, extId string, isForce bool) (string, error)

type STags

type STags struct {
	Tag []string
}

type SUserCIDRs

type SUserCIDRs struct {
	UserCidr []string
}

type SVpc

type SVpc struct {
	RegionId  string
	VpcId     string
	VpcName   string
	CidrBlock string
	IsDefault bool
	Status    string
	Tags      map[string]string // 名称、描述等
	// contains filtered or unexported fields
}

func (*SVpc) Delete

func (self *SVpc) Delete() error

func (*SVpc) GetCidrBlock

func (self *SVpc) GetCidrBlock() string

func (*SVpc) GetGlobalId

func (self *SVpc) GetGlobalId() string

func (*SVpc) GetISecurityGroups

func (self *SVpc) GetISecurityGroups() ([]cloudprovider.ICloudSecurityGroup, error)

func (*SVpc) GetIWireById

func (self *SVpc) GetIWireById(wireId string) (cloudprovider.ICloudWire, error)

func (*SVpc) GetIWires

func (self *SVpc) GetIWires() ([]cloudprovider.ICloudWire, error)

func (*SVpc) GetId

func (self *SVpc) GetId() string

func (*SVpc) GetIsDefault

func (self *SVpc) GetIsDefault() bool

func (*SVpc) GetManagerId

func (self *SVpc) GetManagerId() string

func (*SVpc) GetMetadata

func (self *SVpc) GetMetadata() *jsonutils.JSONDict

func (*SVpc) GetName

func (self *SVpc) GetName() string

func (*SVpc) GetRegion

func (self *SVpc) GetRegion() cloudprovider.ICloudRegion

func (*SVpc) GetStatus

func (self *SVpc) GetStatus() string

func (*SVpc) IsEmulated

func (self *SVpc) IsEmulated() bool

func (*SVpc) Refresh

func (self *SVpc) Refresh() error

func (*SVpc) SyncSecurityGroup

func (self *SVpc) SyncSecurityGroup(secgroupId string, name string, rules []secrules.SecurityRule) (string, error)

type SVpcAttributes

type SVpcAttributes struct {
	PrivateIpAddress SIpAddress
	NetworkId        string // subnet id
	VpcId            string
}

type SWire

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

func (*SWire) CreateINetwork

func (self *SWire) CreateINetwork(name string, cidr string, desc string) (cloudprovider.ICloudNetwork, error)

func (*SWire) GetBandwidth

func (self *SWire) GetBandwidth() int

func (*SWire) GetGlobalId

func (self *SWire) GetGlobalId() string

func (*SWire) GetINetworkById

func (self *SWire) GetINetworkById(netid string) (cloudprovider.ICloudNetwork, error)

func (*SWire) GetINetworks

func (self *SWire) GetINetworks() ([]cloudprovider.ICloudNetwork, error)

func (*SWire) GetIVpc

func (self *SWire) GetIVpc() cloudprovider.ICloudVpc

func (*SWire) GetIZone

func (self *SWire) GetIZone() cloudprovider.ICloudZone

func (*SWire) GetId

func (self *SWire) GetId() string

func (*SWire) GetMetadata

func (self *SWire) GetMetadata() *jsonutils.JSONDict

func (*SWire) GetName

func (self *SWire) GetName() string

func (*SWire) GetStatus

func (self *SWire) GetStatus() string

func (*SWire) IsEmulated

func (self *SWire) IsEmulated() bool

func (*SWire) Refresh

func (self *SWire) Refresh() error

type SZone

type SZone struct {
	ZoneId    string // 沿用阿里云ZoneId,对应Aws ZoneName
	LocalName string
	State     string
	// contains filtered or unexported fields
}

func (*SZone) GetGlobalId

func (self *SZone) GetGlobalId() string

func (*SZone) GetIHostById

func (self *SZone) GetIHostById(id string) (cloudprovider.ICloudHost, error)

func (*SZone) GetIHosts

func (self *SZone) GetIHosts() ([]cloudprovider.ICloudHost, error)

func (*SZone) GetIRegion

func (self *SZone) GetIRegion() cloudprovider.ICloudRegion

func (*SZone) GetIStorageById

func (self *SZone) GetIStorageById(id string) (cloudprovider.ICloudStorage, error)

func (*SZone) GetIStorages

func (self *SZone) GetIStorages() ([]cloudprovider.ICloudStorage, error)

func (*SZone) GetIWires

func (self *SZone) GetIWires() ([]cloudprovider.ICloudWire, error)

func (*SZone) GetId

func (self *SZone) GetId() string

func (*SZone) GetMetadata

func (self *SZone) GetMetadata() *jsonutils.JSONDict

func (*SZone) GetName

func (self *SZone) GetName() string

func (*SZone) GetStatus

func (self *SZone) GetStatus() string

func (*SZone) IsEmulated

func (self *SZone) IsEmulated() bool

func (*SZone) Refresh

func (self *SZone) Refresh() error

type SnapshotStatusType

type SnapshotStatusType string
const (
	SnapshotStatusAccomplished SnapshotStatusType = "accomplished"
	SnapshotStatusProgress     SnapshotStatusType = "progressing"
	SnapshotStatusFailed       SnapshotStatusType = "failed"
)

type Tag

type Tag struct {
	TagKey   string
	TagValue string
}

type TagSpec

type TagSpec struct {
	ResourceType string // "customer-gateway"|"dedicated-host"|"dhcp-options"|"image"|"instance"|"internet-gateway"|"network-acl"|"network-interface"|"reserved-instances"|"route-table"|"snapshot"|"spot-instances-request"|"subnet"|"security-group"|"volume"|"vpc"|"vpn-connection"|"vpn-gateway"
	Tags         map[string]string
}

func (*TagSpec) GetDescTag

func (self *TagSpec) GetDescTag() string

func (*TagSpec) GetNameTag

func (self *TagSpec) GetNameTag() string

func (*TagSpec) GetTag

func (self *TagSpec) GetTag(k string) (string, error)

func (*TagSpec) GetTagSpecifications

func (self *TagSpec) GetTagSpecifications() (*ec2.TagSpecification, error)

func (*TagSpec) GetTagWithDefault

func (self *TagSpec) GetTagWithDefault(k, Default string) string

找不到的情况下返回传入的默认值

func (*TagSpec) LoadingEc2Tags

func (self *TagSpec) LoadingEc2Tags(tags []*ec2.Tag)

func (*TagSpec) SetDescTag

func (self *TagSpec) SetDescTag(v string)

func (*TagSpec) SetNameTag

func (self *TagSpec) SetNameTag(v string)

func (*TagSpec) SetTag

func (self *TagSpec) SetTag(k, v string)

type Tags

type Tags struct {
	Tag []Tag
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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