Documentation
¶
Index ¶
- type AuthorizeSecurityGroupEgressResponse
- type AuthorizeSecurityGroupIngressResponse
- type Client
- func (exo *Client) AsyncToVirtualMachine(resp QueryAsyncJobResultResponse) (*DeployVirtualMachineResponse, error)
- func (exo *Client) CreateEgressRule(rule SecurityGroupRule) (*AuthorizeSecurityGroupEgressResponse, error)
- func (exo *Client) CreateIngressRule(rule SecurityGroupRule) (*AuthorizeSecurityGroupIngressResponse, error)
- func (exo *Client) CreateKeypair(name string) (*CreateSSHKeyPairResponse, error)
- func (exo *Client) CreateSecurityGroupWithRules(name string, ingress []SecurityGroupRule, egress []SecurityGroupRule) (*CreateSecurityGroupResponse, error)
- func (exo *Client) CreateVirtualMachine(p MachineProfile) (string, error)
- func (exo *Client) DeleteKeypair(name string) (*StandardResponse, error)
- func (exo *Client) DestroyVirtualMachine(id string) (string, error)
- func (exo *Client) GetImages() (map[string]map[int]string, error)
- func (exo *Client) GetKeypairs() ([]string, error)
- func (exo *Client) GetProfiles() (map[string]string, error)
- func (exo *Client) GetSecurityGroups() (map[string]string, error)
- func (exo *Client) GetTopology() (*Topology, error)
- func (exo *Client) GetVirtualMachine(id string) (*VirtualMachine, error)
- func (exo *Client) GetZones() (map[string]string, error)
- func (exo *Client) ListVirtualMachines(id string) ([]*VirtualMachine, error)
- func (exo *Client) PollAsyncJob(jobid string) (*QueryAsyncJobResultResponse, error)
- func (exo *Client) RebootVirtualMachine(id string) (string, error)
- func (exo *Client) Request(command string, params url.Values) (json.RawMessage, error)
- func (exo *Client) StartVirtualMachine(id string) (string, error)
- func (exo *Client) StopVirtualMachine(id string) (string, error)
- type CreateSSHKeyPairResponse
- type CreateSSHKeyPairWrappedResponse
- type CreateSecurityGroupResponse
- type CreateSecurityGroupResponseWrapper
- type DeleteSSHKeyPairResponse
- type DeployVirtualMachineResponse
- type DeployVirtualMachineWrappedResponse
- type DestroyVirtualMachineResponse
- type Error
- type ListSSHKeyPairsResponse
- type ListSecurityGroupsResponse
- type ListServiceOfferingsResponse
- type ListTemplatesResponse
- type ListVirtualMachinesResponse
- type ListZonesResponse
- type MachineProfile
- type QueryAsyncJobResultResponse
- type RebootVirtualMachineResponse
- type SSHKeyPair
- type SecurityGroup
- type SecurityGroupRule
- type ServiceOffering
- type StandardResponse
- type StartVirtualMachineResponse
- type StopVirtualMachineResponse
- type Template
- type Topology
- type VirtualMachine
- type Zone
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthorizeSecurityGroupEgressResponse ¶
type AuthorizeSecurityGroupEgressResponse struct { JobID string `json:"jobid,omitempty"` Account string `json:"account,omitempty"` Cidr string `json:"cidr,omitempty"` Endport int `json:"endport,omitempty"` Icmpcode int `json:"icmpcode,omitempty"` Icmptype int `json:"icmptype,omitempty"` Protocol string `json:"protocol,omitempty"` Ruleid string `json:"ruleid,omitempty"` Securitygroupname string `json:"securitygroupname,omitempty"` Startport int `json:"startport,omitempty"` }
type AuthorizeSecurityGroupIngressResponse ¶
type AuthorizeSecurityGroupIngressResponse struct { JobID string `json:"jobid,omitempty"` Account string `json:"account,omitempty"` Cidr string `json:"cidr,omitempty"` Endport int `json:"endport,omitempty"` Icmpcode int `json:"icmpcode,omitempty"` Icmptype int `json:"icmptype,omitempty"` Protocol string `json:"protocol,omitempty"` Ruleid string `json:"ruleid,omitempty"` Securitygroupname string `json:"securitygroupname,omitempty"` Startport int `json:"startport,omitempty"` }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) AsyncToVirtualMachine ¶
func (exo *Client) AsyncToVirtualMachine(resp QueryAsyncJobResultResponse) (*DeployVirtualMachineResponse, error)
func (*Client) CreateEgressRule ¶
func (exo *Client) CreateEgressRule(rule SecurityGroupRule) (*AuthorizeSecurityGroupEgressResponse, error)
func (*Client) CreateIngressRule ¶
func (exo *Client) CreateIngressRule(rule SecurityGroupRule) (*AuthorizeSecurityGroupIngressResponse, error)
func (*Client) CreateKeypair ¶
func (exo *Client) CreateKeypair(name string) (*CreateSSHKeyPairResponse, error)
func (*Client) CreateSecurityGroupWithRules ¶
func (exo *Client) CreateSecurityGroupWithRules(name string, ingress []SecurityGroupRule, egress []SecurityGroupRule) (*CreateSecurityGroupResponse, error)
func (*Client) CreateVirtualMachine ¶
func (exo *Client) CreateVirtualMachine(p MachineProfile) (string, error)
func (*Client) DeleteKeypair ¶
func (exo *Client) DeleteKeypair(name string) (*StandardResponse, error)
func (*Client) DestroyVirtualMachine ¶
func (*Client) GetKeypairs ¶
func (*Client) GetSecurityGroups ¶
func (*Client) GetTopology ¶
func (*Client) GetVirtualMachine ¶
func (exo *Client) GetVirtualMachine(id string) (*VirtualMachine, error)
func (*Client) ListVirtualMachines ¶
func (exo *Client) ListVirtualMachines(id string) ([]*VirtualMachine, error)
func (*Client) PollAsyncJob ¶
func (exo *Client) PollAsyncJob(jobid string) (*QueryAsyncJobResultResponse, error)
func (*Client) RebootVirtualMachine ¶
func (*Client) StartVirtualMachine ¶
type CreateSSHKeyPairResponse ¶
type CreateSSHKeyPairResponse struct {
Privatekey string `json:"privatekey,omitempty"`
}
type CreateSSHKeyPairWrappedResponse ¶
type CreateSSHKeyPairWrappedResponse struct {
Wrapped CreateSSHKeyPairResponse `json:"keypair,omitempty"`
}
type CreateSecurityGroupResponse ¶
type CreateSecurityGroupResponse struct { Account string `json:"account,omitempty"` Description string `json:"description,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Id string `json:"id,omitempty"` Name string `json:"name,omitempty"` Project string `json:"project,omitempty"` Projectid string `json:"projectid,omitempty"` }
type CreateSecurityGroupResponseWrapper ¶
type CreateSecurityGroupResponseWrapper struct {
Wrapped CreateSecurityGroupResponse `json:"securitygroup"`
}
type DeleteSSHKeyPairResponse ¶
type DeleteSSHKeyPairResponse struct {
Privatekey string `json:"privatekey,omitempty"`
}
type DeployVirtualMachineResponse ¶
type DeployVirtualMachineResponse struct { JobID string `json:"jobid,omitempty"` Account string `json:"account,omitempty"` Affinitygroup []struct { Account string `json:"account,omitempty"` Description string `json:"description,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Id string `json:"id,omitempty"` Name string `json:"name,omitempty"` Type string `json:"type,omitempty"` VirtualmachineIds []string `json:"virtualmachineIds,omitempty"` } `json:"affinitygroup,omitempty"` Cpunumber int `json:"cpunumber,omitempty"` Cpuspeed int `json:"cpuspeed,omitempty"` Cpuused string `json:"cpuused,omitempty"` Created string `json:"created,omitempty"` Details map[string]string `json:"details,omitempty"` Diskioread int64 `json:"diskioread,omitempty"` Diskiowrite int64 `json:"diskiowrite,omitempty"` Diskkbsread int64 `json:"diskkbsread,omitempty"` Diskkbswrite int64 `json:"diskkbswrite,omitempty"` Displayname string `json:"displayname,omitempty"` Displayvm bool `json:"displayvm,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Forvirtualnetwork bool `json:"forvirtualnetwork,omitempty"` Group string `json:"group,omitempty"` Groupid string `json:"groupid,omitempty"` Guestosid string `json:"guestosid,omitempty"` Haenable bool `json:"haenable,omitempty"` Hostid string `json:"hostid,omitempty"` Hostname string `json:"hostname,omitempty"` Hypervisor string `json:"hypervisor,omitempty"` Id string `json:"id,omitempty"` Instancename string `json:"instancename,omitempty"` Isdynamicallyscalable bool `json:"isdynamicallyscalable,omitempty"` Isodisplaytext string `json:"isodisplaytext,omitempty"` Isoid string `json:"isoid,omitempty"` Isoname string `json:"isoname,omitempty"` Keypair string `json:"keypair,omitempty"` Memory int `json:"memory,omitempty"` Name string `json:"name,omitempty"` Networkkbsread int64 `json:"networkkbsread,omitempty"` Networkkbswrite int64 `json:"networkkbswrite,omitempty"` Nic []struct { Broadcasturi string `json:"broadcasturi,omitempty"` Gateway string `json:"gateway,omitempty"` Id string `json:"id,omitempty"` Ipaddress string `json:"ipaddress,omitempty"` Isdefault bool `json:"isdefault,omitempty"` Isolationuri string `json:"isolationuri,omitempty"` Macaddress string `json:"macaddress,omitempty"` Netmask string `json:"netmask,omitempty"` Networkid string `json:"networkid,omitempty"` Networkname string `json:"networkname,omitempty"` Secondaryip []string `json:"secondaryip,omitempty"` Traffictype string `json:"traffictype,omitempty"` Type string `json:"type,omitempty"` } `json:"nic,omitempty"` Password string `json:"password,omitempty"` Passwordenabled bool `json:"passwordenabled,omitempty"` Project string `json:"project,omitempty"` Projectid string `json:"projectid,omitempty"` Publicip string `json:"publicip,omitempty"` Publicipid string `json:"publicipid,omitempty"` Rootdeviceid int64 `json:"rootdeviceid,omitempty"` Rootdevicetype string `json:"rootdevicetype,omitempty"` Serviceofferingid string `json:"serviceofferingid,omitempty"` Serviceofferingname string `json:"serviceofferingname,omitempty"` Servicestate string `json:"servicestate,omitempty"` State string `json:"state,omitempty"` Templatedisplaytext string `json:"templatedisplaytext,omitempty"` Templateid string `json:"templateid,omitempty"` Templatename string `json:"templatename,omitempty"` Zoneid string `json:"zoneid,omitempty"` Zonename string `json:"zonename,omitempty"` }
type DeployVirtualMachineWrappedResponse ¶
type DeployVirtualMachineWrappedResponse struct {
Wrapped DeployVirtualMachineResponse `json:"virtualmachine"`
}
type DestroyVirtualMachineResponse ¶
type DestroyVirtualMachineResponse struct {
JobID string `json:"jobid,omitempty"`
}
type Error ¶
type ListSSHKeyPairsResponse ¶
type ListSSHKeyPairsResponse struct { Count int `json:"count"` SSHKeyPairs []*SSHKeyPair `json:"sshkeypair"` }
type ListSecurityGroupsResponse ¶
type ListSecurityGroupsResponse struct { Count int `json:"count"` SecurityGroups []*SecurityGroup `json:"securitygroup"` }
type ListServiceOfferingsResponse ¶
type ListServiceOfferingsResponse struct { Count int `json:"count"` ServiceOfferings []*ServiceOffering `json:"serviceoffering"` }
type ListTemplatesResponse ¶
type ListVirtualMachinesResponse ¶
type ListVirtualMachinesResponse struct { Count int `json:"count"` VirtualMachines []*VirtualMachine `json:"virtualmachine"` }
type ListZonesResponse ¶
type MachineProfile ¶
type QueryAsyncJobResultResponse ¶
type QueryAsyncJobResultResponse struct { Accountid string `json:"accountid,omitempty"` Cmd string `json:"cmd,omitempty"` Created string `json:"created,omitempty"` Jobinstanceid string `json:"jobinstanceid,omitempty"` Jobinstancetype string `json:"jobinstancetype,omitempty"` Jobprocstatus int `json:"jobprocstatus,omitempty"` Jobresult json.RawMessage `json:"jobresult,omitempty"` Jobresultcode int `json:"jobresultcode,omitempty"` Jobresulttype string `json:"jobresulttype,omitempty"` Jobstatus int `json:"jobstatus,omitempty"` Userid string `json:"userid,omitempty"` }
type RebootVirtualMachineResponse ¶
type RebootVirtualMachineResponse struct {
JobID string `json:"jobid,omitempty"`
}
type SSHKeyPair ¶
type SecurityGroup ¶
type SecurityGroup struct { Account string `json:"account,omitempty"` Description string `json:"description,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Id string `json:"id,omitempty"` Name string `json:"name,omitempty"` Project string `json:"project,omitempty"` Projectid string `json:"projectid,omitempty"` }
type SecurityGroupRule ¶
type ServiceOffering ¶
type ServiceOffering struct { Cpunumber int `json:"cpunumber,omitempty"` Cpuspeed int `json:"cpuspeed,omitempty"` Displaytext string `json:"displaytext,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Id string `json:"id,omitempty"` Iscustomized bool `json:"iscustomized,omitempty"` Issystem bool `json:"issystem,omitempty"` Isvolatile bool `json:"isvolatile,omitempty"` Memory int `json:"memory,omitempty"` Name string `json:"name,omitempty"` Networkrate int `json:"networkrate,omitempty"` Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"` }
type StandardResponse ¶
type StartVirtualMachineResponse ¶
type StartVirtualMachineResponse struct {
JobID string `json:"jobid,omitempty"`
}
type StopVirtualMachineResponse ¶
type StopVirtualMachineResponse struct {
JobID string `json:"jobid,omitempty"`
}
type Template ¶
type Template struct { Account string `json:"account,omitempty"` Accountid string `json:"accountid,omitempty"` Bootable bool `json:"bootable,omitempty"` Checksum string `json:"checksum,omitempty"` Created string `json:"created,omitempty"` CrossZones bool `json:"crossZones,omitempty"` Details map[string]string `json:"details,omitempty"` Displaytext string `json:"displaytext,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Format string `json:"format,omitempty"` Hostid string `json:"hostid,omitempty"` Hostname string `json:"hostname,omitempty"` Hypervisor string `json:"hypervisor,omitempty"` Id string `json:"id,omitempty"` Isdynamicallyscalable bool `json:"isdynamicallyscalable,omitempty"` Isextractable bool `json:"isextractable,omitempty"` Isfeatured bool `json:"isfeatured,omitempty"` Ispublic bool `json:"ispublic,omitempty"` Isready bool `json:"isready,omitempty"` Name string `json:"name,omitempty"` Ostypeid string `json:"ostypeid,omitempty"` Ostypename string `json:"ostypename,omitempty"` Passwordenabled bool `json:"passwordenabled,omitempty"` Project string `json:"project,omitempty"` Projectid string `json:"projectid,omitempty"` Removed string `json:"removed,omitempty"` Size int64 `json:"size,omitempty"` Sourcetemplateid string `json:"sourcetemplateid,omitempty"` Sshkeyenabled bool `json:"sshkeyenabled,omitempty"` Status string `json:"status,omitempty"` Zoneid string `json:"zoneid,omitempty"` Zonename string `json:"zonename,omitempty"` }
type VirtualMachine ¶
type VirtualMachine struct { Account string `json:"account,omitempty"` Cpunumber int `json:"cpunumber,omitempty"` Cpuspeed int `json:"cpuspeed,omitempty"` Cpuused string `json:"cpuused,omitempty"` Created string `json:"created,omitempty"` Details map[string]string `json:"details,omitempty"` Diskioread int64 `json:"diskioread,omitempty"` Diskiowrite int64 `json:"diskiowrite,omitempty"` Diskkbsread int64 `json:"diskkbsread,omitempty"` Diskkbswrite int64 `json:"diskkbswrite,omitempty"` Displayname string `json:"displayname,omitempty"` Displayvm bool `json:"displayvm,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Forvirtualnetwork bool `json:"forvirtualnetwork,omitempty"` Group string `json:"group,omitempty"` Groupid string `json:"groupid,omitempty"` Guestosid string `json:"guestosid,omitempty"` Haenable bool `json:"haenable,omitempty"` Hostid string `json:"hostid,omitempty"` Hostname string `json:"hostname,omitempty"` Hypervisor string `json:"hypervisor,omitempty"` Id string `json:"id,omitempty"` Instancename string `json:"instancename,omitempty"` Isdynamicallyscalable bool `json:"isdynamicallyscalable,omitempty"` Isodisplaytext string `json:"isodisplaytext,omitempty"` Isoid string `json:"isoid,omitempty"` Isoname string `json:"isoname,omitempty"` Keypair string `json:"keypair,omitempty"` Memory int `json:"memory,omitempty"` Name string `json:"name,omitempty"` Networkkbsread int64 `json:"networkkbsread,omitempty"` Networkkbswrite int64 `json:"networkkbswrite,omitempty"` Nic []struct { Broadcasturi string `json:"broadcasturi,omitempty"` Gateway string `json:"gateway,omitempty"` Id string `json:"id,omitempty"` Ip6address string `json:"ip6address,omitempty"` Ip6cidr string `json:"ip6cidr,omitempty"` Ip6gateway string `json:"ip6gateway,omitempty"` Ipaddress string `json:"ipaddress,omitempty"` Isdefault bool `json:"isdefault,omitempty"` Isolationuri string `json:"isolationuri,omitempty"` Macaddress string `json:"macaddress,omitempty"` Netmask string `json:"netmask,omitempty"` Networkid string `json:"networkid,omitempty"` Networkname string `json:"networkname,omitempty"` Secondaryip []string `json:"secondaryip,omitempty"` Traffictype string `json:"traffictype,omitempty"` Type string `json:"type,omitempty"` } `json:"nic,omitempty"` Password string `json:"password,omitempty"` Passwordenabled bool `json:"passwordenabled,omitempty"` Project string `json:"project,omitempty"` Projectid string `json:"projectid,omitempty"` Publicip string `json:"publicip,omitempty"` Publicipid string `json:"publicipid,omitempty"` Rootdeviceid int64 `json:"rootdeviceid,omitempty"` Rootdevicetype string `json:"rootdevicetype,omitempty"` Serviceofferingid string `json:"serviceofferingid,omitempty"` Serviceofferingname string `json:"serviceofferingname,omitempty"` Servicestate string `json:"servicestate,omitempty"` State string `json:"state,omitempty"` Templatedisplaytext string `json:"templatedisplaytext,omitempty"` Templateid string `json:"templateid,omitempty"` Templatename string `json:"templatename,omitempty"` Zoneid string `json:"zoneid,omitempty"` Zonename string `json:"zonename,omitempty"` }
type Zone ¶
type Zone struct { Allocationstate string `json:"allocationstate,omitempty"` Description string `json:"description,omitempty"` Displaytext string `json:"displaytext,omitempty"` Domain string `json:"domain,omitempty"` Domainid string `json:"domainid,omitempty"` Domainname string `json:"domainname,omitempty"` Id string `json:"id,omitempty"` Internaldns1 string `json:"internaldns1,omitempty"` Internaldns2 string `json:"internaldns2,omitempty"` Ip6dns1 string `json:"ip6dns1,omitempty"` Ip6dns2 string `json:"ip6dns2,omitempty"` Localstorageenabled bool `json:"localstorageenabled,omitempty"` Name string `json:"name,omitempty"` Networktype string `json:"networktype,omitempty"` Resourcedetails map[string]string `json:"resourcedetails,omitempty"` Securitygroupsenabled bool `json:"securitygroupsenabled,omitempty"` Vlan string `json:"vlan,omitempty"` Zonetoken string `json:"zonetoken,omitempty"` }