Documentation
¶
Index ¶
- Constants
- type BillingType
- type CancellationRequest
- type Client
- type Config
- type InstanceType
- type IpmiProxy
- type KronosCloudTemplate
- type Location
- type Network
- type NetworkV4
- type NetworkV6
- type NewInstance
- type ProtoCompute
- type ProtoComputeCpu
- type ProtoComputeDisk
- type ProtoComputeFlavor
- type ProtoComputeFlavorSimple
- type ProtoComputeMemory
- type ProtoComputeNic
- type ProtoComputePrice
- type Protos
- type ServiceBilling
Constants ¶
View Source
const ( TokenUrl string = "https://iam-proxy.heficed.com/oauth2/token" APIUrl string = "https://api.heficed.com" )
View Source
const APIPath = "protocompute"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BillingType ¶
type CancellationRequest ¶
type InstanceType ¶
type KronosCloudTemplate ¶
type KronosCloudTemplate struct {
Id string `json:"id,omitempty"`
Created int32 `json:"created,omitempty"`
// Size in GB
Size float32 `json:"size,omitempty"`
Version string `json:"version,omitempty"`
Name string `json:"name,omitempty"`
LocationId string `json:"locationId,omitempty"`
InstanceTypeId string `json:"instanceTypeId,omitempty"`
}
type NewInstance ¶ added in v0.1.2
type ProtoCompute ¶
type ProtoCompute struct {
Id int64 `json:"id,omitempty"`
Status string `json:"status,omitempty"`
Hostname string `json:"hostname,omitempty"`
InstanceType *InstanceType `json:"instanceType,omitempty"`
Location *Location `json:"location,omitempty"`
Template *KronosCloudTemplate `json:"template,omitempty"`
Network *Network `json:"network,omitempty"`
Billing *ServiceBilling `json:"billing,omitempty"`
Flavor *ProtoComputeFlavorSimple `json:"flavor,omitempty"`
Password string `json:"password,omitempty"`
IpmiProxy *IpmiProxy `json:"ipmiProxy,omitempty"`
CpuLimited bool `json:"cpuLimited,omitempty"`
NetworkLimited bool `json:"networkLimited,omitempty"`
Eta string `json:"eta,omitempty"`
}
type ProtoComputeCpu ¶
type ProtoComputeDisk ¶
type ProtoComputeFlavor ¶
type ProtoComputeFlavorSimple ¶
type ProtoComputeFlavorSimple struct {
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Cpus *[]ProtoComputeCpu `json:"cpus,omitempty"`
Memory []ProtoComputeMemory `json:"memory,omitempty"`
Disks *[]ProtoComputeDisk `json:"disks,omitempty"`
Nics *[]ProtoComputeNic `json:"nics,omitempty"`
}
type ProtoComputeMemory ¶
type ProtoComputeNic ¶
type ProtoComputePrice ¶
type Protos ¶
type Protos struct {
*Client
}
func (*Protos) CreateInstance ¶ added in v0.1.2
func (p *Protos) CreateInstance(cfg NewInstance) (int, error)
func (*Protos) GetInstance ¶
func (p *Protos) GetInstance(id int) ProtoCompute
func (*Protos) ListInstances ¶
func (p *Protos) ListInstances() []ProtoCompute
type ServiceBilling ¶
type ServiceBilling struct {
Product string `json:"product,omitempty"`
Type_ *BillingType `json:"type,omitempty"`
Status string `json:"status,omitempty"`
HourlySpendingRate float32 `json:"hourlySpendingRate,omitempty"`
Price float32 `json:"price,omitempty"`
StartDate int32 `json:"startDate,omitempty"`
EndDate int32 `json:"endDate,omitempty"`
Sla struct {
Id int `json:"id,omitempty"`
Name string `json:"name,omitempty"`
} `json:"sla,omitempty"`
CancellationRequest *CancellationRequest `json:"cancellationRequest,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.