Documentation
¶
Index ¶
- type Connection
- type Firewall
- type FirewallRules
- type HealthCheck
- type Image
- type KeyValue
- type LookupImages
- type LookupSpec
- type LookupSpecs
- type MCIS
- type Model
- type NLB
- type NLBBase
- type NLBProtocolBase
- type NS
- type Region
- type SSHKey
- type Spec
- type Subnet
- type TargetGroup
- type VM
- type VMStatus
- type VPC
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Connection ¶
type Connection struct {
Model
ConfigName string `json:"ConfigName"`
ProviderName string `json:"ProviderName"`
DriverName string `json:"DriverName"`
CredentialName string `json:"CredentialName"`
RegionName string `json:"RegionName"`
}
Connection info.
type Firewall ¶
type Firewall struct {
Model
Config string `json:"connectionName"`
VPCId string `json:"vNetId"`
Description string `json:"description"`
FirewallRules []FirewallRules `json:"firewallRules"`
CspSecurityGroupId string `json:"cspSecurityGroupId"` // output
CspSecurityGroupName string `json:"cspSecurityGroupName"` // output
KeyValueList []KeyValue `json:"keyValueList"` // output
}
func NewFirewall ¶
new instance of Firewall
type FirewallRules ¶
type HealthCheck ¶
type HealthCheck struct {
NLBProtocolBase
Interval interface{} `json:"interval"` // secs, Interval time between health checks.
Timeout interface{} `json:"timeout"` // secs, Waiting time to decide an unhealthy VM when no response.
Threshold interface{} `json:"threshold"` // num, The number of continuous health checks to change the VM status.
}
type Image ¶
type Image struct {
Model
Config string `json:"connectionName"`
CspImageId string `json:"cspImageId"`
CspImageName string `json:"cspImageName"` // output
CreationDate string `json:"creationDate"` // output
Description string `json:"description"` //
GuestOS string `json:"guestOS"` //
Status string `json:"status"` // output
KeyValueList []KeyValue `json:"keyValueList"` // output
}
type LookupImages ¶
type LookupImages struct {
Model
ConnectionName string `json:"connectionName"`
Images []struct {
Name string `json:"name"`
IId struct {
NameId string `json:"nameId"` // output - NameID by user
SystemId string `json:"systemId"` // output - SystemID by CloudOS
} `json:"iid"`
GuestOS string `json:"guestOS"` // output - Windows7, Ubuntu etc.
Status string `json:"status"` // output - available, unavailable
KeyValueList []KeyValue `json:"keyValueList"` //output -
} `json:"image"`
}
func NewLookupImages ¶
func NewLookupImages(conf string) *LookupImages
new instance of VM-Image lookup
func (*LookupImages) GET ¶
func (self *LookupImages) GET() (bool, error)
Look up (VM-Image, VM-Spec)
type LookupSpec ¶
type LookupSpec struct {
Model
Config string `json:"connectionName"`
Spec string `json:"cspSpecName"`
Region string `json:"region"` // output
Memory string `json:"mem"` // output
CPU struct {
Count string `json:"count"` // output
Clock string `json:"clock"` // output - GHz
} `json:"vcpu"`
}
func NewLookupSpec ¶
func NewLookupSpec(conf string, spec string) *LookupSpec
new instance of VM-Spec-lookup
func (*LookupSpec) GET ¶
func (spec *LookupSpec) GET() (bool, error)
type LookupSpecs ¶
type LookupSpecs struct {
Model
Config string `json:"connectionName"`
Vmspecs []struct {
Name string `json:"name"` // output
Memory string `json:"mem"` // output
CPU struct {
Count string `json:"count"` // output
Clock string `json:"clock"` // output - GHz
} `json:"vcpu"`
} `json:"vmspec"`
}
func (*LookupSpecs) GET ¶
func (spec *LookupSpecs) GET() (bool, error)
type MCIS ¶
type MCIS struct {
Model
Description string `json:"description"`
Label string `json:"label"`
SystemLabel string `json:"systemLabel"`
InstallMonAgent string `json:"installMonAgent"`
Status string `json:"status"`
VMs []VM `json:"vm"` // output
}
MCIS
type NLB ¶
type NLB struct {
NLBBase
HealthChecker HealthCheck `json:"healthChecker"`
}
type NLBBase ¶
type NLBBase struct {
Model
Config string `json:"connectionName"`
VPC string `json:"vNetId"`
Type string `json:"type" enums:"PUBLIC,INTERNAL"`
Scope string `json:"scope" enums:"REGION,GLOBAL"`
Listener NLBProtocolBase `json:"listener"`
TargetGroup TargetGroup `json:"targetGroup"`
}
NLB
type NLBProtocolBase ¶
type NS ¶
type NS struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
}
Namespace
type Region ¶
type SSHKey ¶
type SSHKey struct {
Model
Config string `json:"connectionName"`
Username string `json:"username"`
PrivateKey string `json:"privateKey"` // output
}
type Spec ¶
type TargetGroup ¶
type TargetGroup struct {
NLBProtocolBase
MCIS string `json:"mcis"`
VmGroupId string `json:"subGroupId"`
}
type VM ¶
type VM struct {
Model
McisName string
VmGroupId string `json:"subGroupId"`
VmGroupSize string `json:"subGroupSize"`
Config string `json:"connectionName"`
VPC string `json:"vNetId"`
Subnet string `json:"subnetId"`
Firewalls []string `json:"securityGroupIds"`
SSHKey string `json:"sshKeyId"`
Image string `json:"imageId"`
Spec string `json:"specId"`
UserAccount string `json:"vmUserAccount"`
UserPassword string `json:"vmUserPassword"`
Description string `json:"description"`
PublicIP string `json:"publicIP"` // output
PrivateIP string `json:"privateIP"` // output
Status VMStatus `json:"status"` // output
SystemMessage string `json:"systemMessage"` // output
RootDiskType string `json:"rootDiskType,omitempty" example:"default"` // "", "default", "TYPE1", AWS: ["standard", "gp2", "gp3"], Azure: ["PremiumSSD", "StandardSSD", "StandardHHD"], GCP: ["pd-standard", "pd-balanced", "pd-ssd", "pd-extreme"], ALIBABA: ["cloud_efficiency", "cloud", "cloud_ssd"], TENCENT: ["CLOUD_PREMIUM", "CLOUD_SSD"]
RootDiskSize string `json:"rootDiskSize,omitempty" example:"default"` // "default", Integer (GB): ["50", ..., "1000"]
Region struct {
Region string `json:"region"`
Zone string `json:"zone"`
} `json:"region"` // output
CspViewVmDetail struct {
VMSpecName string `json:"vmspecName"`
IId struct {
SystemId string `json:"systemId"`
} `json:"iid"`
SecurityGroupIIds []struct {
SystemId string `json:"systemId"`
} `json:"securityGroupIIds"`
SubnetIID struct {
SystemId string `json:"systemId"`
} `json:"subnetIID"`
} `json:"cspViewVmDetail"` // output
}
func (*VM) GetNameInCsp ¶
type VPC ¶
type VPC struct {
Model
Config string `json:"connectionName"`
CidrBlock string `json:"cidrBlock"`
Subnets []Subnet `json:"subnetInfoList"`
Description string `json:"description"`
CspVNetId string `json:"cspVNetId"` // output
CspVNetName string `json:"cspVNetName"` // output
Status string `json:"status"` // output
KeyValueList []KeyValue `json:"keyValueList"` // output
}
MCIR
Click to show internal directories.
Click to hide internal directories.