Documentation
¶
Index ¶
- type APIParameter
- type Account
- type ActivateProjectParameter
- type AddAccountToProjectParameter
- type AddBaremetalHostParameter
- type AddClusterParameter
- type AddHostParameter
- type AddImageStoreParameter
- type AddNicToVirtualMachineParameter
- type AddSecondaryStorageParameter
- type AffinityGroup
- type AffinityGroupType
- type AssignToLoadBalancerRuleParameter
- type AssignVirtualMachineParameter
- type AssociateIpAddressParameter
- type AsyncApiResponse
- type AsyncJobResult
- type AttachVolumeParameter
- type AuthorizeSecurityGroupEgressParameter
- type AuthorizeSecurityGroupIngressParameter
- type CancelHostMaintenanceParameter
- type CancelStorageMaintenanceParameter
- type Capacity
- type ChangeServiceForVirtualMachineParameter
- type CleanVMReservationsParameter
- type Client
- func (c *Client) ActivateProject(p *ActivateProjectParameter) (*Project, error)
- func (c *Client) AddAccountToProject(p *AddAccountToProjectParameter) (*Result, error)
- func (c *Client) AddBaremetalHost(p *AddBaremetalHostParameter) (*Host, error)
- func (c *Client) AddCluster(p *AddClusterParameter) (*Cluster, error)
- func (c *Client) AddHost(p *AddHostParameter) (*Host, error)
- func (c *Client) AddImageStore(p *AddImageStoreParameter) (*ImageStore, error)
- func (c *Client) AddNicToVirtualMachine(p *AddNicToVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) AddSecondaryStorage(p *AddSecondaryStorageParameter) (*ImageStore, error)
- func (c *Client) AssignToLoadBalancerRule(p *AssignToLoadBalancerRuleParameter) (*Result, error)
- func (c *Client) AssignVirtualMachine(p *AssignVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) AssociateIpAddress(p *AssociateIpAddressParameter) (*PublicIpAddress, error)
- func (c *Client) AsyncRequest(command string, params map[string]interface{}) (interface{}, error)
- func (c *Client) AsyncRequestJson(command string, params map[string]interface{}) (resp []byte, err error)
- func (c *Client) AttachVolume(p *AttachVolumeParameter) (*Volume, error)
- func (c *Client) AuthorizeSecurityGroupEgress(p *AuthorizeSecurityGroupEgressParameter) (*SecurityGroupEgress, error)
- func (c *Client) AuthorizeSecurityGroupIngress(p *AuthorizeSecurityGroupIngressParameter) (*SecurityGroupIngress, error)
- func (c *Client) CancelHostMaintenance(p *CancelHostMaintenanceParameter) (*Host, error)
- func (c *Client) CancelStorageMaintenance(p *CancelStorageMaintenanceParameter) (*StoragePool, error)
- func (c *Client) ChangeServiceForVirtualMachine(p *ChangeServiceForVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) CleanVMReservations(p *CleanVMReservationsParameter) (*Result, error)
- func (c *Client) CopyTemplate(p *CopyTemplateParameter) (*Template, error)
- func (c *Client) CreateAccount(p *CreateAccountParameter) (*Account, error)
- func (c *Client) CreateAffinityGroup(p *CreateAffinityGroupParameter) (*AffinityGroup, error)
- func (c *Client) CreateDiskOffering(p *CreateDiskOfferingParameter) (*DiskOffering, error)
- func (c *Client) CreateDomain(p *CreateDomainParameter) (*Domain, error)
- func (c *Client) CreateEgressFirewallRule(p *CreateEgressFirewallRuleParameter) (*FirewallRule, error)
- func (c *Client) CreateFirewallRule(p *CreateFirewallRuleParameter) (*FirewallRule, error)
- func (c *Client) CreateIpForwardingRule(p *CreateIpForwardingRuleParameter) (*IpForwardingRule, error)
- func (c *Client) CreateLoadBalancerRule(p *CreateLoadBalancerRuleParameter) (*LoadBalancerRule, error)
- func (c *Client) CreateNetwork(p *CreateNetworkParameter) (*Network, error)
- func (c *Client) CreateNetworkOffering(p *CreateNetworkOfferingParameter) (*NetworkOffering, error)
- func (c *Client) CreatePod(p *CreatePodParameter) (*Pod, error)
- func (c *Client) CreatePortForwardingRule(p *CreatePortForwardingRuleParameter) (*PortForwardingRule, error)
- func (c *Client) CreateProject(p *CreateProjectParameter) (*Project, error)
- func (c *Client) CreateSecondaryStagingStore(p *CreateSecondaryStagingStoreParameter) (*ImageStore, error)
- func (c *Client) CreateSecurityGroup(p *CreateSecurityGroupParameter) (*SecurityGroup, error)
- func (c *Client) CreateServiceOffering(p *CreateServiceOfferingParameter) (*ServiceOffering, error)
- func (c *Client) CreateStoragePool(p *CreateStoragePoolParameter) (*StoragePool, error)
- func (c *Client) CreateTags(p *CreateTagsParameter) (*Result, error)
- func (c *Client) CreateTemplate(p *CreateTemplateParameter) (*Template, error)
- func (c *Client) CreateUser(p *CreateUserParameter) (*User, error)
- func (c *Client) CreateVolume(p *CreateVolumeParameter) (*Volume, error)
- func (c *Client) CreateZone(p *CreateZoneParameter) (*Zone, error)
- func (c *Client) DedicateCluster(p *DedicateClusterParameter) (*DedicatedCluster, error)
- func (c *Client) DedicateHost(p *DedicateHostParameter) (*DedicatedHost, error)
- func (c *Client) DedicatePod(p *DedicatePodParameter) (*DedicatedPod, error)
- func (c *Client) DeleteAccount(p *DeleteAccountParameter) (*Result, error)
- func (c *Client) DeleteAccountFromProject(p *DeleteAccountFromProjectParameter) (*Result, error)
- func (c *Client) DeleteAffinityGroup(p *DeleteAffinityGroupParameter) (*Result, error)
- func (c *Client) DeleteCluster(p *DeleteClusterParameter) (*Result, error)
- func (c *Client) DeleteDiskOffering(p *DeleteDiskOfferingParameter) (*Result, error)
- func (c *Client) DeleteDomain(p *DeleteDomainParameter) (*Result, error)
- func (c *Client) DeleteEgressFirewallRule(p *DeleteEgressFirewallRuleParameter) (*Result, error)
- func (c *Client) DeleteFirewallRule(p *DeleteFirewallRuleParameter) (*Result, error)
- func (c *Client) DeleteHost(p *DeleteHostParameter) (*Result, error)
- func (c *Client) DeleteImageStore(p *DeleteImageStoreParameter) (*Result, error)
- func (c *Client) DeleteIpForwardingRule(p *DeleteIpForwardingRuleParameter) (*Result, error)
- func (c *Client) DeleteLoadBalancerRule(p *DeleteLoadBalancerRuleParameter) (*Result, error)
- func (c *Client) DeleteNetwork(p *DeleteNetworkParameter) (*Result, error)
- func (c *Client) DeleteNetworkOffering(p *DeleteNetworkOfferingParameter) (*Result, error)
- func (c *Client) DeletePod(p *DeletePodParameter) (*Result, error)
- func (c *Client) DeletePortForwardingRule(p *DeletePortForwardingRuleParameter) (*Result, error)
- func (c *Client) DeleteProject(p *DeleteProjectParameter) (*Result, error)
- func (c *Client) DeleteProjectInvitation(p *DeleteProjectInvitationParameter) (*Result, error)
- func (c *Client) DeleteSecondaryStagingStore(p *DeleteSecondaryStagingStoreParameter) (*Result, error)
- func (c *Client) DeleteSecurityGroup(p *DeleteSecurityGroupParameter) (*Result, error)
- func (c *Client) DeleteServiceOffering(p *DeleteServiceOfferingParameter) (*Result, error)
- func (c *Client) DeleteStoragePool(p *DeleteStoragePoolParameter) (*Result, error)
- func (c *Client) DeleteTags(p *DeleteTagsParameter) (*Result, error)
- func (c *Client) DeleteTemplate(p *DeleteTemplateParameter) (*Result, error)
- func (c *Client) DeleteUser(p *DeleteUserParameter) (*Result, error)
- func (c *Client) DeleteVolume(p *DeleteVolumeParameter) (*Result, error)
- func (c *Client) DeleteZone(p *DeleteZoneParameter) (*Result, error)
- func (c *Client) DeployVirtualMachine(p *DeployVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) DestroyVirtualMachine(p *DestroyVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) DetachVolume(p *DetachVolumeParameter) (*Volume, error)
- func (c *Client) DisableAccount(p *DisableAccountParameter) (*Account, error)
- func (c *Client) DisableStaticNat(p *DisableStaticNatParameter) (*Result, error)
- func (c *Client) DisableUser(p *DisableUserParameter) (*User, error)
- func (c *Client) DisassociateIpAddress(p *DisassociateIpAddressParameter) (*Result, error)
- func (c *Client) EnableAccount(p *EnableAccountParameter) (*Account, error)
- func (c *Client) EnableStaticNat(p *EnableStaticNatParameter) (*Result, error)
- func (c *Client) EnableStorageMaintenance(p *EnableStorageMaintenanceParameter) (*StoragePool, error)
- func (c *Client) EnableUser(p *EnableUserParameter) (*User, error)
- func (c *Client) ExpungeVirtualMachine(p *ExpungeVirtualMachineParameter) (*Result, error)
- func (c *Client) ExtractTemplate(p *ExtractTemplateParameter) (*Template, error)
- func (c *Client) ExtractVolume(p *ExtractVolumeParameter) (*Volume, error)
- func (c *Client) FindHostsForMigration(p *FindHostsForMigrationParameter) (*Host, error)
- func (c *Client) FindStoragePoolsForMigration(p *FindStoragePoolsForMigrationParameter) (*StoragePool, error)
- func (c *Client) GenerateQueryURL(command string, params map[string]interface{}) string
- func (c *Client) GetUser(p *GetUserParameter) (*User, error)
- func (c *Client) GetVMPassword(p *GetVMPasswordParameter) (*VMPassword, error)
- func (c *Client) GetVirtualMachine(id string) (*VirtualMachine, error)
- func (c *Client) GetVirtualMachineUserData(p *GetVirtualMachineUserDataParameter) (*VirtualMachineUserData, error)
- func (c *Client) ImportLdapUsers(p *ImportLdapUsersParameter) (*LdapUser, error)
- func (c *Client) ListAccounts(p *ListAccountsParameter) ([]*Account, error)
- func (c *Client) ListAffinityGroupTypes(p *ListAffinityGroupTypesParameter) ([]*AffinityGroupType, error)
- func (c *Client) ListAffinityGroups(p *ListAffinityGroupsParameter) ([]*AffinityGroup, error)
- func (c *Client) ListClusters(p *ListClustersParameter) ([]*Cluster, error)
- func (c *Client) ListDedicatedClusters(p *ListDedicatedClustersParameter) ([]*DedicatedCluster, error)
- func (c *Client) ListDedicatedHosts(p *ListDedicatedHostsParameter) ([]*DedicatedHost, error)
- func (c *Client) ListDedicatedPods(p *ListDedicatedPodsParameter) ([]*DedicatedPod, error)
- func (c *Client) ListDiskOfferings(p *ListDiskOfferingsParameter) ([]*DiskOffering, error)
- func (c *Client) ListDomainChildren(p *ListDomainChildrenParameter) ([]*Domain, error)
- func (c *Client) ListDomains(p *ListDomainsParameter) ([]*Domain, error)
- func (c *Client) ListEgressFirewallRules(p *ListEgressFirewallRulesParameter) ([]*FirewallRule, error)
- func (c *Client) ListFirewallRules(p *ListFirewallRulesParameter) ([]*FirewallRule, error)
- func (c *Client) ListHostTags(p *ListHostTagsParameter) ([]*HostTag, error)
- func (c *Client) ListHosts(p *ListHostsParameter) ([]*Host, error)
- func (c *Client) ListImageStores(p *ListImageStoresParameter) ([]*ImageStore, error)
- func (c *Client) ListIpForwardingRules(p *ListIpForwardingRulesParameter) ([]*IpForwardingRule, error)
- func (c *Client) ListLdapUsers(p *ListLdapUsersParameter) ([]*LdapUser, error)
- func (c *Client) ListLoadBalancerRuleInstances(p *ListLoadBalancerRuleInstancesParameter) ([]*LoadBalancerRuleInstance, error)
- func (c *Client) ListLoadBalancerRules(p *ListLoadBalancerRulesParameter) ([]*LoadBalancerRule, error)
- func (c *Client) ListNetworkOfferings(p *ListNetworkOfferingsParameter) ([]*NetworkOffering, error)
- func (c *Client) ListNetworks(p *ListNetworksParameter) ([]*Network, error)
- func (c *Client) ListPods(p *ListPodsParameter) ([]*Pod, error)
- func (c *Client) ListPortForwardingRules(p *ListPortForwardingRulesParameter) ([]*PortForwardingRule, error)
- func (c *Client) ListProjectAccounts(p *ListProjectAccountsParameter) ([]*ProjectAccount, error)
- func (c *Client) ListProjectInvitations(p *ListProjectInvitationsParameter) ([]*ProjectInvitation, error)
- func (c *Client) ListProjects(p *ListProjectsParameter) ([]*Project, error)
- func (c *Client) ListPublicIpAddresses(p *ListPublicIpAddressesParameter) ([]*PublicIpAddress, error)
- func (c *Client) ListSecondaryStagingStores(p *ListSecondaryStagingStoresParameter) ([]*ImageStore, error)
- func (c *Client) ListSecurityGroups(p *ListSecurityGroupsParameter) ([]*SecurityGroup, error)
- func (c *Client) ListServiceOfferings(p *ListServiceOfferingsParameter) ([]*ServiceOffering, error)
- func (c *Client) ListStoragePools(p *ListStoragePoolsParameter) ([]*StoragePool, error)
- func (c *Client) ListStorageProviders(p *ListStorageProvidersParameter) ([]*StorageProvider, error)
- func (c *Client) ListStorageTags(p *ListStorageTagsParameter) ([]*StorageTag, error)
- func (c *Client) ListTags(p *ListTagsParameter) ([]*Tag, error)
- func (c *Client) ListTemplatePermissions(p *ListTemplatePermissionsParameter) (*TemplatePermission, error)
- func (c *Client) ListTemplates(p *ListTemplatesParameter) ([]*Template, error)
- func (c *Client) ListUsers(p *ListUsersParameter) ([]*User, error)
- func (c *Client) ListVirtualMachines(p *ListVirtualMachinesParameter) ([]*VirtualMachine, error)
- func (c *Client) ListVolumes(p *ListVolumesParameter) ([]*Volume, error)
- func (c *Client) ListZones(p *ListZonesParameter) ([]*Zone, error)
- func (c *Client) LockAccount(p *LockAccountParameter) (*Account, error)
- func (c *Client) LockUser(p *LockUserParameter) (*User, error)
- func (c *Client) LogIn() (err error)
- func (c *Client) LogOut() error
- func (c *Client) MarkDefaultZoneForAccount(p *MarkDefaultZoneForAccountParameter) (*Account, error)
- func (c *Client) MigrateVirtualMachine(p *MigrateVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) MigrateVirtualMachineWithVolume(p *MigrateVirtualMachineWithVolumeParameter) (*VirtualMachine, error)
- func (c *Client) MigrateVolume(p *MigrateVolumeParameter) (*Volume, error)
- func (c *Client) PrepareHostForMaintenance(p *PrepareHostForMaintenanceParameter) (*Host, error)
- func (c *Client) PrepareTemplate(p *PrepareTemplateParameter) (*Template, error)
- func (c *Client) QueryAsyncJobResult(jobid string) (job *AsyncJobResult, err error)
- func (c *Client) RebootVirtualMachine(p *RebootVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) ReconnectHost(p *ReconnectHostParameter) (*Host, error)
- func (c *Client) RecoverVirtualMachine(p *RecoverVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) RegisterTemplate(p *RegisterTemplateParameter) (*Template, error)
- func (c *Client) RegisterUserKeys(p *RegisterUserKeysParameter) (*UserKeys, error)
- func (c *Client) ReleaseDedicatedCluster(p *ReleaseDedicatedClusterParameter) (*Result, error)
- func (c *Client) ReleaseDedicatedHost(p *ReleaseDedicatedHostParameter) (*Result, error)
- func (c *Client) ReleaseDedicatedPod(p *ReleaseDedicatedPodParameter) (*Result, error)
- func (c *Client) ReleaseHostReservation(p *ReleaseHostReservationParameter) (*Result, error)
- func (c *Client) RemoveFromLoadBalancerRule(p *RemoveFromLoadBalancerRuleParameter) (*Result, error)
- func (c *Client) RemoveNicFromVirtualMachine(p *RemoveNicFromVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) Request(command string, params map[string]interface{}) (interface{}, error)
- func (c *Client) RequestJson(command string, params map[string]interface{}) ([]byte, error)
- func (c *Client) ResetPasswordForVirtualMachine(p *ResetPasswordForVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) ResizeVolume(p *ResizeVolumeParameter) (*Volume, error)
- func (c *Client) RestartNetwork(p *RestartNetworkParameter) (*Network, error)
- func (c *Client) RestoreVirtualMachine(p *RestoreVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) RevokeSecurityGroupEgress(p *RevokeSecurityGroupEgressParameter) (*Result, error)
- func (c *Client) RevokeSecurityGroupIngress(p *RevokeSecurityGroupIngressParameter) (*Result, error)
- func (c *Client) ScaleVirtualMachine(p *ScaleVirtualMachineParameter) (*Result, error)
- func (c *Client) StartVirtualMachine(p *StartVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) StopVirtualMachine(p *StopVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) SuspendProject(p *SuspendProjectParameter) (*Project, error)
- func (c *Client) UpdateAccount(p *UpdateAccountParameter) (*Account, error)
- func (c *Client) UpdateCloudToUseObjectStore(p *UpdateCloudToUseObjectStoreParameter) (*ImageStore, error)
- func (c *Client) UpdateCluster(p *UpdateClusterParameter) (*Cluster, error)
- func (c *Client) UpdateDefaultNicForVirtualMachine(p *UpdateDefaultNicForVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) UpdateDiskOffering(p *UpdateDiskOfferingParameter) (*DiskOffering, error)
- func (c *Client) UpdateDomain(p *UpdateDomainParameter) (*Domain, error)
- func (c *Client) UpdateEgressFirewallRule(p *UpdateEgressFirewallRuleParameter) (*FirewallRule, error)
- func (c *Client) UpdateFirewallRule(p *UpdateFirewallRuleParameter) (*FirewallRule, error)
- func (c *Client) UpdateHost(p *UpdateHostParameter) (*Host, error)
- func (c *Client) UpdateHostPassword(p *UpdateHostPasswordParameter) (*Result, error)
- func (c *Client) UpdateIpAddress(p *UpdateIpAddressParameter) (*PublicIpAddress, error)
- func (c *Client) UpdateLoadBalancerRule(p *UpdateLoadBalancerRuleParameter) (*LoadBalancerRule, error)
- func (c *Client) UpdateNetwork(p *UpdateNetworkParameter) (*Network, error)
- func (c *Client) UpdateNetworkOffering(p *UpdateNetworkOfferingParameter) (*NetworkOffering, error)
- func (c *Client) UpdatePod(p *UpdatePodParameter) (*Pod, error)
- func (c *Client) UpdatePortForwardingRule(p *UpdatePortForwardingRuleParameter) (*PortForwardingRule, error)
- func (c *Client) UpdateProject(p *UpdateProjectParameter) (*Project, error)
- func (c *Client) UpdateProjectInvitation(p *UpdateProjectInvitationParameter) (*Result, error)
- func (c *Client) UpdateServiceOffering(p *UpdateServiceOfferingParameter) (*ServiceOffering, error)
- func (c *Client) UpdateStoragePool(p *UpdateStoragePoolParameter) (*StoragePool, error)
- func (c *Client) UpdateTemplate(p *UpdateTemplateParameter) (*Template, error)
- func (c *Client) UpdateTemplatePermissions(p *UpdateTemplatePermissionsParameter) (*Result, error)
- func (c *Client) UpdateUser(p *UpdateUserParameter) (*User, error)
- func (c *Client) UpdateVMAffinityGroup(p *UpdateVMAffinityGroupParameter) (*VirtualMachine, error)
- func (c *Client) UpdateVirtualMachine(p *UpdateVirtualMachineParameter) (*VirtualMachine, error)
- func (c *Client) UpdateVolume(p *UpdateVolumeParameter) (*Volume, error)
- func (c *Client) UpdateZone(p *UpdateZoneParameter) (*Zone, error)
- func (c *Client) UploadVolume(p *UploadVolumeParameter) (*Volume, error)
- func (c *Client) Wait(jobid string) (job *AsyncJobResult, err error)
- type Cluster
- type Command
- type CopyTemplateParameter
- type CreateAccountParameter
- type CreateAffinityGroupParameter
- type CreateDiskOfferingParameter
- type CreateDomainParameter
- type CreateEgressFirewallRuleParameter
- type CreateFirewallRuleParameter
- type CreateIpForwardingRuleParameter
- type CreateLoadBalancerRuleParameter
- type CreateNetworkOfferingParameter
- type CreateNetworkParameter
- type CreatePodParameter
- type CreatePortForwardingRuleParameter
- type CreateProjectParameter
- type CreateSecondaryStagingStoreParameter
- type CreateSecurityGroupParameter
- type CreateServiceOfferingParameter
- type CreateStoragePoolParameter
- type CreateTagsParameter
- type CreateTemplateParameter
- type CreateUserParameter
- type CreateVolumeParameter
- type CreateZoneParameter
- type DedicateClusterParameter
- type DedicateHostParameter
- type DedicatePodParameter
- type DedicatedCluster
- type DedicatedHost
- type DedicatedPod
- type DeleteAccountFromProjectParameter
- type DeleteAccountParameter
- type DeleteAffinityGroupParameter
- type DeleteClusterParameter
- type DeleteDiskOfferingParameter
- type DeleteDomainParameter
- type DeleteEgressFirewallRuleParameter
- type DeleteFirewallRuleParameter
- type DeleteHostParameter
- type DeleteImageStoreParameter
- type DeleteIpForwardingRuleParameter
- type DeleteLoadBalancerRuleParameter
- type DeleteNetworkOfferingParameter
- type DeleteNetworkParameter
- type DeletePodParameter
- type DeletePortForwardingRuleParameter
- type DeleteProjectInvitationParameter
- type DeleteProjectParameter
- type DeleteSecondaryStagingStoreParameter
- type DeleteSecurityGroupParameter
- type DeleteServiceOfferingParameter
- type DeleteStoragePoolParameter
- type DeleteTagsParameter
- type DeleteTemplateParameter
- type DeleteUserParameter
- type DeleteVolumeParameter
- type DeleteZoneParameter
- type DeployVirtualMachineParameter
- type DestroyVirtualMachineParameter
- type DetachVolumeParameter
- type DisableAccountParameter
- type DisableStaticNatParameter
- type DisableUserParameter
- type DisassociateIpAddressParameter
- type DiskOffering
- type Domain
- type EnableAccountParameter
- type EnableStaticNatParameter
- type EnableStorageMaintenanceParameter
- type EnableUserParameter
- type ExpungeVirtualMachineParameter
- type ExtractTemplateParameter
- type ExtractVolumeParameter
- type FindHostsForMigrationParameter
- type FindStoragePoolsForMigrationParameter
- type FirewallRule
- type GetUserParameter
- type GetVMPasswordParameter
- type GetVirtualMachineUserDataParameter
- type GpuGroup
- type Host
- type HostTag
- type ID
- type ImageStore
- type ImportLdapUsersParameter
- type IpForwardingRule
- type Keypair
- type LdapUser
- type ListAccountsParameter
- type ListAffinityGroupTypesParameter
- type ListAffinityGroupsParameter
- type ListClustersParameter
- type ListDedicatedClustersParameter
- type ListDedicatedHostsParameter
- type ListDedicatedPodsParameter
- type ListDiskOfferingsParameter
- type ListDomainChildrenParameter
- type ListDomainsParameter
- type ListEgressFirewallRulesParameter
- type ListFirewallRulesParameter
- type ListHostTagsParameter
- type ListHostsParameter
- type ListImageStoresParameter
- type ListIpForwardingRulesParameter
- type ListLdapUsersParameter
- type ListLoadBalancerRuleInstancesParameter
- type ListLoadBalancerRulesParameter
- type ListNetworkOfferingsParameter
- type ListNetworksParameter
- type ListPodsParameter
- type ListPortForwardingRulesParameter
- type ListProjectAccountsParameter
- type ListProjectInvitationsParameter
- type ListProjectsParameter
- type ListPublicIpAddressesParameter
- type ListSecondaryStagingStoresParameter
- type ListSecurityGroupsParameter
- type ListServiceOfferingsParameter
- type ListStoragePoolsParameter
- type ListStorageProvidersParameter
- type ListStorageTagsParameter
- type ListTagsParameter
- type ListTemplatePermissionsParameter
- type ListTemplatesParameter
- type ListUsersParameter
- type ListVirtualMachinesParameter
- type ListVolumesParameter
- type ListZonesParameter
- type LoadBalancerRule
- type LoadBalancerRuleInstance
- type LockAccountParameter
- type LockUserParameter
- type LogInResponse
- type LogOutResponse
- type MarkDefaultZoneForAccountParameter
- type MigrateVirtualMachineParameter
- type MigrateVirtualMachineWithVolumeParameter
- type MigrateVolumeParameter
- type Network
- type NetworkOffering
- type NetworkService
- type NetworkServiceCapability
- type NetworkServiceProvider
- type Nic
- type NullBase
- type NullBool
- type NullNumber
- type NullString
- type Nullable
- type Pod
- type PortForwardingRule
- type PrepareHostForMaintenanceParameter
- type PrepareTemplateParameter
- type Project
- type ProjectAccount
- type ProjectInvitation
- type PublicIpAddress
- type RebootVirtualMachineParameter
- type ReconnectHostParameter
- type RecoverVirtualMachineParameter
- type RegisterTemplateParameter
- type RegisterUserKeysParameter
- type ReleaseDedicatedClusterParameter
- type ReleaseDedicatedHostParameter
- type ReleaseDedicatedPodParameter
- type ReleaseHostReservationParameter
- type RemoveFromLoadBalancerRuleParameter
- type RemoveNicFromVirtualMachineParameter
- type ResetPasswordForVirtualMachineParameter
- type ResizeVolumeParameter
- type Resource
- type ResourceBase
- type RestartNetworkParameter
- type RestoreVirtualMachineParameter
- type Result
- type RevokeSecurityGroupEgressParameter
- type RevokeSecurityGroupIngressParameter
- type ScaleVirtualMachineParameter
- type SecurityGroup
- type SecurityGroupEgress
- type SecurityGroupIngress
- type ServiceOffering
- type Setter
- type StartVirtualMachineParameter
- type StopVirtualMachineParameter
- type StoragePool
- type StorageProvider
- type StorageTag
- type SuspendProjectParameter
- type Tag
- type Template
- type TemplatePermission
- type UpdateAccountParameter
- type UpdateCloudToUseObjectStoreParameter
- type UpdateClusterParameter
- type UpdateDefaultNicForVirtualMachineParameter
- type UpdateDiskOfferingParameter
- type UpdateDomainParameter
- type UpdateEgressFirewallRuleParameter
- type UpdateFirewallRuleParameter
- type UpdateHostParameter
- type UpdateHostPasswordParameter
- type UpdateIpAddressParameter
- type UpdateLoadBalancerRuleParameter
- type UpdateNetworkOfferingParameter
- type UpdateNetworkParameter
- type UpdatePodParameter
- type UpdatePortForwardingRuleParameter
- type UpdateProjectInvitationParameter
- type UpdateProjectParameter
- type UpdateServiceOfferingParameter
- type UpdateStoragePoolParameter
- type UpdateTemplateParameter
- type UpdateTemplatePermissionsParameter
- type UpdateUserParameter
- type UpdateVMAffinityGroupParameter
- type UpdateVirtualMachineParameter
- type UpdateVolumeParameter
- type UpdateZoneParameter
- type UploadVolumeParameter
- type User
- type UserKeys
- type VMPassword
- type VirtualMachine
- type VirtualMachineUserData
- type Volume
- type Zone
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIParameter ¶
type APIParameter interface{}
type Account ¶
type Account struct {
ResourceBase
// details for the account
AccountDetails map[string]string `json:"accountdetails"`
// account type (admin, domain-admin, user)
AccountType NullNumber `json:"accounttype"`
// the total number of cpu cores available to be created for this account
CpuAvailable NullString `json:"cpuavailable"`
// the total number of cpu cores the account can own
CpuLimit NullString `json:"cpulimit"`
// the total number of cpu cores owned by account
CpuTotal NullNumber `json:"cputotal"`
// the default zone of the account
DefaultZoneId ID `json:"defaultzoneid"`
// name of the Domain the account belongs too
Domain NullString `json:"domain"`
// id of the Domain the account belongs too
DomainId ID `json:"domainid"`
// the list of acl groups that account belongs to
Groups []NullString `json:"groups"`
// the id of the account
Id ID `json:"id"`
// the total number of public ip addresses available for this account to acquire
IpAvailable NullString `json:"ipavailable"`
// the total number of public ip addresses this account can acquire
IpLimit NullString `json:"iplimit"`
// the total number of public ip addresses allocated for this account
IpTotal NullNumber `json:"iptotal"`
// true if the account requires cleanup
IsCleanupRequired NullBool `json:"iscleanuprequired"`
// true if account is default, false otherwise
IsDefault NullBool `json:"isdefault"`
// the total memory (in MB) available to be created for this account
MemoryAvailable NullString `json:"memoryavailable"`
// the total memory (in MB) the account can own
MemoryLimit NullString `json:"memorylimit"`
// the total memory (in MB) owned by account
MemoryTotal NullNumber `json:"memorytotal"`
// the name of the account
Name NullString `json:"name"`
// the total number of networks available to be created for this account
NetworkAvailable NullString `json:"networkavailable"`
// the network domain
NetworkDomain NullString `json:"networkdomain"`
// the total number of networks the account can own
NetworkLimit NullString `json:"networklimit"`
// the total number of networks owned by account
NetworkTotal NullNumber `json:"networktotal"`
// the total primary storage space (in GiB) available to be used for this
// account
PrimaryStorageAvailable NullString `json:"primarystorageavailable"`
// the total primary storage space (in GiB) the account can own
PrimaryStorageLimit NullString `json:"primarystoragelimit"`
// the total primary storage space (in GiB) owned by account
PrimaryStorageTotal NullNumber `json:"primarystoragetotal"`
// the total number of projects available for administration by this account
ProjectAvailable NullString `json:"projectavailable"`
// the total number of projects the account can own
ProjectLimit NullString `json:"projectlimit"`
// the total number of projects being administrated by this account
ProjectTotal NullNumber `json:"projecttotal"`
// the total number of network traffic bytes received
ReceivedBytes NullNumber `json:"receivedbytes"`
// the total secondary storage space (in GiB) available to be used for this
// account
SecondaryStorageAvailable NullString `json:"secondarystorageavailable"`
// the total secondary storage space (in GiB) the account can own
SecondaryStorageLimit NullString `json:"secondarystoragelimit"`
// the total secondary storage space (in GiB) owned by account
SecondaryStorageTotal NullNumber `json:"secondarystoragetotal"`
// the total number of network traffic bytes sent
SentBytes NullNumber `json:"sentbytes"`
// the total number of snapshots available for this account
SnapshotAvailable NullString `json:"snapshotavailable"`
// the total number of snapshots which can be stored by this account
SnapshotLimit NullString `json:"snapshotlimit"`
// the total number of snapshots stored by this account
SnapshotTotal NullNumber `json:"snapshottotal"`
// the state of the account
State NullString `json:"state"`
// the total number of templates available to be created by this account
TemplateAvailable NullString `json:"templateavailable"`
// the total number of templates which can be created by this account
TemplateLimit NullString `json:"templatelimit"`
// the total number of templates which have been created by this account
TemplateTotal NullNumber `json:"templatetotal"`
// the list of users associated with account
User []User `json:"user"`
// the total number of virtual machines available for this account to acquire
VmAvailable NullString `json:"vmavailable"`
// the total number of virtual machines that can be deployed by this account
VmLimit NullString `json:"vmlimit"`
// the total number of virtual machines running for this account
VmRunning NullNumber `json:"vmrunning"`
// the total number of virtual machines stopped for this account
VmStopped NullNumber `json:"vmstopped"`
// the total number of virtual machines deployed by this account
VmTotal NullNumber `json:"vmtotal"`
// the total volume available for this account
VolumeAvailable NullString `json:"volumeavailable"`
// the total volume which can be used by this account
VolumeLimit NullString `json:"volumelimit"`
// the total volume being used by this account
VolumeTotal NullNumber `json:"volumetotal"`
// the total number of vpcs available to be created for this account
VpcAvailable NullString `json:"vpcavailable"`
// the total number of vpcs the account can own
VpcLimit NullString `json:"vpclimit"`
// the total number of vpcs owned by account
VpcTotal NullNumber `json:"vpctotal"`
}
type ActivateProjectParameter ¶
type ActivateProjectParameter struct {
// id of the project to be modified
Id ID
}
ActivateProject represents the paramter of ActivateProject
func NewActivateProjectParameter ¶
func NewActivateProjectParameter(id string) (p *ActivateProjectParameter)
type AddAccountToProjectParameter ¶
type AddAccountToProjectParameter struct {
// name of the account to be added to the project
Account NullString
// email to which invitation to the project is going to be sent
Email NullString
// id of the project to add the account to
ProjectId ID
}
AddAccountToProject represents the paramter of AddAccountToProject
func NewAddAccountToProjectParameter ¶
func NewAddAccountToProjectParameter(projectid string) (p *AddAccountToProjectParameter)
type AddBaremetalHostParameter ¶
type AddBaremetalHostParameter struct {
// Allocation state of this Host for allocation of new resources
AllocationState NullString
// the cluster ID for the host
ClusterId ID
// the cluster name for the host
ClusterName NullString
// list of tags to be added to the host
HostTags []string
// hypervisor type of the host
Hypervisor NullString
// ip address intentionally allocated to this host after provisioning
IpAddress NullString
// the password for the host
Password NullString
// the Pod ID for the host
PodId ID
// the host URL
Url NullString
// the username for the host
UserName NullString
// the Zone ID for the host
ZoneId ID
}
AddBaremetalHost represents the paramter of AddBaremetalHost
type AddClusterParameter ¶
type AddClusterParameter struct {
// Allocation state of this cluster for allocation of new resources
AllocationState NullString
// the cluster name
ClusterName NullString
// type of the cluster: CloudManaged, ExternalManaged
ClusterType NullString
// Name of virtual switch used for guest traffic in the cluster. This would
// override zone wide traffic label setting.
GuestVswitchName NullString
// Type of virtual switch used for guest traffic in the cluster. Allowed values
// are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware
// distributed vSwitch)
GuestVswitchType NullString
// hypervisor type of the cluster:
// XenServer,KVM,VMware,Hyperv,BareMetal,Simulator
Hypervisor NullString
// the password for the host
Password NullString
// the Pod ID for the host
PodId ID
// Name of virtual switch used for public traffic in the cluster. This would
// override zone wide traffic label setting.
PublicVswitchName NullString
// Type of virtual switch used for public traffic in the cluster. Allowed values
// are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware
// distributed vSwitch)
PublicVswitchType NullString
// the URL
Url NullString
// the username for the cluster
UserName NullString
// the ipaddress of the VSM associated with this cluster
VsmIpAddress NullString
// the password for the VSM associated with this cluster
VsmPassword NullString
// the username for the VSM associated with this cluster
VsmUserName NullString
// the Zone ID for the cluster
ZoneId ID
}
AddCluster represents the paramter of AddCluster
func NewAddClusterParameter ¶
type AddHostParameter ¶
type AddHostParameter struct {
// Allocation state of this Host for allocation of new resources
AllocationState NullString
// the cluster ID for the host
ClusterId ID
// the cluster name for the host
ClusterName NullString
// list of tags to be added to the host
HostTags []string
// hypervisor type of the host
Hypervisor NullString
// the password for the host
Password NullString
// the Pod ID for the host
PodId ID
// the host URL
Url NullString
// the username for the host
UserName NullString
// the Zone ID for the host
ZoneId ID
}
AddHost represents the paramter of AddHost
func NewAddHostParameter ¶
type AddImageStoreParameter ¶
type AddImageStoreParameter struct {
// the details for the image store. Example:
// details[0].key=accesskey&details[0].value=s389ddssaa&details[1].key=secretkey&details[1].value=8dshfsss
Details map[string]string
// the name for the image store
Name NullString
// the image store provider name
Provider NullString
// the URL for the image store
Url NullString
// the Zone ID for the image store
ZoneId ID
}
AddImageStore represents the paramter of AddImageStore
func NewAddImageStoreParameter ¶
func NewAddImageStoreParameter(provider string) (p *AddImageStoreParameter)
type AddNicToVirtualMachineParameter ¶
type AddNicToVirtualMachineParameter struct {
// IP Address for the new network
IpAddress NullString
// Network ID
NetworkId ID
// Virtual Machine ID
VirtualMachineId ID
}
AddNicToVirtualMachine represents the paramter of AddNicToVirtualMachine
func NewAddNicToVirtualMachineParameter ¶
func NewAddNicToVirtualMachineParameter(networkid string, virtualmachineid string) (p *AddNicToVirtualMachineParameter)
type AddSecondaryStorageParameter ¶
type AddSecondaryStorageParameter struct {
// the URL for the secondary storage
Url NullString
// the Zone ID for the secondary storage
ZoneId ID
}
AddSecondaryStorage represents the paramter of AddSecondaryStorage
func NewAddSecondaryStorageParameter ¶
func NewAddSecondaryStorageParameter(url string) (p *AddSecondaryStorageParameter)
type AffinityGroup ¶
type AffinityGroup struct {
ResourceBase
// the account owning the affinity group
Account NullString `json:"account"`
// the description of the affinity group
Description NullString `json:"description"`
// the domain name of the affinity group
Domain NullString `json:"domain"`
// the domain ID of the affinity group
DomainId ID `json:"domainid"`
// the ID of the affinity group
Id ID `json:"id"`
// the name of the affinity group
Name NullString `json:"name"`
// the type of the affinity group
Type NullString `json:"type"`
// virtual machine Ids associated with this affinity group
VirtualMachineIds []ID `json:"virtualmachineids"`
}
type AffinityGroupType ¶
type AffinityGroupType struct {
ResourceBase
// the type of the affinity group
Type NullString `json:"type"`
}
type AssignToLoadBalancerRuleParameter ¶
type AssignToLoadBalancerRuleParameter struct {
// the ID of the load balancer rule
Id ID
// the list of IDs of the virtual machine that are being assigned to the load
// balancer rule(i.e. virtualMachineIds=1,2,3)
VirtualMachineIds []string
// VM ID and IP map, vmidipmap[0].vmid=1 vmidipmap[0].ip=10.1.1.75
VmIdIpmap map[string]string
}
AssignToLoadBalancerRule represents the paramter of AssignToLoadBalancerRule
func NewAssignToLoadBalancerRuleParameter ¶
func NewAssignToLoadBalancerRuleParameter(id string) (p *AssignToLoadBalancerRuleParameter)
type AssignVirtualMachineParameter ¶
type AssignVirtualMachineParameter struct {
// account name of the new VM owner.
Account NullString
// domain id of the new VM owner.
DomainId ID
// list of new network ids in which the moved VM will participate. In case no
// network ids are provided the VM will be part of the default network for that
// zone. In case there is no network yet created for the new account the default
// network will be created.
NetworkIds []string
// list of security group ids to be applied on the virtual machine. In case no
// security groups are provided the VM is part of the default security group.
SecurityGroupIds []string
// id of the VM to be moved
VirtualMachineId ID
}
AssignVirtualMachine represents the paramter of AssignVirtualMachine
func NewAssignVirtualMachineParameter ¶
func NewAssignVirtualMachineParameter(account string, domainid string, virtualmachineid string) (p *AssignVirtualMachineParameter)
type AssociateIpAddressParameter ¶
type AssociateIpAddressParameter struct {
// the account to associate with this IP address
Account NullString
// the ID of the domain to associate with this IP address
DomainId ID
// an optional field, whether to the display the ip to the end user or not
ForDisplay NullBool
// should be set to true if public IP is required to be transferable across
// zones, if not specified defaults to false
IsPortable NullBool
// The network this ip address should be associated to.
NetworkId ID
// Deploy vm for the project
ProjectId ID
// region ID from where portable ip is to be associated.
RegionId ID
// the VPC you want the ip address to be associated with
VpcId ID
// the ID of the availability zone you want to acquire an public IP address from
ZoneId ID
}
AssociateIpAddress represents the paramter of AssociateIpAddress
func NewAssociateIpAddressParameter ¶
func NewAssociateIpAddressParameter() (p *AssociateIpAddressParameter)
type AsyncApiResponse ¶
type AsyncJobResult ¶
type AsyncJobResult struct {
AccountId NullString `json:"accountid"`
Cmd NullString `json:"cmd"`
Created NullString `json:"created"`
JobId ID `json:"jobid"`
JobInstanceId ID `json:"jobinstanceid"`
JobInstanceType NullString `json:"jobinstancetype"`
JobProcsSatus NullNumber `json:"jobprocstatus"`
JobResult json.RawMessage `json:"jobresult"`
JobResultCode NullNumber `json:"jobresultcode"`
JobResultType NullString `json:"jobresulttype"`
JobStatus NullNumber `json:"jobstatus"`
UserId ID `json:"userid"`
}
type AttachVolumeParameter ¶
type AttachVolumeParameter struct {
// the ID of the device to map the volume to within the guest OS. If no deviceId
// is passed in, the next available deviceId will be chosen. Possible values for
// a Linux OS are:* 0 - /dev/xvda* 1 - /dev/xvdb* 2 - /dev/xvdc* 4 - /dev/xvde*
// 5 - /dev/xvdf* 6 - /dev/xvdg* 7 - /dev/xvdh* 8 - /dev/xvdi* 9 - /dev/xvdj
DeviceId ID
// the ID of the disk volume
Id ID
// the ID of the virtual machine
VirtualMachineId ID
}
AttachVolume represents the paramter of AttachVolume
func NewAttachVolumeParameter ¶
func NewAttachVolumeParameter(id string, virtualmachineid string) (p *AttachVolumeParameter)
type AuthorizeSecurityGroupEgressParameter ¶
type AuthorizeSecurityGroupEgressParameter struct {
// an optional account for the security group. Must be used with domainId.
Account NullString
// the cidr list associated
CidrList []string
// an optional domainId for the security group. If the account parameter is
// used, domainId must also be used.
DomainId ID
// end port for this egress rule
EndPort NullNumber
// error code for this icmp message
IcmpCode NullNumber
// type of the icmp message being sent
IcmpType NullNumber
// an optional project of the security group
ProjectId ID
// TCP is default. UDP is the other supported protocol
Protocol NullString
// The ID of the security group. Mutually exclusive with securityGroupName
// parameter
SecurityGroupId ID
// The name of the security group. Mutually exclusive with securityGroupName
// parameter
SecurityGroupName NullString
// start port for this egress rule
StartPort NullNumber
// user to security group mapping
UserSecurityGroupList map[string]string
}
AuthorizeSecurityGroupEgress represents the paramter of AuthorizeSecurityGroupEgress
func NewAuthorizeSecurityGroupEgressParameter ¶
func NewAuthorizeSecurityGroupEgressParameter() (p *AuthorizeSecurityGroupEgressParameter)
type AuthorizeSecurityGroupIngressParameter ¶
type AuthorizeSecurityGroupIngressParameter struct {
// an optional account for the security group. Must be used with domainId.
Account NullString
// the cidr list associated
CidrList []string
// an optional domainId for the security group. If the account parameter is
// used, domainId must also be used.
DomainId ID
// end port for this ingress rule
EndPort NullNumber
// error code for this icmp message
IcmpCode NullNumber
// type of the icmp message being sent
IcmpType NullNumber
// an optional project of the security group
ProjectId ID
// TCP is default. UDP is the other supported protocol
Protocol NullString
// The ID of the security group. Mutually exclusive with securityGroupName
// parameter
SecurityGroupId ID
// The name of the security group. Mutually exclusive with securityGroupName
// parameter
SecurityGroupName NullString
// start port for this ingress rule
StartPort NullNumber
// user to security group mapping
UserSecurityGroupList map[string]string
}
AuthorizeSecurityGroupIngress represents the paramter of AuthorizeSecurityGroupIngress
func NewAuthorizeSecurityGroupIngressParameter ¶
func NewAuthorizeSecurityGroupIngressParameter() (p *AuthorizeSecurityGroupIngressParameter)
type CancelHostMaintenanceParameter ¶
type CancelHostMaintenanceParameter struct {
// the host ID
Id ID
}
CancelHostMaintenance represents the paramter of CancelHostMaintenance
func NewCancelHostMaintenanceParameter ¶
func NewCancelHostMaintenanceParameter(id string) (p *CancelHostMaintenanceParameter)
type CancelStorageMaintenanceParameter ¶
type CancelStorageMaintenanceParameter struct {
// the primary storage ID
Id ID
}
CancelStorageMaintenance represents the paramter of CancelStorageMaintenance
func NewCancelStorageMaintenanceParameter ¶
func NewCancelStorageMaintenanceParameter(id string) (p *CancelStorageMaintenanceParameter)
type Capacity ¶
type Capacity struct {
ResourceBase
// the total capacity available
CapacityTotal NullNumber `json:"capacitytotal"`
// the capacity currently in use
CapacityUsed NullNumber `json:"capacityused"`
// the Cluster ID
ClusterId ID `json:"clusterid"`
// the Cluster name
ClusterName NullString `json:"clustername"`
// the percentage of capacity currently in use
PercentUsed NullString `json:"percentused"`
// the Pod ID
PodId ID `json:"podid"`
// the Pod name
PodName NullString `json:"podname"`
// the capacity type
Type NullNumber `json:"type"`
// the Zone ID
ZoneId ID `json:"zoneid"`
// the Zone name
ZoneName NullString `json:"zonename"`
}
type ChangeServiceForVirtualMachineParameter ¶
type ChangeServiceForVirtualMachineParameter struct {
// name value pairs of custom parameters for cpu, memory and cpunumber. example
// details[i].name=value
Details map[string]string
// The ID of the virtual machine
Id ID
// the service offering ID to apply to the virtual machine
ServiceOfferingId ID
}
ChangeServiceForVirtualMachine represents the paramter of ChangeServiceForVirtualMachine
func NewChangeServiceForVirtualMachineParameter ¶
func NewChangeServiceForVirtualMachineParameter(id string, serviceofferingid string) (p *ChangeServiceForVirtualMachineParameter)
type CleanVMReservationsParameter ¶
type CleanVMReservationsParameter struct {
}
CleanVMReservations represents the paramter of CleanVMReservations
func NewCleanVMReservationsParameter ¶
func NewCleanVMReservationsParameter() (p *CleanVMReservationsParameter)
type Client ¶
type Client struct {
EndPoint *url.URL
APIKey string
SecretKey string
Username string
Password string
SessionKey string
PollingInterval time.Duration
HTTPClient *http.Client
}
func (*Client) ActivateProject ¶
func (c *Client) ActivateProject(p *ActivateProjectParameter) (*Project, error)
Activates a project
func (*Client) AddAccountToProject ¶
func (c *Client) AddAccountToProject(p *AddAccountToProjectParameter) (*Result, error)
Adds acoount to a project
func (*Client) AddBaremetalHost ¶
func (c *Client) AddBaremetalHost(p *AddBaremetalHostParameter) (*Host, error)
add a baremetal host
func (*Client) AddCluster ¶
func (c *Client) AddCluster(p *AddClusterParameter) (*Cluster, error)
Adds a new cluster
func (*Client) AddHost ¶
func (c *Client) AddHost(p *AddHostParameter) (*Host, error)
Adds a new host.
func (*Client) AddImageStore ¶
func (c *Client) AddImageStore(p *AddImageStoreParameter) (*ImageStore, error)
Adds backup image store.
func (*Client) AddNicToVirtualMachine ¶
func (c *Client) AddNicToVirtualMachine(p *AddNicToVirtualMachineParameter) (*VirtualMachine, error)
Adds VM to specified network by creating a NIC
func (*Client) AddSecondaryStorage ¶
func (c *Client) AddSecondaryStorage(p *AddSecondaryStorageParameter) (*ImageStore, error)
Adds secondary storage.
func (*Client) AssignToLoadBalancerRule ¶
func (c *Client) AssignToLoadBalancerRule(p *AssignToLoadBalancerRuleParameter) (*Result, error)
Assigns virtual machine or a list of virtual machines to a load balancer rule.
func (*Client) AssignVirtualMachine ¶
func (c *Client) AssignVirtualMachine(p *AssignVirtualMachineParameter) (*VirtualMachine, error)
Change ownership of a VM from one account to another. This API is available for Basic zones with security groups and Advanced zones with guest networks. A root administrator can reassign a VM from any account to any other account in any domain. A domain administrator can reassign a VM to any account in the same domain.
func (*Client) AssociateIpAddress ¶
func (c *Client) AssociateIpAddress(p *AssociateIpAddressParameter) (*PublicIpAddress, error)
Acquires and associates a public IP to an account.
func (*Client) AsyncRequest ¶
func (*Client) AsyncRequestJson ¶
func (*Client) AttachVolume ¶
func (c *Client) AttachVolume(p *AttachVolumeParameter) (*Volume, error)
Attaches a disk volume to a virtual machine.
func (*Client) AuthorizeSecurityGroupEgress ¶
func (c *Client) AuthorizeSecurityGroupEgress(p *AuthorizeSecurityGroupEgressParameter) (*SecurityGroupEgress, error)
Authorizes a particular egress rule for this security group
func (*Client) AuthorizeSecurityGroupIngress ¶
func (c *Client) AuthorizeSecurityGroupIngress(p *AuthorizeSecurityGroupIngressParameter) (*SecurityGroupIngress, error)
Authorizes a particular ingress rule for this security group
func (*Client) CancelHostMaintenance ¶
func (c *Client) CancelHostMaintenance(p *CancelHostMaintenanceParameter) (*Host, error)
Cancels host maintenance.
func (*Client) CancelStorageMaintenance ¶
func (c *Client) CancelStorageMaintenance(p *CancelStorageMaintenanceParameter) (*StoragePool, error)
Cancels maintenance for primary storage
func (*Client) ChangeServiceForVirtualMachine ¶
func (c *Client) ChangeServiceForVirtualMachine(p *ChangeServiceForVirtualMachineParameter) (*VirtualMachine, error)
Changes the service offering for a virtual machine. The virtual machine must be in a "Stopped" state for this command to take effect.
func (*Client) CleanVMReservations ¶
func (c *Client) CleanVMReservations(p *CleanVMReservationsParameter) (*Result, error)
Cleanups VM reservations in the database.
func (*Client) CopyTemplate ¶
func (c *Client) CopyTemplate(p *CopyTemplateParameter) (*Template, error)
Copies a template from one zone to another.
func (*Client) CreateAccount ¶
func (c *Client) CreateAccount(p *CreateAccountParameter) (*Account, error)
Creates an account
func (*Client) CreateAffinityGroup ¶
func (c *Client) CreateAffinityGroup(p *CreateAffinityGroupParameter) (*AffinityGroup, error)
Creates an affinity/anti-affinity group
func (*Client) CreateDiskOffering ¶
func (c *Client) CreateDiskOffering(p *CreateDiskOfferingParameter) (*DiskOffering, error)
Creates a disk offering.
func (*Client) CreateDomain ¶
func (c *Client) CreateDomain(p *CreateDomainParameter) (*Domain, error)
Creates a domain
func (*Client) CreateEgressFirewallRule ¶
func (c *Client) CreateEgressFirewallRule(p *CreateEgressFirewallRuleParameter) (*FirewallRule, error)
Creates a egress firewall rule for a given network
func (*Client) CreateFirewallRule ¶
func (c *Client) CreateFirewallRule(p *CreateFirewallRuleParameter) (*FirewallRule, error)
Creates a firewall rule for a given ip address
func (*Client) CreateIpForwardingRule ¶
func (c *Client) CreateIpForwardingRule(p *CreateIpForwardingRuleParameter) (*IpForwardingRule, error)
Creates an ip forwarding rule
func (*Client) CreateLoadBalancerRule ¶
func (c *Client) CreateLoadBalancerRule(p *CreateLoadBalancerRuleParameter) (*LoadBalancerRule, error)
Creates a load balancer rule
func (*Client) CreateNetwork ¶
func (c *Client) CreateNetwork(p *CreateNetworkParameter) (*Network, error)
Creates a network
func (*Client) CreateNetworkOffering ¶
func (c *Client) CreateNetworkOffering(p *CreateNetworkOfferingParameter) (*NetworkOffering, error)
Creates a network offering.
func (*Client) CreatePod ¶
func (c *Client) CreatePod(p *CreatePodParameter) (*Pod, error)
Creates a new Pod.
func (*Client) CreatePortForwardingRule ¶
func (c *Client) CreatePortForwardingRule(p *CreatePortForwardingRuleParameter) (*PortForwardingRule, error)
Creates a port forwarding rule
func (*Client) CreateProject ¶
func (c *Client) CreateProject(p *CreateProjectParameter) (*Project, error)
Creates a project
func (*Client) CreateSecondaryStagingStore ¶
func (c *Client) CreateSecondaryStagingStore(p *CreateSecondaryStagingStoreParameter) (*ImageStore, error)
create secondary staging store.
func (*Client) CreateSecurityGroup ¶
func (c *Client) CreateSecurityGroup(p *CreateSecurityGroupParameter) (*SecurityGroup, error)
Creates a security group
func (*Client) CreateServiceOffering ¶
func (c *Client) CreateServiceOffering(p *CreateServiceOfferingParameter) (*ServiceOffering, error)
Creates a service offering.
func (*Client) CreateStoragePool ¶
func (c *Client) CreateStoragePool(p *CreateStoragePoolParameter) (*StoragePool, error)
Creates a storage pool.
func (*Client) CreateTags ¶
func (c *Client) CreateTags(p *CreateTagsParameter) (*Result, error)
Creates resource tag(s)
func (*Client) CreateTemplate ¶
func (c *Client) CreateTemplate(p *CreateTemplateParameter) (*Template, error)
Creates a template of a virtual machine. The virtual machine must be in a STOPPED state. A template created from this command is automatically designated as a private template visible to the account that created it.
func (*Client) CreateUser ¶
func (c *Client) CreateUser(p *CreateUserParameter) (*User, error)
Creates a user for an account that already exists
func (*Client) CreateVolume ¶
func (c *Client) CreateVolume(p *CreateVolumeParameter) (*Volume, error)
Creates a disk volume from a disk offering. This disk volume must still be attached to a virtual machine to make use of it.
func (*Client) CreateZone ¶
func (c *Client) CreateZone(p *CreateZoneParameter) (*Zone, error)
Creates a Zone.
func (*Client) DedicateCluster ¶
func (c *Client) DedicateCluster(p *DedicateClusterParameter) (*DedicatedCluster, error)
Dedicate an existing cluster
func (*Client) DedicateHost ¶
func (c *Client) DedicateHost(p *DedicateHostParameter) (*DedicatedHost, error)
Dedicates a host.
func (*Client) DedicatePod ¶
func (c *Client) DedicatePod(p *DedicatePodParameter) (*DedicatedPod, error)
Dedicates a Pod.
func (*Client) DeleteAccount ¶
func (c *Client) DeleteAccount(p *DeleteAccountParameter) (*Result, error)
Deletes a account, and all users associated with this account
func (*Client) DeleteAccountFromProject ¶
func (c *Client) DeleteAccountFromProject(p *DeleteAccountFromProjectParameter) (*Result, error)
Deletes account from the project
func (*Client) DeleteAffinityGroup ¶
func (c *Client) DeleteAffinityGroup(p *DeleteAffinityGroupParameter) (*Result, error)
Deletes affinity group
func (*Client) DeleteCluster ¶
func (c *Client) DeleteCluster(p *DeleteClusterParameter) (*Result, error)
Deletes a cluster.
func (*Client) DeleteDiskOffering ¶
func (c *Client) DeleteDiskOffering(p *DeleteDiskOfferingParameter) (*Result, error)
Updates a disk offering.
func (*Client) DeleteDomain ¶
func (c *Client) DeleteDomain(p *DeleteDomainParameter) (*Result, error)
Deletes a specified domain
func (*Client) DeleteEgressFirewallRule ¶
func (c *Client) DeleteEgressFirewallRule(p *DeleteEgressFirewallRuleParameter) (*Result, error)
Deletes an ggress firewall rule
func (*Client) DeleteFirewallRule ¶
func (c *Client) DeleteFirewallRule(p *DeleteFirewallRuleParameter) (*Result, error)
Deletes a firewall rule
func (*Client) DeleteHost ¶
func (c *Client) DeleteHost(p *DeleteHostParameter) (*Result, error)
Deletes a host.
func (*Client) DeleteImageStore ¶
func (c *Client) DeleteImageStore(p *DeleteImageStoreParameter) (*Result, error)
Deletes an image store .
func (*Client) DeleteIpForwardingRule ¶
func (c *Client) DeleteIpForwardingRule(p *DeleteIpForwardingRuleParameter) (*Result, error)
Deletes an ip forwarding rule
func (*Client) DeleteLoadBalancerRule ¶
func (c *Client) DeleteLoadBalancerRule(p *DeleteLoadBalancerRuleParameter) (*Result, error)
Deletes a load balancer rule.
func (*Client) DeleteNetwork ¶
func (c *Client) DeleteNetwork(p *DeleteNetworkParameter) (*Result, error)
Deletes a network
func (*Client) DeleteNetworkOffering ¶
func (c *Client) DeleteNetworkOffering(p *DeleteNetworkOfferingParameter) (*Result, error)
Deletes a network offering.
func (*Client) DeletePod ¶
func (c *Client) DeletePod(p *DeletePodParameter) (*Result, error)
Deletes a Pod.
func (*Client) DeletePortForwardingRule ¶
func (c *Client) DeletePortForwardingRule(p *DeletePortForwardingRuleParameter) (*Result, error)
Deletes a port forwarding rule
func (*Client) DeleteProject ¶
func (c *Client) DeleteProject(p *DeleteProjectParameter) (*Result, error)
Deletes a project
func (*Client) DeleteProjectInvitation ¶
func (c *Client) DeleteProjectInvitation(p *DeleteProjectInvitationParameter) (*Result, error)
Deletes project invitation
func (*Client) DeleteSecondaryStagingStore ¶
func (c *Client) DeleteSecondaryStagingStore(p *DeleteSecondaryStagingStoreParameter) (*Result, error)
Deletes a secondary staging store .
func (*Client) DeleteSecurityGroup ¶
func (c *Client) DeleteSecurityGroup(p *DeleteSecurityGroupParameter) (*Result, error)
Deletes security group
func (*Client) DeleteServiceOffering ¶
func (c *Client) DeleteServiceOffering(p *DeleteServiceOfferingParameter) (*Result, error)
Deletes a service offering.
func (*Client) DeleteStoragePool ¶
func (c *Client) DeleteStoragePool(p *DeleteStoragePoolParameter) (*Result, error)
Deletes a storage pool.
func (*Client) DeleteTags ¶
func (c *Client) DeleteTags(p *DeleteTagsParameter) (*Result, error)
Deleting resource tag(s)
func (*Client) DeleteTemplate ¶
func (c *Client) DeleteTemplate(p *DeleteTemplateParameter) (*Result, error)
Deletes a template from the system. All virtual machines using the deleted template will not be affected.
func (*Client) DeleteUser ¶
func (c *Client) DeleteUser(p *DeleteUserParameter) (*Result, error)
Deletes a user for an account
func (*Client) DeleteVolume ¶
func (c *Client) DeleteVolume(p *DeleteVolumeParameter) (*Result, error)
Deletes a detached disk volume.
func (*Client) DeleteZone ¶
func (c *Client) DeleteZone(p *DeleteZoneParameter) (*Result, error)
Deletes a Zone.
func (*Client) DeployVirtualMachine ¶
func (c *Client) DeployVirtualMachine(p *DeployVirtualMachineParameter) (*VirtualMachine, error)
Creates and automatically starts a virtual machine based on a service offering, disk offering, and template.
func (*Client) DestroyVirtualMachine ¶
func (c *Client) DestroyVirtualMachine(p *DestroyVirtualMachineParameter) (*VirtualMachine, error)
Destroys a virtual machine. Once destroyed, only the administrator can recover it.
func (*Client) DetachVolume ¶
func (c *Client) DetachVolume(p *DetachVolumeParameter) (*Volume, error)
Detaches a disk volume from a virtual machine.
func (*Client) DisableAccount ¶
func (c *Client) DisableAccount(p *DisableAccountParameter) (*Account, error)
Disables an account
func (*Client) DisableStaticNat ¶
func (c *Client) DisableStaticNat(p *DisableStaticNatParameter) (*Result, error)
Disables static rule for given ip address
func (*Client) DisableUser ¶
func (c *Client) DisableUser(p *DisableUserParameter) (*User, error)
Disables a user account
func (*Client) DisassociateIpAddress ¶
func (c *Client) DisassociateIpAddress(p *DisassociateIpAddressParameter) (*Result, error)
Disassociates an ip address from the account.
func (*Client) EnableAccount ¶
func (c *Client) EnableAccount(p *EnableAccountParameter) (*Account, error)
Enables an account
func (*Client) EnableStaticNat ¶
func (c *Client) EnableStaticNat(p *EnableStaticNatParameter) (*Result, error)
Enables static nat for given ip address
func (*Client) EnableStorageMaintenance ¶
func (c *Client) EnableStorageMaintenance(p *EnableStorageMaintenanceParameter) (*StoragePool, error)
Puts storage pool into maintenance state
func (*Client) EnableUser ¶
func (c *Client) EnableUser(p *EnableUserParameter) (*User, error)
Enables a user account
func (*Client) ExpungeVirtualMachine ¶
func (c *Client) ExpungeVirtualMachine(p *ExpungeVirtualMachineParameter) (*Result, error)
Expunge a virtual machine. Once expunged, it cannot be recoverd.
func (*Client) ExtractTemplate ¶
func (c *Client) ExtractTemplate(p *ExtractTemplateParameter) (*Template, error)
Extracts a template
func (*Client) ExtractVolume ¶
func (c *Client) ExtractVolume(p *ExtractVolumeParameter) (*Volume, error)
Extracts volume
func (*Client) FindHostsForMigration ¶
func (c *Client) FindHostsForMigration(p *FindHostsForMigrationParameter) (*Host, error)
Find hosts suitable for migrating a virtual machine.
func (*Client) FindStoragePoolsForMigration ¶
func (c *Client) FindStoragePoolsForMigration(p *FindStoragePoolsForMigrationParameter) (*StoragePool, error)
Lists storage pools available for migration of a volume.
func (*Client) GenerateQueryURL ¶
Generate Query URL from command and paramters
func (*Client) GetUser ¶
func (c *Client) GetUser(p *GetUserParameter) (*User, error)
Find user account by API key
func (*Client) GetVMPassword ¶
func (c *Client) GetVMPassword(p *GetVMPasswordParameter) (*VMPassword, error)
Returns an encrypted password for the VM
func (*Client) GetVirtualMachine ¶
func (c *Client) GetVirtualMachine(id string) (*VirtualMachine, error)
func (*Client) GetVirtualMachineUserData ¶
func (c *Client) GetVirtualMachineUserData(p *GetVirtualMachineUserDataParameter) (*VirtualMachineUserData, error)
Returns user data associated with the VM
func (*Client) ImportLdapUsers ¶
func (c *Client) ImportLdapUsers(p *ImportLdapUsersParameter) (*LdapUser, error)
Import LDAP users
func (*Client) ListAccounts ¶
func (c *Client) ListAccounts(p *ListAccountsParameter) ([]*Account, error)
Lists accounts and provides detailed account information for listed accounts
func (*Client) ListAffinityGroupTypes ¶
func (c *Client) ListAffinityGroupTypes(p *ListAffinityGroupTypesParameter) ([]*AffinityGroupType, error)
Lists affinity group types available
func (*Client) ListAffinityGroups ¶
func (c *Client) ListAffinityGroups(p *ListAffinityGroupsParameter) ([]*AffinityGroup, error)
Lists affinity groups
func (*Client) ListClusters ¶
func (c *Client) ListClusters(p *ListClustersParameter) ([]*Cluster, error)
Lists clusters.
func (*Client) ListDedicatedClusters ¶
func (c *Client) ListDedicatedClusters(p *ListDedicatedClustersParameter) ([]*DedicatedCluster, error)
Lists dedicated clusters.
func (*Client) ListDedicatedHosts ¶
func (c *Client) ListDedicatedHosts(p *ListDedicatedHostsParameter) ([]*DedicatedHost, error)
Lists dedicated hosts.
func (*Client) ListDedicatedPods ¶
func (c *Client) ListDedicatedPods(p *ListDedicatedPodsParameter) ([]*DedicatedPod, error)
Lists dedicated pods.
func (*Client) ListDiskOfferings ¶
func (c *Client) ListDiskOfferings(p *ListDiskOfferingsParameter) ([]*DiskOffering, error)
Lists all available disk offerings.
func (*Client) ListDomainChildren ¶
func (c *Client) ListDomainChildren(p *ListDomainChildrenParameter) ([]*Domain, error)
Lists all children domains belonging to a specified domain
func (*Client) ListDomains ¶
func (c *Client) ListDomains(p *ListDomainsParameter) ([]*Domain, error)
Lists domains and provides detailed information for listed domains
func (*Client) ListEgressFirewallRules ¶
func (c *Client) ListEgressFirewallRules(p *ListEgressFirewallRulesParameter) ([]*FirewallRule, error)
Lists all egress firewall rules for network id.
func (*Client) ListFirewallRules ¶
func (c *Client) ListFirewallRules(p *ListFirewallRulesParameter) ([]*FirewallRule, error)
Lists all firewall rules for an IP address.
func (*Client) ListHostTags ¶
func (c *Client) ListHostTags(p *ListHostTagsParameter) ([]*HostTag, error)
Lists host tags
func (*Client) ListHosts ¶
func (c *Client) ListHosts(p *ListHostsParameter) ([]*Host, error)
Lists hosts.
func (*Client) ListImageStores ¶
func (c *Client) ListImageStores(p *ListImageStoresParameter) ([]*ImageStore, error)
Lists image stores.
func (*Client) ListIpForwardingRules ¶
func (c *Client) ListIpForwardingRules(p *ListIpForwardingRulesParameter) ([]*IpForwardingRule, error)
List the ip forwarding rules
func (*Client) ListLdapUsers ¶
func (c *Client) ListLdapUsers(p *ListLdapUsersParameter) ([]*LdapUser, error)
Lists all LDAP Users
func (*Client) ListLoadBalancerRuleInstances ¶
func (c *Client) ListLoadBalancerRuleInstances(p *ListLoadBalancerRuleInstancesParameter) ([]*LoadBalancerRuleInstance, error)
List all virtual machine instances that are assigned to a load balancer rule.
func (*Client) ListLoadBalancerRules ¶
func (c *Client) ListLoadBalancerRules(p *ListLoadBalancerRulesParameter) ([]*LoadBalancerRule, error)
Lists load balancer rules.
func (*Client) ListNetworkOfferings ¶
func (c *Client) ListNetworkOfferings(p *ListNetworkOfferingsParameter) ([]*NetworkOffering, error)
Lists all available network offerings.
func (*Client) ListNetworks ¶
func (c *Client) ListNetworks(p *ListNetworksParameter) ([]*Network, error)
Lists all available networks.
func (*Client) ListPods ¶
func (c *Client) ListPods(p *ListPodsParameter) ([]*Pod, error)
Lists all Pods.
func (*Client) ListPortForwardingRules ¶
func (c *Client) ListPortForwardingRules(p *ListPortForwardingRulesParameter) ([]*PortForwardingRule, error)
Lists all port forwarding rules for an IP address.
func (*Client) ListProjectAccounts ¶
func (c *Client) ListProjectAccounts(p *ListProjectAccountsParameter) ([]*ProjectAccount, error)
Lists project's accounts
func (*Client) ListProjectInvitations ¶
func (c *Client) ListProjectInvitations(p *ListProjectInvitationsParameter) ([]*ProjectInvitation, error)
Lists project invitations and provides detailed information for listed invitations
func (*Client) ListProjects ¶
func (c *Client) ListProjects(p *ListProjectsParameter) ([]*Project, error)
Lists projects and provides detailed information for listed projects
func (*Client) ListPublicIpAddresses ¶
func (c *Client) ListPublicIpAddresses(p *ListPublicIpAddressesParameter) ([]*PublicIpAddress, error)
Lists all public ip addresses
func (*Client) ListSecondaryStagingStores ¶
func (c *Client) ListSecondaryStagingStores(p *ListSecondaryStagingStoresParameter) ([]*ImageStore, error)
Lists secondary staging stores.
func (*Client) ListSecurityGroups ¶
func (c *Client) ListSecurityGroups(p *ListSecurityGroupsParameter) ([]*SecurityGroup, error)
Lists security groups
func (*Client) ListServiceOfferings ¶
func (c *Client) ListServiceOfferings(p *ListServiceOfferingsParameter) ([]*ServiceOffering, error)
Lists all available service offerings.
func (*Client) ListStoragePools ¶
func (c *Client) ListStoragePools(p *ListStoragePoolsParameter) ([]*StoragePool, error)
Lists storage pools.
func (*Client) ListStorageProviders ¶
func (c *Client) ListStorageProviders(p *ListStorageProvidersParameter) ([]*StorageProvider, error)
Lists storage providers.
func (*Client) ListStorageTags ¶
func (c *Client) ListStorageTags(p *ListStorageTagsParameter) ([]*StorageTag, error)
Lists storage tags
func (*Client) ListTags ¶
func (c *Client) ListTags(p *ListTagsParameter) ([]*Tag, error)
List resource tag(s)
func (*Client) ListTemplatePermissions ¶
func (c *Client) ListTemplatePermissions(p *ListTemplatePermissionsParameter) (*TemplatePermission, error)
List template visibility and all accounts that have permissions to view this template.
func (*Client) ListTemplates ¶
func (c *Client) ListTemplates(p *ListTemplatesParameter) ([]*Template, error)
List all public, private, and privileged templates.
func (*Client) ListUsers ¶
func (c *Client) ListUsers(p *ListUsersParameter) ([]*User, error)
Lists user accounts
func (*Client) ListVirtualMachines ¶
func (c *Client) ListVirtualMachines(p *ListVirtualMachinesParameter) ([]*VirtualMachine, error)
List the virtual machines owned by the account.
func (*Client) ListVolumes ¶
func (c *Client) ListVolumes(p *ListVolumesParameter) ([]*Volume, error)
Lists all volumes.
func (*Client) ListZones ¶
func (c *Client) ListZones(p *ListZonesParameter) ([]*Zone, error)
Lists zones
func (*Client) LockAccount ¶
func (c *Client) LockAccount(p *LockAccountParameter) (*Account, error)
Locks an account
func (*Client) LockUser ¶
func (c *Client) LockUser(p *LockUserParameter) (*User, error)
Locks a user account
func (*Client) MarkDefaultZoneForAccount ¶
func (c *Client) MarkDefaultZoneForAccount(p *MarkDefaultZoneForAccountParameter) (*Account, error)
Marks a default zone for this account
func (*Client) MigrateVirtualMachine ¶
func (c *Client) MigrateVirtualMachine(p *MigrateVirtualMachineParameter) (*VirtualMachine, error)
Attempts Migration of a VM to a different host or Root volume of the vm to a different storage pool
func (*Client) MigrateVirtualMachineWithVolume ¶
func (c *Client) MigrateVirtualMachineWithVolume(p *MigrateVirtualMachineWithVolumeParameter) (*VirtualMachine, error)
Attempts Migration of a VM with its volumes to a different host
func (*Client) MigrateVolume ¶
func (c *Client) MigrateVolume(p *MigrateVolumeParameter) (*Volume, error)
Migrate volume
func (*Client) PrepareHostForMaintenance ¶
func (c *Client) PrepareHostForMaintenance(p *PrepareHostForMaintenanceParameter) (*Host, error)
Prepares a host for maintenance.
func (*Client) PrepareTemplate ¶
func (c *Client) PrepareTemplate(p *PrepareTemplateParameter) (*Template, error)
load template into primary storage
func (*Client) QueryAsyncJobResult ¶
func (c *Client) QueryAsyncJobResult(jobid string) (job *AsyncJobResult, err error)
func (*Client) RebootVirtualMachine ¶
func (c *Client) RebootVirtualMachine(p *RebootVirtualMachineParameter) (*VirtualMachine, error)
Reboots a virtual machine.
func (*Client) ReconnectHost ¶
func (c *Client) ReconnectHost(p *ReconnectHostParameter) (*Host, error)
Reconnects a host.
func (*Client) RecoverVirtualMachine ¶
func (c *Client) RecoverVirtualMachine(p *RecoverVirtualMachineParameter) (*VirtualMachine, error)
Recovers a virtual machine.
func (*Client) RegisterTemplate ¶
func (c *Client) RegisterTemplate(p *RegisterTemplateParameter) (*Template, error)
Registers an existing template into the CloudStack cloud.
func (*Client) RegisterUserKeys ¶
func (c *Client) RegisterUserKeys(p *RegisterUserKeysParameter) (*UserKeys, error)
This command allows a user to register for the developer API, returning a secret key and an API key. This request is made through the integration API port, so it is a privileged command and must be made on behalf of a user. It is up to the implementer just how the username and password are entered, and then how that translates to an integration API request. Both secret key and API key should be returned to the user
func (*Client) ReleaseDedicatedCluster ¶
func (c *Client) ReleaseDedicatedCluster(p *ReleaseDedicatedClusterParameter) (*Result, error)
Release the dedication for cluster
func (*Client) ReleaseDedicatedHost ¶
func (c *Client) ReleaseDedicatedHost(p *ReleaseDedicatedHostParameter) (*Result, error)
Release the dedication for host
func (*Client) ReleaseDedicatedPod ¶
func (c *Client) ReleaseDedicatedPod(p *ReleaseDedicatedPodParameter) (*Result, error)
Release the dedication for the pod
func (*Client) ReleaseHostReservation ¶
func (c *Client) ReleaseHostReservation(p *ReleaseHostReservationParameter) (*Result, error)
Releases host reservation.
func (*Client) RemoveFromLoadBalancerRule ¶
func (c *Client) RemoveFromLoadBalancerRule(p *RemoveFromLoadBalancerRuleParameter) (*Result, error)
Removes a virtual machine or a list of virtual machines from a load balancer rule.
func (*Client) RemoveNicFromVirtualMachine ¶
func (c *Client) RemoveNicFromVirtualMachine(p *RemoveNicFromVirtualMachineParameter) (*VirtualMachine, error)
Removes VM from specified network by deleting a NIC
func (*Client) RequestJson ¶
func (*Client) ResetPasswordForVirtualMachine ¶
func (c *Client) ResetPasswordForVirtualMachine(p *ResetPasswordForVirtualMachineParameter) (*VirtualMachine, error)
Resets the password for virtual machine. The virtual machine must be in a "Stopped" state and the template must already support this feature for this command to take effect. [async]
func (*Client) ResizeVolume ¶
func (c *Client) ResizeVolume(p *ResizeVolumeParameter) (*Volume, error)
Resizes a volume
func (*Client) RestartNetwork ¶
func (c *Client) RestartNetwork(p *RestartNetworkParameter) (*Network, error)
Restarts the network; includes 1) restarting network elements - virtual routers, dhcp servers 2) reapplying all public ips 3) reapplying loadBalancing/portForwarding rules
func (*Client) RestoreVirtualMachine ¶
func (c *Client) RestoreVirtualMachine(p *RestoreVirtualMachineParameter) (*VirtualMachine, error)
Restore a VM to original template/ISO or new template/ISO
func (*Client) RevokeSecurityGroupEgress ¶
func (c *Client) RevokeSecurityGroupEgress(p *RevokeSecurityGroupEgressParameter) (*Result, error)
Deletes a particular egress rule from this security group
func (*Client) RevokeSecurityGroupIngress ¶
func (c *Client) RevokeSecurityGroupIngress(p *RevokeSecurityGroupIngressParameter) (*Result, error)
Deletes a particular ingress rule from this security group
func (*Client) ScaleVirtualMachine ¶
func (c *Client) ScaleVirtualMachine(p *ScaleVirtualMachineParameter) (*Result, error)
Scales the virtual machine to a new service offering.
func (*Client) StartVirtualMachine ¶
func (c *Client) StartVirtualMachine(p *StartVirtualMachineParameter) (*VirtualMachine, error)
Starts a virtual machine.
func (*Client) StopVirtualMachine ¶
func (c *Client) StopVirtualMachine(p *StopVirtualMachineParameter) (*VirtualMachine, error)
Stops a virtual machine.
func (*Client) SuspendProject ¶
func (c *Client) SuspendProject(p *SuspendProjectParameter) (*Project, error)
Suspends a project
func (*Client) UpdateAccount ¶
func (c *Client) UpdateAccount(p *UpdateAccountParameter) (*Account, error)
Updates account information for the authenticated user
func (*Client) UpdateCloudToUseObjectStore ¶
func (c *Client) UpdateCloudToUseObjectStore(p *UpdateCloudToUseObjectStoreParameter) (*ImageStore, error)
Migrate current NFS secondary storages to use object store.
func (*Client) UpdateCluster ¶
func (c *Client) UpdateCluster(p *UpdateClusterParameter) (*Cluster, error)
Updates an existing cluster
func (*Client) UpdateDefaultNicForVirtualMachine ¶
func (c *Client) UpdateDefaultNicForVirtualMachine(p *UpdateDefaultNicForVirtualMachineParameter) (*VirtualMachine, error)
Changes the default NIC on a VM
func (*Client) UpdateDiskOffering ¶
func (c *Client) UpdateDiskOffering(p *UpdateDiskOfferingParameter) (*DiskOffering, error)
Updates a disk offering.
func (*Client) UpdateDomain ¶
func (c *Client) UpdateDomain(p *UpdateDomainParameter) (*Domain, error)
Updates a domain with a new name
func (*Client) UpdateEgressFirewallRule ¶
func (c *Client) UpdateEgressFirewallRule(p *UpdateEgressFirewallRuleParameter) (*FirewallRule, error)
Updates egress firewall rule
func (*Client) UpdateFirewallRule ¶
func (c *Client) UpdateFirewallRule(p *UpdateFirewallRuleParameter) (*FirewallRule, error)
Updates firewall rule
func (*Client) UpdateHost ¶
func (c *Client) UpdateHost(p *UpdateHostParameter) (*Host, error)
Updates a host.
func (*Client) UpdateHostPassword ¶
func (c *Client) UpdateHostPassword(p *UpdateHostPasswordParameter) (*Result, error)
Update password of a host/pool on management server.
func (*Client) UpdateIpAddress ¶
func (c *Client) UpdateIpAddress(p *UpdateIpAddressParameter) (*PublicIpAddress, error)
Updates an ip address
func (*Client) UpdateLoadBalancerRule ¶
func (c *Client) UpdateLoadBalancerRule(p *UpdateLoadBalancerRuleParameter) (*LoadBalancerRule, error)
Updates load balancer
func (*Client) UpdateNetwork ¶
func (c *Client) UpdateNetwork(p *UpdateNetworkParameter) (*Network, error)
Updates a network
func (*Client) UpdateNetworkOffering ¶
func (c *Client) UpdateNetworkOffering(p *UpdateNetworkOfferingParameter) (*NetworkOffering, error)
Updates a network offering.
func (*Client) UpdatePod ¶
func (c *Client) UpdatePod(p *UpdatePodParameter) (*Pod, error)
Updates a Pod.
func (*Client) UpdatePortForwardingRule ¶
func (c *Client) UpdatePortForwardingRule(p *UpdatePortForwardingRuleParameter) (*PortForwardingRule, error)
Updates a port forwarding rule. Only the private port and the virtual machine can be updated.
func (*Client) UpdateProject ¶
func (c *Client) UpdateProject(p *UpdateProjectParameter) (*Project, error)
Updates a project
func (*Client) UpdateProjectInvitation ¶
func (c *Client) UpdateProjectInvitation(p *UpdateProjectInvitationParameter) (*Result, error)
Accepts or declines project invitation
func (*Client) UpdateServiceOffering ¶
func (c *Client) UpdateServiceOffering(p *UpdateServiceOfferingParameter) (*ServiceOffering, error)
Updates a service offering.
func (*Client) UpdateStoragePool ¶
func (c *Client) UpdateStoragePool(p *UpdateStoragePoolParameter) (*StoragePool, error)
Updates a storage pool.
func (*Client) UpdateTemplate ¶
func (c *Client) UpdateTemplate(p *UpdateTemplateParameter) (*Template, error)
Updates attributes of a template.
func (*Client) UpdateTemplatePermissions ¶
func (c *Client) UpdateTemplatePermissions(p *UpdateTemplatePermissionsParameter) (*Result, error)
Updates a template visibility permissions. A public template is visible to all accounts within the same domain. A private template is visible only to the owner of the template. A priviledged template is a private template with account permissions added. Only accounts specified under the template permissions are visible to them.
func (*Client) UpdateUser ¶
func (c *Client) UpdateUser(p *UpdateUserParameter) (*User, error)
Updates a user account
func (*Client) UpdateVMAffinityGroup ¶
func (c *Client) UpdateVMAffinityGroup(p *UpdateVMAffinityGroupParameter) (*VirtualMachine, error)
Updates the affinity/anti-affinity group associations of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect.
func (*Client) UpdateVirtualMachine ¶
func (c *Client) UpdateVirtualMachine(p *UpdateVirtualMachineParameter) (*VirtualMachine, error)
Updates properties of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect. UpdateVirtualMachine does not first check whether the VM is stopped. Therefore, stop the VM manually before issuing this call.
func (*Client) UpdateVolume ¶
func (c *Client) UpdateVolume(p *UpdateVolumeParameter) (*Volume, error)
Updates the volume.
func (*Client) UpdateZone ¶
func (c *Client) UpdateZone(p *UpdateZoneParameter) (*Zone, error)
Updates a Zone.
func (*Client) UploadVolume ¶
func (c *Client) UploadVolume(p *UploadVolumeParameter) (*Volume, error)
Uploads a data disk.
type Cluster ¶
type Cluster struct {
ResourceBase
// the allocation state of the cluster
AllocationState NullString `json:"allocationstate"`
// the capacity of the Cluster
Capacity []Capacity `json:"capacity"`
// the type of the cluster
ClusterType NullString `json:"clustertype"`
// The cpu overcommit ratio of the cluster
CpuOverCommitRatio NullString `json:"cpuovercommitratio"`
// the hypervisor type of the cluster
HypervisorType NullString `json:"hypervisortype"`
// the cluster ID
Id ID `json:"id"`
// whether this cluster is managed by cloudstack
ManagedState NullString `json:"managedstate"`
// The memory overcommit ratio of the cluster
MemoryOverCommitRatio NullString `json:"memoryovercommitratio"`
// the cluster name
Name NullString `json:"name"`
// the Pod ID of the cluster
PodId ID `json:"podid"`
// the Pod name of the cluster
PodName NullString `json:"podname"`
// the Zone ID of the cluster
ZoneId ID `json:"zoneid"`
// the Zone name of the cluster
ZoneName NullString `json:"zonename"`
}
type Command ¶
func (Command) ReflectType ¶
type CopyTemplateParameter ¶
type CopyTemplateParameter struct {
// ID of the zone the template is being copied to.
DestZoneId ID
// Template ID.
Id ID
// ID of the zone the template is currently hosted on. If not specified and
// template is cross-zone, then we will sync this template to region wide image
// store.
SourceZoneId ID
}
CopyTemplate represents the paramter of CopyTemplate
func NewCopyTemplateParameter ¶
func NewCopyTemplateParameter(destzoneid string, id string) (p *CopyTemplateParameter)
type CreateAccountParameter ¶
type CreateAccountParameter struct {
// Creates the user under the specified account. If no account is specified, the
// username will be used as the account name.
Account NullString
// details for account used to store specific parameters
AccountDetails map[string]string
// Account UUID, required for adding account from external provisioning system
AccountId ID
// Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain
// admin
AccountType NullNumber
// Creates the user under the specified domain.
DomainId ID
// email
Email NullString
// firstname
FirstName NullString
// lastname
LastName NullString
// Network domain for the account's networks
NetworkDomain NullString
// Clear text password (Default hashed to SHA256SALT). If you wish to use any
// other hashing algorithm, you would need to write a custom authentication
// adapter See Docs section.
Password NullString
// Specifies a timezone for this command. For more information on the timezone
// parameter, see Time Zone Format.
TimeZone NullString
// User UUID, required for adding account from external provisioning system
UserId ID
// Unique username.
UserName NullString
}
CreateAccount represents the paramter of CreateAccount
type CreateAffinityGroupParameter ¶
type CreateAffinityGroupParameter struct {
// an account for the affinity group. Must be used with domainId.
Account NullString
// optional description of the affinity group
Description NullString
// domainId of the account owning the affinity group
DomainId ID
// name of the affinity group
Name NullString
// Type of the affinity group from the available affinity/anti-affinity group
// types
Type NullString
}
CreateAffinityGroup represents the paramter of CreateAffinityGroup
func NewCreateAffinityGroupParameter ¶
func NewCreateAffinityGroupParameter(name string, typ string) (p *CreateAffinityGroupParameter)
type CreateDiskOfferingParameter ¶
type CreateDiskOfferingParameter struct {
// bytes read rate of the disk offering
BytesReadRate NullNumber
// bytes write rate of the disk offering
BytesWriteRate NullNumber
// whether disk offering size is custom or not
Customized NullBool
// whether disk offering iops is custom or not
CustomizedIops NullBool
// size of the disk offering in GB
DiskSize NullNumber
// an optional field, whether to display the offering to the end user or not.
DisplayOffering NullBool
// alternate display text of the disk offering
DisplayText NullString
// the ID of the containing domain, null for public offerings
DomainId ID
// Hypervisor snapshot reserve space as a percent of a volume (for managed
// storage using Xen or VMware)
HypervisorSnapshotReserve NullNumber
// io requests read rate of the disk offering
IopsReadRate NullNumber
// io requests write rate of the disk offering
IopsWriteRate NullNumber
// max iops of the disk offering
MaxIops NullNumber
// min iops of the disk offering
MinIops NullNumber
// name of the disk offering
Name NullString
// provisioning type used to create volumes. Valid values are thin, sparse, fat.
ProvisioningType NullString
// the storage type of the disk offering. Values are local and shared.
StorageType NullString
// tags for the disk offering
Tags NullString
}
CreateDiskOffering represents the paramter of CreateDiskOffering
func NewCreateDiskOfferingParameter ¶
func NewCreateDiskOfferingParameter(displaytext string, name string) (p *CreateDiskOfferingParameter)
type CreateDomainParameter ¶
type CreateDomainParameter struct {
// Domain UUID, required for adding domain from another Region
DomainId ID
// creates domain with this name
Name NullString
// Network domain for networks in the domain
NetworkDomain NullString
// assigns new domain a parent domain by domain ID of the parent. If no parent
// domain is specied, the ROOT domain is assumed.
ParentDomainId ID
}
CreateDomain represents the paramter of CreateDomain
func NewCreateDomainParameter ¶
func NewCreateDomainParameter(name string) (p *CreateDomainParameter)
type CreateEgressFirewallRuleParameter ¶
type CreateEgressFirewallRuleParameter struct {
// the cidr list to forward traffic from
CidrList []string
// the ending port of firewall rule
EndPort NullNumber
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// error code for this icmp message
IcmpCode NullNumber
// type of the icmp message being sent
IcmpType NullNumber
// the network id of the port forwarding rule
NetworkId ID
// the protocol for the firewall rule. Valid values are TCP/UDP/ICMP.
Protocol NullString
// the starting port of firewall rule
StartPort NullNumber
// type of firewallrule: system/user
Type NullString
}
CreateEgressFirewallRule represents the paramter of CreateEgressFirewallRule
func NewCreateEgressFirewallRuleParameter ¶
func NewCreateEgressFirewallRuleParameter(networkid string, protocol string) (p *CreateEgressFirewallRuleParameter)
type CreateFirewallRuleParameter ¶
type CreateFirewallRuleParameter struct {
// the cidr list to forward traffic from
CidrList []string
// the ending port of firewall rule
EndPort NullNumber
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// error code for this icmp message
IcmpCode NullNumber
// type of the icmp message being sent
IcmpType NullNumber
// the IP address id of the port forwarding rule
IpAddressId ID
// the protocol for the firewall rule. Valid values are TCP/UDP/ICMP.
Protocol NullString
// the starting port of firewall rule
StartPort NullNumber
// type of firewallrule: system/user
Type NullString
}
CreateFirewallRule represents the paramter of CreateFirewallRule
func NewCreateFirewallRuleParameter ¶
func NewCreateFirewallRuleParameter(ipaddressid string, protocol string) (p *CreateFirewallRuleParameter)
type CreateIpForwardingRuleParameter ¶
type CreateIpForwardingRuleParameter struct {
// the cidr list to forward traffic from
CidrList []string
// the end port for the rule
EndPort NullNumber
// the public IP address id of the forwarding rule, already associated via
// associateIp
IpAddressId ID
// if true, firewall rule for source/end pubic port is automatically created; if
// false - firewall rule has to be created explicitely. Has value true by
// default
OpenFirewall NullBool
// the protocol for the rule. Valid values are TCP or UDP.
Protocol NullString
// the start port for the rule
StartPort NullNumber
}
CreateIpForwardingRule represents the paramter of CreateIpForwardingRule
func NewCreateIpForwardingRuleParameter ¶
func NewCreateIpForwardingRuleParameter(ipaddressid string, protocol string, startport int) (p *CreateIpForwardingRuleParameter)
type CreateLoadBalancerRuleParameter ¶
type CreateLoadBalancerRuleParameter struct {
// the account associated with the load balancer. Must be used with the domainId
// parameter.
Account NullString
// load balancer algorithm (source, roundrobin, leastconn)
Algorithm NullString
// the cidr list to forward traffic from
CidrList []string
// the description of the load balancer rule
Description NullString
// the domain ID associated with the load balancer
DomainId ID
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// name of the load balancer rule
Name NullString
// The guest network this rule will be created for. Required when public Ip
// address is not associated with any Guest network yet (VPC case)
NetworkId ID
// if true, firewall rule for source/end pubic port is automatically created; if
// false - firewall rule has to be created explicitely. If not specified 1)
// defaulted to false when LB rule is being created for VPC guest network 2) in
// all other cases defaulted to true
OpenFirewall NullBool
// the private port of the private ip address/virtual machine where the network
// traffic will be load balanced to
PrivatePort NullNumber
// The protocol for the LB
Protocol NullString
// public ip address id from where the network traffic will be load balanced
// from
PublicIpId ID
// the public port from where the network traffic will be load balanced from
PublicPort NullNumber
// zone where the load balancer is going to be created. This parameter is
// required when LB service provider is ElasticLoadBalancerVm
ZoneId ID
}
CreateLoadBalancerRule represents the paramter of CreateLoadBalancerRule
func NewCreateLoadBalancerRuleParameter ¶
func NewCreateLoadBalancerRuleParameter(algorithm string, name string, privateport int, publicport int) (p *CreateLoadBalancerRuleParameter)
type CreateNetworkOfferingParameter ¶
type CreateNetworkOfferingParameter struct {
// the availability of network offering. Default value is Optional
Availability NullString
// true if the network offering is IP conserve mode enabled
ConserveMode NullBool
// Network offering details in key/value pairs. Supported keys are
// internallbprovider/publiclbprovider with service provider as a value
Details map[string]string
// the display text of the network offering
DisplayText NullString
// true if guest network default egress policy is allow; false if default egress
// policy is deny
EgressDefaultPolicy NullBool
// guest type of the network offering: Shared or Isolated
GuestIpType NullString
// true if network offering supports persistent networks; defaulted to false if
// not specified
IsPersistent NullBool
// if true keepalive will be turned on in the loadbalancer. At the time of
// writing this has only an effect on haproxy; the mode http and httpclose
// options are unset in the haproxy conf file.
KeepaliveEnabled NullBool
// maximum number of concurrent connections supported by the network offering
MaxConnections NullNumber
// the name of the network offering
Name NullString
// data transfer rate in megabits per second allowed
NetworkRate NullNumber
// desired service capabilities as part of network offering
ServiceCapabilityList map[string]string
// the service offering ID used by virtual router provider
ServiceOfferingId ID
// provider to service mapping. If not specified, the provider for the service
// will be mapped to the default provider on the physical network
ServiceProviderList map[string]string
// true if network offering supports specifying ip ranges; defaulted to false if
// not specified
SpecifyIpRanges NullBool
// true if network offering supports vlans
SpecifyVlan NullBool
// services supported by the network offering
SupportedServices []string
// the tags for the network offering.
Tags NullString
// the traffic type for the network offering. Supported type in current release
// is GUEST only
TrafficType NullString
}
CreateNetworkOffering represents the paramter of CreateNetworkOffering
type CreateNetworkParameter ¶
type CreateNetworkParameter struct {
// account who will own the network
Account NullString
// Network ACL Id associated for the network
AclId ID
// Access control type; supported values are account and domain. In 3.0 all
// shared networks should have aclType=Domain, and all Isolated networks -
// Account. Account means that only the account owner can use the network,
// domain - all accouns in the domain can use the network
AclType NullString
// an optional field, whether to the display the network to the end user or not.
DisplayNetwork NullBool
// the display text of the network
DisplayText NullString
// domain ID of the account owning a network
DomainId ID
// the ending IP address in the network IP range. If not specified, will be
// defaulted to startIP
EndIp NullString
// the ending IPv6 address in the IPv6 network range
EndIpv6 NullString
// the gateway of the network. Required for Shared networks and Isolated
// networks when it belongs to VPC
Gateway NullString
// the CIDR of IPv6 network, must be at least /64
Ip6Cidr NullString
// the gateway of the IPv6 network. Required for Shared networks
Ip6Gateway NullString
// the isolated private vlan for this network
IsolatedPvlan NullString
// the name of the network
Name NullString
// the netmask of the network. Required for Shared networks and Isolated
// networks when it belongs to VPC
Netmask NullString
// network domain
NetworkDomain NullString
// the network offering id
NetworkOfferingId ID
// the Physical Network ID the network belongs to
PhysicalNetworkId ID
// an optional project for the ssh key
ProjectId ID
// the beginning IP address in the network IP range
StartIp NullString
// the beginning IPv6 address in the IPv6 network range
StartIpv6 NullString
// Defines whether to allow subdomains to use networks dedicated to their parent
// domain(s). Should be used with aclType=Domain, defaulted to
// allow.subdomain.network.access global config if not specified
SubDomainAccess NullBool
// the ID or VID of the network
Vlan NullString
// the VPC network belongs to
VpcId ID
// the Zone ID for the network
ZoneId ID
}
CreateNetwork represents the paramter of CreateNetwork
func NewCreateNetworkParameter ¶
func NewCreateNetworkParameter(displaytext string, name string, networkofferingid string, zoneid string) (p *CreateNetworkParameter)
type CreatePodParameter ¶
type CreatePodParameter struct {
// Allocation state of this Pod for allocation of new resources
AllocationState NullString
// the ending IP address for the Pod
EndIp NullString
// the gateway for the Pod
Gateway NullString
// the name of the Pod
Name NullString
// the netmask for the Pod
Netmask NullString
// the starting IP address for the Pod
StartIp NullString
// the Zone ID in which the Pod will be created
ZoneId ID
}
CreatePod represents the paramter of CreatePod
func NewCreatePodParameter ¶
type CreatePortForwardingRuleParameter ¶
type CreatePortForwardingRuleParameter struct {
// the cidr list to forward traffic from
CidrList []string
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// the IP address id of the port forwarding rule
IpAddressId ID
// the network of the virtual machine the port forwarding rule will be created
// for. Required when public IP address is not associated with any guest network
// yet (VPC case).
NetworkId ID
// if true, firewall rule for source/end public port is automatically created;
// if false - firewall rule has to be created explicitly. If not specified 1)
// defaulted to false when PF rule is being created for VPC guest network 2) in
// all other cases defaulted to true
OpenFirewall NullBool
// the ending port of port forwarding rule's private port range
PrivateEndPort NullNumber
// the starting port of port forwarding rule's private port range
PrivatePort NullNumber
// the protocol for the port fowarding rule. Valid values are TCP or UDP.
Protocol NullString
// the ending port of port forwarding rule's private port range
PublicEndPort NullNumber
// the starting port of port forwarding rule's public port range
PublicPort NullNumber
// the ID of the virtual machine for the port forwarding rule
VirtualMachineId ID
// VM guest nic secondary IP address for the port forwarding rule
VmGuestIp NullString
}
CreatePortForwardingRule represents the paramter of CreatePortForwardingRule
type CreateProjectParameter ¶
type CreateProjectParameter struct {
// account who will be Admin for the project
Account NullString
// display text of the project
DisplayText NullString
// domain ID of the account owning a project
DomainId ID
// name of the project
Name NullString
}
CreateProject represents the paramter of CreateProject
func NewCreateProjectParameter ¶
func NewCreateProjectParameter(displaytext string, name string) (p *CreateProjectParameter)
type CreateSecondaryStagingStoreParameter ¶
type CreateSecondaryStagingStoreParameter struct {
// the details for the staging store
Details map[string]string
// the staging store provider name
Provider NullString
// the scope of the staging store: zone only for now
Scope NullString
// the URL for the staging store
Url NullString
// the Zone ID for the staging store
ZoneId ID
}
CreateSecondaryStagingStore represents the paramter of CreateSecondaryStagingStore
func NewCreateSecondaryStagingStoreParameter ¶
func NewCreateSecondaryStagingStoreParameter(url string) (p *CreateSecondaryStagingStoreParameter)
type CreateSecurityGroupParameter ¶
type CreateSecurityGroupParameter struct {
// an optional account for the security group. Must be used with domainId.
Account NullString
// the description of the security group
Description NullString
// an optional domainId for the security group. If the account parameter is
// used, domainId must also be used.
DomainId ID
// name of the security group
Name NullString
// Create security group for project
ProjectId ID
}
CreateSecurityGroup represents the paramter of CreateSecurityGroup
func NewCreateSecurityGroupParameter ¶
func NewCreateSecurityGroupParameter(name string) (p *CreateSecurityGroupParameter)
type CreateServiceOfferingParameter ¶
type CreateServiceOfferingParameter struct {
// bytes read rate of the disk offering
BytesReadRate NullNumber
// bytes write rate of the disk offering
BytesWriteRate NullNumber
// the CPU number of the service offering
CpuNumber NullNumber
// the CPU speed of the service offering in MHz.
CpuSpeed NullNumber
// whether compute offering iops is custom or not
CustomizedIops NullBool
// The deployment planner heuristics used to deploy a VM of this offering. If
// null, value of global config vm.deployment.planner is used
DeploymentPlanner NullString
// the display text of the service offering
DisplayText NullString
// the ID of the containing domain, null for public offerings
DomainId ID
// the host tag for this service offering.
HostTags NullString
// Hypervisor snapshot reserve space as a percent of a volume (for managed
// storage using Xen or VMware)
HypervisorSnapshotReserve NullNumber
// io requests read rate of the disk offering
IopsReadRate NullNumber
// io requests write rate of the disk offering
IopsWriteRate NullNumber
// is this a system vm offering
IsSystem NullBool
// true if the virtual machine needs to be volatile so that on every reboot of
// VM, original root disk is dettached then destroyed and a fresh root disk is
// created and attached to VM
IsVolatile NullBool
// restrict the CPU usage to committed service offering
LimitCpuUse NullBool
// max iops of the compute offering
MaxIops NullNumber
// the total memory of the service offering in MB
Memory NullNumber
// min iops of the compute offering
MinIops NullNumber
// the name of the service offering
Name NullString
// data transfer rate in megabits per second allowed. Supported only for
// non-System offering and system offerings having "domainrouter" systemvmtype
NetworkRate NullNumber
// the HA for the service offering
OfferHa NullBool
// details for planner, used to store specific parameters
ServiceOfferingDetails map[string]string
// the storage type of the service offering. Values are local and shared.
StorageType NullString
// the system VM type. Possible types are "domainrouter", "consoleproxy" and
// "secondarystoragevm".
SystemVmType NullString
// the tags for this service offering.
Tags NullString
}
CreateServiceOffering represents the paramter of CreateServiceOffering
func NewCreateServiceOfferingParameter ¶
func NewCreateServiceOfferingParameter(displaytext string, name string) (p *CreateServiceOfferingParameter)
type CreateStoragePoolParameter ¶
type CreateStoragePoolParameter struct {
// bytes CloudStack can provision from this storage pool
CapacityBytes NullNumber
// IOPS CloudStack can provision from this storage pool
CapacityIops NullNumber
// the cluster ID for the storage pool
ClusterId ID
// the details for the storage pool
Details map[string]string
// hypervisor type of the hosts in zone that will be attached to this storage
// pool. KVM, VMware supported as of now.
Hypervisor NullString
// whether the storage should be managed by CloudStack
Managed NullBool
// the name for the storage pool
Name NullString
// the Pod ID for the storage pool
PodId ID
// the storage provider name
Provider NullString
// the scope of the storage: cluster or zone
Scope NullString
// the tags for the storage pool
Tags NullString
// the URL of the storage pool
Url NullString
// the Zone ID for the storage pool
ZoneId ID
}
CreateStoragePool represents the paramter of CreateStoragePool
func NewCreateStoragePoolParameter ¶
func NewCreateStoragePoolParameter(name string, url string, zoneid string) (p *CreateStoragePoolParameter)
type CreateTagsParameter ¶
type CreateTagsParameter struct {
// identifies client specific tag. When the value is not null, the tag can't be
// used by cloudStack code internally
Customer NullString
// list of resources to create the tags for
ResourceIds []string
// type of the resource
ResourceType NullString
// Map of tags (key/value pairs)
Tags map[string]string
}
CreateTags represents the paramter of CreateTags
func NewCreateTagsParameter ¶
func NewCreateTagsParameter(resourceids []string, resourcetype string, tags map[string]string) (p *CreateTagsParameter)
type CreateTemplateParameter ¶
type CreateTemplateParameter struct {
// 32 or 64 bit
Bits NullNumber
// Template details in key/value pairs.
Details map[string]string
// the display text of the template. This is usually used for display purposes.
DisplayText NullString
// true if template contains XS/VMWare tools inorder to support dynamic scaling
// of VM cpu/memory
IsDynamicallyScalable NullBool
// true if this template is a featured template, false otherwise
IsFeatured NullBool
// true if this template is a public template, false otherwise
IsPublic NullBool
// the name of the template
Name NullString
// the ID of the OS Type that best represents the OS of this template.
OsTypeId ID
// true if the template supports the password reset feature; default is false
PasswordEnabled NullBool
// true if the template requres HVM, false otherwise
RequiresHvm NullBool
// the ID of the snapshot the template is being created from. Either this
// parameter, or volumeId has to be passed in
SnapshotId ID
// the tag for this template.
Templatetag NullString
// Optional, only for baremetal hypervisor. The directory name where template
// stored on CIFS server
Url NullString
// Optional, VM ID. If this presents, it is going to create a baremetal template
// for VM this ID refers to. This is only for VM whose hypervisor type is
// BareMetal
VirtualMachineId ID
// the ID of the disk volume the template is being created from. Either this
// parameter, or snapshotId has to be passed in
VolumeId ID
}
CreateTemplate represents the paramter of CreateTemplate
func NewCreateTemplateParameter ¶
func NewCreateTemplateParameter(displaytext string, name string, ostypeid string) (p *CreateTemplateParameter)
type CreateUserParameter ¶
type CreateUserParameter struct {
// Creates the user under the specified account. If no account is specified, the
// username will be used as the account name.
Account NullString
// Creates the user under the specified domain. Has to be accompanied with the
// account parameter
DomainId ID
// email
Email NullString
// firstname
FirstName NullString
// lastname
LastName NullString
// Clear text password (Default hashed to SHA256SALT). If you wish to use any
// other hashing algorithm, you would need to write a custom authentication
// adapter See Docs section.
Password NullString
// Specifies a timezone for this command. For more information on the timezone
// parameter, see Time Zone Format.
TimeZone NullString
// User UUID, required for adding account from external provisioning system
UserId ID
// Unique username.
UserName NullString
}
CreateUser represents the paramter of CreateUser
func NewCreateUserParameter ¶
type CreateVolumeParameter ¶
type CreateVolumeParameter struct {
// the account associated with the disk volume. Must be used with the domainId
// parameter.
Account NullString
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// the ID of the disk offering. Either diskOfferingId or snapshotId must be
// passed in.
DiskOfferingId ID
// an optional field, whether to display the volume to the end user or not.
DisplayVolume NullBool
// the domain ID associated with the disk offering. If used with the account
// parameter returns the disk volume associated with the account for the
// specified domain.
DomainId ID
// max iops
MaxIops NullNumber
// min iops
MinIops NullNumber
// the name of the disk volume
Name NullString
// the project associated with the volume. Mutually exclusive with account
// parameter
ProjectId ID
// Arbitrary volume size
Size NullNumber
// the snapshot ID for the disk volume. Either diskOfferingId or snapshotId must
// be passed in.
SnapshotId ID
// the ID of the virtual machine; to be used with snapshot Id, VM to which the
// volume gets attached after creation
VirtualMachineId ID
// the ID of the availability zone
ZoneId ID
}
CreateVolume represents the paramter of CreateVolume
func NewCreateVolumeParameter ¶
func NewCreateVolumeParameter(name string) (p *CreateVolumeParameter)
type CreateZoneParameter ¶
type CreateZoneParameter struct {
// Allocation state of this Zone for allocation of new resources
AllocationState NullString
// the first DNS for the Zone
Dns1 NullString
// the second DNS for the Zone
Dns2 NullString
// Network domain name for the networks in the zone
Domain NullString
// the ID of the containing domain, null for public zones
DomainId ID
// the guest CIDR address for the Zone
GuestCidrAddress NullString
// the first internal DNS for the Zone
InternalDns1 NullString
// the second internal DNS for the Zone
InternalDns2 NullString
// the first DNS for IPv6 network in the Zone
Ip6Dns1 NullString
// the second DNS for IPv6 network in the Zone
Ip6Dns2 NullString
// true if local storage offering enabled, false otherwise
LocalStorageEnabled NullBool
// the name of the Zone
Name NullString
// network type of the zone, can be Basic or Advanced
NetworkType NullString
// true if network is security group enabled, false otherwise
SecurityGroupEnabled NullBool
}
CreateZone represents the paramter of CreateZone
func NewCreateZoneParameter ¶
func NewCreateZoneParameter(dns1 string, internaldns1 string, name string, networktype string) (p *CreateZoneParameter)
type DedicateClusterParameter ¶
type DedicateClusterParameter struct {
// the name of the account which needs dedication. Must be used with domainId.
Account NullString
// the ID of the Cluster
ClusterId ID
// the ID of the containing domain
DomainId ID
}
DedicateCluster represents the paramter of DedicateCluster
func NewDedicateClusterParameter ¶
func NewDedicateClusterParameter(clusterid string, domainid string) (p *DedicateClusterParameter)
type DedicateHostParameter ¶
type DedicateHostParameter struct {
// the name of the account which needs dedication. Must be used with domainId.
Account NullString
// the ID of the containing domain
DomainId ID
// the ID of the host to update
HostId ID
}
DedicateHost represents the paramter of DedicateHost
func NewDedicateHostParameter ¶
func NewDedicateHostParameter(domainid string, hostid string) (p *DedicateHostParameter)
type DedicatePodParameter ¶
type DedicatePodParameter struct {
// the name of the account which needs dedication. Must be used with domainId.
Account NullString
// the ID of the containing domain
DomainId ID
// the ID of the Pod
PodId ID
}
DedicatePod represents the paramter of DedicatePod
func NewDedicatePodParameter ¶
func NewDedicatePodParameter(domainid string, podid string) (p *DedicatePodParameter)
type DedicatedCluster ¶
type DedicatedCluster struct {
ResourceBase
// the Account ID of the cluster
AccountId ID `json:"accountid"`
// the Dedication Affinity Group ID of the cluster
AffinityGroupId ID `json:"affinitygroupid"`
// the ID of the cluster
ClusterId ID `json:"clusterid"`
// the name of the cluster
ClusterName NullString `json:"clustername"`
// the domain ID of the cluster
DomainId ID `json:"domainid"`
// the ID of the dedicated resource
Id ID `json:"id"`
}
type DedicatedHost ¶
type DedicatedHost struct {
ResourceBase
// the Account ID of the host
AccountId ID `json:"accountid"`
// the Dedication Affinity Group ID of the host
AffinityGroupId ID `json:"affinitygroupid"`
// the domain ID of the host
DomainId ID `json:"domainid"`
// the ID of the host
HostId ID `json:"hostid"`
// the name of the host
HostName NullString `json:"hostname"`
// the ID of the dedicated resource
Id ID `json:"id"`
}
type DedicatedPod ¶
type DedicatedPod struct {
ResourceBase
// the Account Id to which the Pod is dedicated
AccountId ID `json:"accountid"`
// the Dedication Affinity Group ID of the pod
AffinityGroupId ID `json:"affinitygroupid"`
// the domain ID to which the Pod is dedicated
DomainId ID `json:"domainid"`
// the ID of the dedicated resource
Id ID `json:"id"`
// the ID of the Pod
PodId ID `json:"podid"`
// the Name of the Pod
PodName NullString `json:"podname"`
}
type DeleteAccountFromProjectParameter ¶
type DeleteAccountFromProjectParameter struct {
// name of the account to be removed from the project
Account NullString
// id of the project to remove the account from
ProjectId ID
}
DeleteAccountFromProject represents the paramter of DeleteAccountFromProject
func NewDeleteAccountFromProjectParameter ¶
func NewDeleteAccountFromProjectParameter(account string, projectid string) (p *DeleteAccountFromProjectParameter)
type DeleteAccountParameter ¶
type DeleteAccountParameter struct {
// Account id
Id ID
}
DeleteAccount represents the paramter of DeleteAccount
func NewDeleteAccountParameter ¶
func NewDeleteAccountParameter(id string) (p *DeleteAccountParameter)
type DeleteAffinityGroupParameter ¶
type DeleteAffinityGroupParameter struct {
// the account of the affinity group. Must be specified with domain ID
Account NullString
// the domain ID of account owning the affinity group
DomainId ID
// The ID of the affinity group. Mutually exclusive with name parameter
Id ID
// The name of the affinity group. Mutually exclusive with id parameter
Name NullString
}
DeleteAffinityGroup represents the paramter of DeleteAffinityGroup
func NewDeleteAffinityGroupParameter ¶
func NewDeleteAffinityGroupParameter() (p *DeleteAffinityGroupParameter)
type DeleteClusterParameter ¶
type DeleteClusterParameter struct {
// the cluster ID
Id ID
}
DeleteCluster represents the paramter of DeleteCluster
func NewDeleteClusterParameter ¶
func NewDeleteClusterParameter(id string) (p *DeleteClusterParameter)
type DeleteDiskOfferingParameter ¶
type DeleteDiskOfferingParameter struct {
// ID of the disk offering
Id ID
}
DeleteDiskOffering represents the paramter of DeleteDiskOffering
func NewDeleteDiskOfferingParameter ¶
func NewDeleteDiskOfferingParameter(id string) (p *DeleteDiskOfferingParameter)
type DeleteDomainParameter ¶
type DeleteDomainParameter struct {
// true if all domain resources (child domains, accounts) have to be cleaned up,
// false otherwise
Cleanup NullBool
// ID of domain to delete
Id ID
}
DeleteDomain represents the paramter of DeleteDomain
func NewDeleteDomainParameter ¶
func NewDeleteDomainParameter(id string) (p *DeleteDomainParameter)
type DeleteEgressFirewallRuleParameter ¶
type DeleteEgressFirewallRuleParameter struct {
// the ID of the firewall rule
Id ID
}
DeleteEgressFirewallRule represents the paramter of DeleteEgressFirewallRule
func NewDeleteEgressFirewallRuleParameter ¶
func NewDeleteEgressFirewallRuleParameter(id string) (p *DeleteEgressFirewallRuleParameter)
type DeleteFirewallRuleParameter ¶
type DeleteFirewallRuleParameter struct {
// the ID of the firewall rule
Id ID
}
DeleteFirewallRule represents the paramter of DeleteFirewallRule
func NewDeleteFirewallRuleParameter ¶
func NewDeleteFirewallRuleParameter(id string) (p *DeleteFirewallRuleParameter)
type DeleteHostParameter ¶
type DeleteHostParameter struct {
// Force delete the host. All HA enabled vms running on the host will be put to
// HA; HA disabled ones will be stopped
Forced NullBool
// Force destroy local storage on this host. All VMs created on this local
// storage will be destroyed
ForceDestroyLocalStorage NullBool
// the host ID
Id ID
}
DeleteHost represents the paramter of DeleteHost
func NewDeleteHostParameter ¶
func NewDeleteHostParameter(id string) (p *DeleteHostParameter)
type DeleteImageStoreParameter ¶
type DeleteImageStoreParameter struct {
// the image store ID
Id ID
}
DeleteImageStore represents the paramter of DeleteImageStore
func NewDeleteImageStoreParameter ¶
func NewDeleteImageStoreParameter(id string) (p *DeleteImageStoreParameter)
type DeleteIpForwardingRuleParameter ¶
type DeleteIpForwardingRuleParameter struct {
// the id of the forwarding rule
Id ID
}
DeleteIpForwardingRule represents the paramter of DeleteIpForwardingRule
func NewDeleteIpForwardingRuleParameter ¶
func NewDeleteIpForwardingRuleParameter(id string) (p *DeleteIpForwardingRuleParameter)
type DeleteLoadBalancerRuleParameter ¶
type DeleteLoadBalancerRuleParameter struct {
// the ID of the load balancer rule
Id ID
}
DeleteLoadBalancerRule represents the paramter of DeleteLoadBalancerRule
func NewDeleteLoadBalancerRuleParameter ¶
func NewDeleteLoadBalancerRuleParameter(id string) (p *DeleteLoadBalancerRuleParameter)
type DeleteNetworkOfferingParameter ¶
type DeleteNetworkOfferingParameter struct {
// the ID of the network offering
Id ID
}
DeleteNetworkOffering represents the paramter of DeleteNetworkOffering
func NewDeleteNetworkOfferingParameter ¶
func NewDeleteNetworkOfferingParameter(id string) (p *DeleteNetworkOfferingParameter)
type DeleteNetworkParameter ¶
type DeleteNetworkParameter struct {
// Force delete a network. Network will be marked as 'Destroy' even when
// commands to shutdown and cleanup to the backend fails.
Forced NullBool
// the ID of the network
Id ID
}
DeleteNetwork represents the paramter of DeleteNetwork
func NewDeleteNetworkParameter ¶
func NewDeleteNetworkParameter(id string) (p *DeleteNetworkParameter)
type DeletePodParameter ¶
type DeletePodParameter struct {
// the ID of the Pod
Id ID
}
DeletePod represents the paramter of DeletePod
func NewDeletePodParameter ¶
func NewDeletePodParameter(id string) (p *DeletePodParameter)
type DeletePortForwardingRuleParameter ¶
type DeletePortForwardingRuleParameter struct {
// the ID of the port forwarding rule
Id ID
}
DeletePortForwardingRule represents the paramter of DeletePortForwardingRule
func NewDeletePortForwardingRuleParameter ¶
func NewDeletePortForwardingRuleParameter(id string) (p *DeletePortForwardingRuleParameter)
type DeleteProjectInvitationParameter ¶
type DeleteProjectInvitationParameter struct {
// id of the invitation
Id ID
}
DeleteProjectInvitation represents the paramter of DeleteProjectInvitation
func NewDeleteProjectInvitationParameter ¶
func NewDeleteProjectInvitationParameter(id string) (p *DeleteProjectInvitationParameter)
type DeleteProjectParameter ¶
type DeleteProjectParameter struct {
// id of the project to be deleted
Id ID
}
DeleteProject represents the paramter of DeleteProject
func NewDeleteProjectParameter ¶
func NewDeleteProjectParameter(id string) (p *DeleteProjectParameter)
type DeleteSecondaryStagingStoreParameter ¶
type DeleteSecondaryStagingStoreParameter struct {
// the staging store ID
Id ID
}
DeleteSecondaryStagingStore represents the paramter of DeleteSecondaryStagingStore
func NewDeleteSecondaryStagingStoreParameter ¶
func NewDeleteSecondaryStagingStoreParameter(id string) (p *DeleteSecondaryStagingStoreParameter)
type DeleteSecurityGroupParameter ¶
type DeleteSecurityGroupParameter struct {
// the account of the security group. Must be specified with domain ID
Account NullString
// the domain ID of account owning the security group
DomainId ID
// The ID of the security group. Mutually exclusive with name parameter
Id ID
// The ID of the security group. Mutually exclusive with id parameter
Name NullString
// the project of the security group
ProjectId ID
}
DeleteSecurityGroup represents the paramter of DeleteSecurityGroup
func NewDeleteSecurityGroupParameter ¶
func NewDeleteSecurityGroupParameter() (p *DeleteSecurityGroupParameter)
type DeleteServiceOfferingParameter ¶
type DeleteServiceOfferingParameter struct {
// the ID of the service offering
Id ID
}
DeleteServiceOffering represents the paramter of DeleteServiceOffering
func NewDeleteServiceOfferingParameter ¶
func NewDeleteServiceOfferingParameter(id string) (p *DeleteServiceOfferingParameter)
type DeleteStoragePoolParameter ¶
type DeleteStoragePoolParameter struct {
// Force destroy storage pool (force expunge volumes in Destroyed state as a
// part of pool removal)
Forced NullBool
// Storage pool id
Id ID
}
DeleteStoragePool represents the paramter of DeleteStoragePool
func NewDeleteStoragePoolParameter ¶
func NewDeleteStoragePoolParameter(id string) (p *DeleteStoragePoolParameter)
type DeleteTagsParameter ¶
type DeleteTagsParameter struct {
// Delete tags for resource id(s)
ResourceIds []string
// Delete tag by resource type
ResourceType NullString
// Delete tags matching key/value pairs
Tags map[string]string
}
DeleteTags represents the paramter of DeleteTags
func NewDeleteTagsParameter ¶
func NewDeleteTagsParameter(resourceids []string, resourcetype string) (p *DeleteTagsParameter)
type DeleteTemplateParameter ¶
type DeleteTemplateParameter struct {
// the ID of the template
Id ID
// the ID of zone of the template
ZoneId ID
}
DeleteTemplate represents the paramter of DeleteTemplate
func NewDeleteTemplateParameter ¶
func NewDeleteTemplateParameter(id string) (p *DeleteTemplateParameter)
type DeleteUserParameter ¶
type DeleteUserParameter struct {
// id of the user to be deleted
Id ID
}
DeleteUser represents the paramter of DeleteUser
func NewDeleteUserParameter ¶
func NewDeleteUserParameter(id string) (p *DeleteUserParameter)
type DeleteVolumeParameter ¶
type DeleteVolumeParameter struct {
// The ID of the disk volume
Id ID
}
DeleteVolume represents the paramter of DeleteVolume
func NewDeleteVolumeParameter ¶
func NewDeleteVolumeParameter(id string) (p *DeleteVolumeParameter)
type DeleteZoneParameter ¶
type DeleteZoneParameter struct {
// the ID of the Zone
Id ID
}
DeleteZone represents the paramter of DeleteZone
func NewDeleteZoneParameter ¶
func NewDeleteZoneParameter(id string) (p *DeleteZoneParameter)
type DeployVirtualMachineParameter ¶
type DeployVirtualMachineParameter struct {
// an optional account for the virtual machine. Must be used with domainId.
Account NullString
// comma separated list of affinity groups id that are going to be applied to
// the virtual machine. Mutually exclusive with affinitygroupnames parameter
AffinityGroupIds []string
// comma separated list of affinity groups names that are going to be applied to
// the virtual machine.Mutually exclusive with affinitygroupids parameter
AffinityGroupNames []string
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// Deployment planner to use for vm allocation. Available to ROOT admin only
DeploymentPlanner NullString
// used to specify the custom parameters.
Details map[string]string
// the ID of the disk offering for the virtual machine. If the template is of
// ISO format, the diskOfferingId is for the root disk volume. Otherwise this
// parameter is used to indicate the offering for the data disk volume. If the
// templateId parameter passed is from a Template object, the diskOfferingId
// refers to a DATA Disk Volume created. If the templateId parameter passed is
// from an ISO object, the diskOfferingId refers to a ROOT Disk Volume created.
DiskOfferingId ID
// an optional user generated name for the virtual machine
DisplayName NullString
// an optional field, whether to the display the vm to the end user or not.
DisplayVm NullBool
// an optional domainId for the virtual machine. If the account parameter is
// used, domainId must also be used.
DomainId ID
// an optional group for the virtual machine
Group NullString
// destination Host ID to deploy the VM to - parameter available for root admin
// only
HostId ID
// the hypervisor on which to deploy the virtual machine
Hypervisor NullString
// the ipv6 address for default vm's network
Ip6Address NullString
// the ip address for default vm's network
IpAddress NullString
// ip to network mapping. Can't be specified with networkIds parameter. Example:
// iptonetworklist[0].ip=10.10.10.11&iptonetworklist[0].ipv6=fc00:1234:5678::abcd&iptonetworklist[0].networkid=uuid
// - requests to use ip 10.10.10.11 in network id=uuid
IpToNetworkList map[string]string
// an optional keyboard device type for the virtual machine. valid value can be
// one of de,de-ch,es,fi,fr,fr-be,fr-ch,is,it,jp,nl-be,no,pt,uk,us
Keyboard NullString
// name of the ssh key pair used to login to the virtual machine
KeyPair NullString
// host name for the virtual machine
Name NullString
// list of network ids used by virtual machine. Can't be specified with
// ipToNetworkList parameter
NetworkIds []string
// Deploy vm for the project
ProjectId ID
// Optional field to resize root disk on deploy. Only applies to template-based
// deployments. Analogous to details[0].rootdisksize, which takes precedence
// over this parameter if both are provided
RootDiskSize NullNumber
// comma separated list of security groups id that going to be applied to the
// virtual machine. Should be passed only when vm is created from a zone with
// Basic Network support. Mutually exclusive with securitygroupnames parameter
SecurityGroupIds []string
// comma separated list of security groups names that going to be applied to the
// virtual machine. Should be passed only when vm is created from a zone with
// Basic Network support. Mutually exclusive with securitygroupids parameter
SecurityGroupNames []string
// the ID of the service offering for the virtual machine
ServiceOfferingId ID
// the arbitrary size for the DATADISK volume. Mutually exclusive with
// diskOfferingId
Size NullNumber
// true if network offering supports specifying ip ranges; defaulted to true if
// not specified
StartVm NullBool
// the ID of the template for the virtual machine
TemplateId ID
// an optional binary data that can be sent to the virtual machine upon a
// successful deployment. This binary data must be base64 encoded before adding
// it to the request. Using HTTP GET (via querystring), you can send up to 2KB
// of data after base64 encoding. Using HTTP POST(via POST body), you can send
// up to 32K of data after base64 encoding.
UserData NullString
// availability zone for the virtual machine
ZoneId ID
}
DeployVirtualMachine represents the paramter of DeployVirtualMachine
func NewDeployVirtualMachineParameter ¶
func NewDeployVirtualMachineParameter(serviceofferingid string, templateid string, zoneid string) (p *DeployVirtualMachineParameter)
type DestroyVirtualMachineParameter ¶
type DestroyVirtualMachineParameter struct {
// If true is passed, the vm is expunged immediately. False by default.
// Parameter can be passed to the call by ROOT/Domain admin only
Expunge NullBool
// The ID of the virtual machine
Id ID
}
DestroyVirtualMachine represents the paramter of DestroyVirtualMachine
func NewDestroyVirtualMachineParameter ¶
func NewDestroyVirtualMachineParameter(id string) (p *DestroyVirtualMachineParameter)
type DetachVolumeParameter ¶
type DetachVolumeParameter struct {
// the device ID on the virtual machine where volume is detached from
DeviceId ID
// the ID of the disk volume
Id ID
// the ID of the virtual machine where the volume is detached from
VirtualMachineId ID
}
DetachVolume represents the paramter of DetachVolume
func NewDetachVolumeParameter ¶
func NewDetachVolumeParameter() (p *DetachVolumeParameter)
type DisableAccountParameter ¶
type DisableAccountParameter struct {
// Disables specified account.
Account NullString
// Disables specified account in this domain.
DomainId ID
// Account id
Id ID
// If true, only lock the account; else disable the account
Lock NullBool
}
DisableAccount represents the paramter of DisableAccount
func NewDisableAccountParameter ¶
func NewDisableAccountParameter(lock bool) (p *DisableAccountParameter)
type DisableStaticNatParameter ¶
type DisableStaticNatParameter struct {
// the public IP address id for which static nat feature is being disableed
IpAddressId ID
}
DisableStaticNat represents the paramter of DisableStaticNat
func NewDisableStaticNatParameter ¶
func NewDisableStaticNatParameter(ipaddressid string) (p *DisableStaticNatParameter)
type DisableUserParameter ¶
type DisableUserParameter struct {
// Disables user by user ID.
Id ID
}
DisableUser represents the paramter of DisableUser
func NewDisableUserParameter ¶
func NewDisableUserParameter(id string) (p *DisableUserParameter)
type DisassociateIpAddressParameter ¶
type DisassociateIpAddressParameter struct {
// the id of the public ip address to disassociate
Id ID
}
DisassociateIpAddress represents the paramter of DisassociateIpAddress
func NewDisassociateIpAddressParameter ¶
func NewDisassociateIpAddressParameter(id string) (p *DisassociateIpAddressParameter)
type DiskOffering ¶
type DiskOffering struct {
ResourceBase
// the cache mode to use for this disk offering. none, writeback or writethrough
CacheMode NullString `json:"cachemode"`
// the date this disk offering was created
Created NullString `json:"created"`
// bytes read rate of the disk offering
DiskBytesReadRate NullNumber `json:"diskbytesreadrate"`
// bytes write rate of the disk offering
DiskBytesWriteRate NullNumber `json:"diskbyteswriterate"`
// io requests read rate of the disk offering
DiskIopsReadRate NullNumber `json:"diskiopsreadrate"`
// io requests write rate of the disk offering
DiskIopsWriteRate NullNumber `json:"diskiopswriterate"`
// the size of the disk offering in GB
DiskSize NullNumber `json:"disksize"`
// whether to display the offering to the end user or not.
DisplayOffering NullBool `json:"displayoffering"`
// an alternate display text of the disk offering.
DisplayText NullString `json:"displaytext"`
// the domain name this disk offering belongs to. Ignore this information as it
// is not currently applicable.
Domain NullString `json:"domain"`
// the domain ID this disk offering belongs to. Ignore this information as it is
// not currently applicable.
DomainId ID `json:"domainid"`
// Hypervisor snapshot reserve space as a percent of a volume (for managed
// storage using Xen or VMware)
HypervisorSnapshotReserve NullNumber `json:"hypervisorsnapshotreserve"`
// unique ID of the disk offering
Id ID `json:"id"`
// true if disk offering uses custom size, false otherwise
IsCustomized NullBool `json:"iscustomized"`
// true if disk offering uses custom iops, false otherwise
IsCustomizedIops NullBool `json:"iscustomizediops"`
// the max iops of the disk offering
MaxIops NullNumber `json:"maxiops"`
// the min iops of the disk offering
MinIops NullNumber `json:"miniops"`
// the name of the disk offering
Name NullString `json:"name"`
// provisioning type used to create volumes. Valid values are thin, sparse, fat.
ProvisioningType NullString `json:"provisioningtype"`
// the storage type for this disk offering
StorageType NullString `json:"storagetype"`
// the tags for the disk offering
Tags NullString `json:"tags"`
}
type Domain ¶
type Domain struct {
ResourceBase
// whether the domain has one or more sub-domains
HasChild NullBool `json:"haschild"`
// the ID of the domain
Id ID `json:"id"`
// the level of the domain
Level NullNumber `json:"level"`
// the name of the domain
Name NullString `json:"name"`
// the network domain
NetworkDomain NullString `json:"networkdomain"`
// the domain ID of the parent domain
ParentDomainId ID `json:"parentdomainid"`
// the domain name of the parent domain
ParentDomainName NullString `json:"parentdomainname"`
// the path of the domain
Path NullString `json:"path"`
}
type EnableAccountParameter ¶
type EnableAccountParameter struct {
// Enables specified account.
Account NullString
// Enables specified account in this domain.
DomainId ID
// Account id
Id ID
}
EnableAccount represents the paramter of EnableAccount
func NewEnableAccountParameter ¶
func NewEnableAccountParameter() (p *EnableAccountParameter)
type EnableStaticNatParameter ¶
type EnableStaticNatParameter struct {
// the public IP address id for which static nat feature is being enabled
IpAddressId ID
// The network of the vm the static nat will be enabled for. Required when
// public Ip address is not associated with any Guest network yet (VPC case)
NetworkId ID
// the ID of the virtual machine for enabling static nat feature
VirtualMachineId ID
// VM guest nic Secondary ip address for the port forwarding rule
VmGuestIp NullString
}
EnableStaticNat represents the paramter of EnableStaticNat
func NewEnableStaticNatParameter ¶
func NewEnableStaticNatParameter(ipaddressid string, virtualmachineid string) (p *EnableStaticNatParameter)
type EnableStorageMaintenanceParameter ¶
type EnableStorageMaintenanceParameter struct {
// Primary storage ID
Id ID
}
EnableStorageMaintenance represents the paramter of EnableStorageMaintenance
func NewEnableStorageMaintenanceParameter ¶
func NewEnableStorageMaintenanceParameter(id string) (p *EnableStorageMaintenanceParameter)
type EnableUserParameter ¶
type EnableUserParameter struct {
// Enables user by user ID.
Id ID
}
EnableUser represents the paramter of EnableUser
func NewEnableUserParameter ¶
func NewEnableUserParameter(id string) (p *EnableUserParameter)
type ExpungeVirtualMachineParameter ¶
type ExpungeVirtualMachineParameter struct {
// The ID of the virtual machine
Id ID
}
ExpungeVirtualMachine represents the paramter of ExpungeVirtualMachine
func NewExpungeVirtualMachineParameter ¶
func NewExpungeVirtualMachineParameter(id string) (p *ExpungeVirtualMachineParameter)
type ExtractTemplateParameter ¶
type ExtractTemplateParameter struct {
// the ID of the template
Id ID
// the mode of extraction - HTTP_DOWNLOAD or FTP_UPLOAD
Mode NullString
// the url to which the ISO would be extracted
Url NullString
// the ID of the zone where the ISO is originally located
ZoneId ID
}
ExtractTemplate represents the paramter of ExtractTemplate
func NewExtractTemplateParameter ¶
func NewExtractTemplateParameter(id string, mode string) (p *ExtractTemplateParameter)
type ExtractVolumeParameter ¶
type ExtractVolumeParameter struct {
// the ID of the volume
Id ID
// the mode of extraction - HTTP_DOWNLOAD or FTP_UPLOAD
Mode NullString
// the url to which the volume would be extracted
Url NullString
// the ID of the zone where the volume is located
ZoneId ID
}
ExtractVolume represents the paramter of ExtractVolume
func NewExtractVolumeParameter ¶
func NewExtractVolumeParameter(id string, mode string, zoneid string) (p *ExtractVolumeParameter)
type FindHostsForMigrationParameter ¶
type FindHostsForMigrationParameter struct {
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
// find hosts to which this VM can be migrated and flag the hosts with enough
// CPU/RAM to host the VM
VirtualMachineId ID
}
FindHostsForMigration represents the paramter of FindHostsForMigration
func NewFindHostsForMigrationParameter ¶
func NewFindHostsForMigrationParameter(virtualmachineid string) (p *FindHostsForMigrationParameter)
type FindStoragePoolsForMigrationParameter ¶
type FindStoragePoolsForMigrationParameter struct {
// the ID of the volume
Id ID
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
FindStoragePoolsForMigration represents the paramter of FindStoragePoolsForMigration
func NewFindStoragePoolsForMigrationParameter ¶
func NewFindStoragePoolsForMigrationParameter(id string) (p *FindStoragePoolsForMigrationParameter)
type FirewallRule ¶
type FirewallRule struct {
ResourceBase
// the cidr list to forward traffic from
CidrList NullString `json:"cidrlist"`
// the ending port of firewall rule's port range
EndPort NullString `json:"endport"`
// is rule for display to the regular user
ForDisplay NullBool `json:"fordisplay"`
// error code for this icmp message
IcmpCode NullNumber `json:"icmpcode"`
// type of the icmp message being sent
IcmpType NullNumber `json:"icmptype"`
// the ID of the firewall rule
Id ID `json:"id"`
// the public ip address for the firewall rule
IpAddress NullString `json:"ipaddress"`
// the public ip address id for the firewall rule
IpAddressId ID `json:"ipaddressid"`
// the network id of the firewall rule
NetworkId ID `json:"networkid"`
// the protocol of the firewall rule
Protocol NullString `json:"protocol"`
// the starting port of firewall rule's port range
StartPort NullString `json:"startport"`
// the state of the rule
State NullString `json:"state"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
}
type GetUserParameter ¶
type GetUserParameter struct {
// API key of the user
UserApiKey NullString
}
GetUser represents the paramter of GetUser
func NewGetUserParameter ¶
func NewGetUserParameter(userapikey string) (p *GetUserParameter)
type GetVMPasswordParameter ¶
type GetVMPasswordParameter struct {
// The ID of the virtual machine
Id ID
}
GetVMPassword represents the paramter of GetVMPassword
func NewGetVMPasswordParameter ¶
func NewGetVMPasswordParameter(id string) (p *GetVMPasswordParameter)
type GetVirtualMachineUserDataParameter ¶
type GetVirtualMachineUserDataParameter struct {
// The ID of the virtual machine
VirtualMachineId ID
}
GetVirtualMachineUserData represents the paramter of GetVirtualMachineUserData
func NewGetVirtualMachineUserDataParameter ¶
func NewGetVirtualMachineUserDataParameter(virtualmachineid string) (p *GetVirtualMachineUserDataParameter)
type GpuGroup ¶
type GpuGroup struct {
ResourceBase
// Remaining capacity in terms of no. of more VMs that can be deployped with
// this vGPU type
RemainingCapacity NullNumber `json:"remainingcapacity`
// Maximum displays per user
MaxHeads NullNumber `json:"maxheads"`
// Maximum X resolution per display
MaxResolutionX NullNumber `json:"maxresolutionx"`
// Model Name of vGPU
VgpuType NullString `json:"vgputype"`
// Maximum no. of vgpu per gpu card (pgpu)
MaxVgpuPerPgpu NullNumber `json:"maxvgpuperpgpu"`
// Maximum vgpu can be created with this vgpu type on the given gpu group
MaxCapacity NullNumber `json:"maxcapacity"`
// Maximum Y resolution per display
MaxResolutionY NullNumber `json:"maxresolutiony"`
// Video RAM for this vGPU type
VideoRam NullNumber `json:"videoram"`
}
type Host ¶
type Host struct {
ResourceBase
// the cpu average load on the host
AverageLoad NullNumber `json:"averageload"`
// capabilities of the host
Capabilities NullString `json:"capabilities"`
// the cluster ID of the host
ClusterId ID `json:"clusterid"`
// the cluster name of the host
ClusterName NullString `json:"clustername"`
// the cluster type of the cluster that host belongs to
ClusterType NullString `json:"clustertype"`
// the amount of the host's CPU currently allocated
CpuAllocated NullString `json:"cpuallocated"`
// the CPU number of the host
CpuNumber NullNumber `json:"cpunumber"`
// the number of CPU sockets on the host
CpuSockets NullNumber `json:"cpusockets"`
// the CPU speed of the host
CpuSpeed NullNumber `json:"cpuspeed"`
// the amount of the host's CPU currently used
CpuUsed NullString `json:"cpuused"`
// the amount of the host's CPU after applying the cpu.overprovisioning.factor
CpuWithOverProvisioning NullString `json:"cpuwithoverprovisioning"`
// the date and time the host was created
Created NullString `json:"created"`
// Host details in key/value pairs.
Details map[string]string `json:"details"`
// true if the host is disconnected. False otherwise.
Disconnected NullString `json:"disconnected"`
// the host's currently allocated disk size
DiskSizeAllocated NullNumber `json:"disksizeallocated"`
// the total disk size of the host
DiskSizeTotal NullNumber `json:"disksizetotal"`
// events available for the host
Events NullString `json:"events"`
// GPU cards present in the host
GpuGroup []GpuGroup `json:"gpugroup"`
// true if the host is Ha host (dedicated to vms started by HA process; false
// otherwise
HaHost NullBool `json:"hahost"`
// true if this host has enough CPU and RAM capacity to migrate a VM to it,
// false otherwise
HasEnoughCapacity NullBool `json:"hasenoughcapacity"`
// comma-separated list of tags for the host
HostTags NullString `json:"hosttags"`
// the host hypervisor
Hypervisor NullString `json:"hypervisor"`
// the hypervisor version
HypervisorVersion NullString `json:"hypervisorversion"`
// the ID of the host
Id ID `json:"id"`
// the IP address of the host
IpAddress NullString `json:"ipaddress"`
// true if local storage is active, false otherwise
IsLocalStorageActive NullBool `json:"islocalstorageactive"`
// the date and time the host was last pinged
LastPinged NullString `json:"lastpinged"`
// the management server ID of the host
ManagementServerId ID `json:"managementserverid"`
// the amount of the host's memory currently allocated
MemoryAllocated NullNumber `json:"memoryallocated"`
// the memory total of the host
MemoryTotal NullNumber `json:"memorytotal"`
// the amount of the host's memory currently used
MemoryUsed NullNumber `json:"memoryused"`
// the name of the host
Name NullString `json:"name"`
// the incoming network traffic on the host
NetworkKbsRead NullNumber `json:"networkkbsread"`
// the outgoing network traffic on the host
NetworkKbsWrite NullNumber `json:"networkkbswrite"`
// the OS category ID of the host
OsCategoryId ID `json:"oscategoryid"`
// the OS category name of the host
OsCategoryName NullString `json:"oscategoryname"`
// the Pod ID of the host
PodId ID `json:"podid"`
// the Pod name of the host
PodName NullString `json:"podname"`
// the date and time the host was removed
Removed NullString `json:"removed"`
// true if migrating a vm to this host requires storage motion, false otherwise
RequiresStorageMotion NullBool `json:"requiresstoragemotion"`
// the resource state of the host
ResourceState NullString `json:"resourcestate"`
// the state of the host
State NullString `json:"state"`
// true if this host is suitable(has enough capacity and satisfies all
// conditions like hosttags, max guests vm limit etc) to migrate a VM to it ,
// false otherwise
SuitableForMigration NullBool `json:"suitableformigration"`
// the host type
Type NullString `json:"type"`
// the host version
Version NullString `json:"version"`
// the Zone ID of the host
ZoneId ID `json:"zoneid"`
// the Zone name of the host
ZoneName NullString `json:"zonename"`
}
type HostTag ¶
type HostTag struct {
ResourceBase
// the host ID of the host tag
HostId ID `json:"hostid"`
// the ID of the host tag
Id ID `json:"id"`
// the name of the host tag
Name NullString `json:"name"`
}
type ImageStore ¶
type ImageStore struct {
ResourceBase
// the details of the image store
Details []NullString `json:"details"`
// the ID of the image store
Id ID `json:"id"`
// the name of the image store
Name NullString `json:"name"`
// the protocol of the image store
Protocol NullString `json:"protocol"`
// the provider name of the image store
ProviderName NullString `json:"providername"`
// the scope of the image store
Scope NullString `json:"scope"`
// the url of the image store
Url NullString `json:"url"`
// the Zone ID of the image store
ZoneId ID `json:"zoneid"`
// the Zone name of the image store
ZoneName NullString `json:"zonename"`
}
type ImportLdapUsersParameter ¶
type ImportLdapUsersParameter struct {
// Creates the user under the specified account. If no account is specified, the
// username will be used as the account name.
Account NullString
// details for account used to store specific parameters
AccountDetails map[string]string
// Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain
// admin
AccountType NullNumber
// Specifies the domain to which the ldap users are to be imported. If no domain
// is specified, a domain will created using group parameter. If the group is
// also not specified, a domain name based on the OU information will be
// created. If no OU hierarchy exists, will be defaulted to ROOT domain
DomainId ID
// Specifies the group name from which the ldap users are to be imported. If no
// group is specified, all the users will be imported.
Group NullString
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
// Specifies a timezone for this command. For more information on the timezone
// parameter, see Time Zone Format.
TimeZone NullString
}
ImportLdapUsers represents the paramter of ImportLdapUsers
func NewImportLdapUsersParameter ¶
func NewImportLdapUsersParameter(accounttype int) (p *ImportLdapUsersParameter)
type IpForwardingRule ¶
type IpForwardingRule struct {
ResourceBase
// the cidr list to forward traffic from
CidrList NullString `json:"cidrlist"`
// is firewall for display to the regular user
ForDisplay NullBool `json:"fordisplay"`
// the ID of the port forwarding rule
Id ID `json:"id"`
// the public ip address for the port forwarding rule
IpAddress NullString `json:"ipaddress"`
// the public ip address id for the port forwarding rule
IpAddressId ID `json:"ipaddressid"`
// the id of the guest network the port forwarding rule belongs to
NetworkId ID `json:"networkid"`
// the ending port of port forwarding rule's private port range
PrivateEndPort NullString `json:"privateendport"`
// the starting port of port forwarding rule's private port range
PrivatePort NullString `json:"privateport"`
// the protocol of the port forwarding rule
Protocol NullString `json:"protocol"`
// the ending port of port forwarding rule's private port range
PublicEndPort NullString `json:"publicendport"`
// the starting port of port forwarding rule's public port range
PublicPort NullString `json:"publicport"`
// the state of the rule
State NullString `json:"state"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
// the VM display name for the port forwarding rule
VirtualMachineDisplayName NullString `json:"virtualmachinedisplayname"`
// the VM ID for the port forwarding rule
VirtualMachineId ID `json:"virtualmachineid"`
// the VM name for the port forwarding rule
VirtualMachineName NullString `json:"virtualmachinename"`
// the vm ip address for the port forwarding rule
VmGuestIp NullString `json:"vmguestip"`
}
type Keypair ¶
type Keypair struct {
Privatekey NullString `json:"privatekey"`
}
type LdapUser ¶
type LdapUser struct {
ResourceBase
// The user's domain
Domain NullString `json:"domain"`
// The user's email
Email NullString `json:"email"`
// The user's firstname
FirstName NullString `json:"firstname"`
// The user's lastname
LastName NullString `json:"lastname"`
// The user's principle
Principal NullString `json:"principal"`
// The user's username
UserName NullString `json:"username"`
}
type ListAccountsParameter ¶
type ListAccountsParameter struct {
// list accounts by account type. Valid account types are 1 (admin), 2
// (domain-admin), and 0 (user).
AccountType NullNumber
// list only resources belonging to the domain specified
DomainId ID
// list account by account ID
Id ID
// list accounts by cleanuprequred attribute (values are true or false)
IsCleanupRequired NullBool
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list account by account name
Name NullString
Page NullNumber
PageSize NullNumber
// list accounts by state. Valid states are enabled, disabled, and locked.
State NullString
}
ListAccounts represents the paramter of ListAccounts
func NewListAccountsParameter ¶
func NewListAccountsParameter() (p *ListAccountsParameter)
type ListAffinityGroupTypesParameter ¶
type ListAffinityGroupTypesParameter struct {
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
ListAffinityGroupTypes represents the paramter of ListAffinityGroupTypes
func NewListAffinityGroupTypesParameter ¶
func NewListAffinityGroupTypesParameter() (p *ListAffinityGroupTypesParameter)
type ListAffinityGroupsParameter ¶
type ListAffinityGroupsParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list the affinity group by the id provided
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// lists affinity groups by name
Name NullString
Page NullNumber
PageSize NullNumber
// lists affinity groups by type
Type NullString
// lists affinity groups by virtual machine id
VirtualMachineId ID
}
ListAffinityGroups represents the paramter of ListAffinityGroups
func NewListAffinityGroupsParameter ¶
func NewListAffinityGroupsParameter() (p *ListAffinityGroupsParameter)
type ListClustersParameter ¶
type ListClustersParameter struct {
// lists clusters by allocation state
AllocationState NullString
// lists clusters by cluster type
ClusterType NullString
// lists clusters by hypervisor type
Hypervisor NullString
// lists clusters by the cluster ID
Id ID
// List by keyword
Keyword NullString
// whether this cluster is managed by cloudstack
ManagedState NullString
// lists clusters by the cluster name
Name NullString
Page NullNumber
PageSize NullNumber
// lists clusters by Pod ID
PodId ID
// flag to display the capacity of the clusters
ShowCapacities NullBool
// lists clusters by Zone ID
ZoneId ID
}
ListClusters represents the paramter of ListClusters
func NewListClustersParameter ¶
func NewListClustersParameter() (p *ListClustersParameter)
type ListDedicatedClustersParameter ¶
type ListDedicatedClustersParameter struct {
// the name of the account associated with the cluster. Must be used with
// domainId.
Account NullString
// list dedicated clusters by affinity group
AffinityGroupId ID
// the ID of the cluster
ClusterId ID
// the ID of the domain associated with the cluster
DomainId ID
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
ListDedicatedClusters represents the paramter of ListDedicatedClusters
func NewListDedicatedClustersParameter ¶
func NewListDedicatedClustersParameter() (p *ListDedicatedClustersParameter)
type ListDedicatedHostsParameter ¶
type ListDedicatedHostsParameter struct {
// the name of the account associated with the host. Must be used with domainId.
Account NullString
// list dedicated hosts by affinity group
AffinityGroupId ID
// the ID of the domain associated with the host
DomainId ID
// the ID of the host
HostId ID
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
ListDedicatedHosts represents the paramter of ListDedicatedHosts
func NewListDedicatedHostsParameter ¶
func NewListDedicatedHostsParameter() (p *ListDedicatedHostsParameter)
type ListDedicatedPodsParameter ¶
type ListDedicatedPodsParameter struct {
// the name of the account associated with the pod. Must be used with domainId.
Account NullString
// list dedicated pods by affinity group
AffinityGroupId ID
// the ID of the domain associated with the pod
DomainId ID
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
// the ID of the pod
PodId ID
}
ListDedicatedPods represents the paramter of ListDedicatedPods
func NewListDedicatedPodsParameter ¶
func NewListDedicatedPodsParameter() (p *ListDedicatedPodsParameter)
type ListDiskOfferingsParameter ¶
type ListDiskOfferingsParameter struct {
// the ID of the domain of the disk offering.
DomainId ID
// ID of the disk offering
Id ID
// List by keyword
Keyword NullString
// name of the disk offering
Name NullString
Page NullNumber
PageSize NullNumber
}
ListDiskOfferings represents the paramter of ListDiskOfferings
func NewListDiskOfferingsParameter ¶
func NewListDiskOfferingsParameter() (p *ListDiskOfferingsParameter)
type ListDomainChildrenParameter ¶
type ListDomainChildrenParameter struct {
// list children domain by parent domain ID.
Id ID
// to return the entire tree, use the value "true". To return the first level
// children, use the value "false".
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list children domains by name
Name NullString
Page NullNumber
PageSize NullNumber
}
ListDomainChildren represents the paramter of ListDomainChildren
func NewListDomainChildrenParameter ¶
func NewListDomainChildrenParameter() (p *ListDomainChildrenParameter)
type ListDomainsParameter ¶
type ListDomainsParameter struct {
// List domain by domain ID.
Id ID
// List by keyword
Keyword NullString
// List domains by domain level.
Level NullNumber
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// List domain by domain name.
Name NullString
Page NullNumber
PageSize NullNumber
}
ListDomains represents the paramter of ListDomains
func NewListDomainsParameter ¶
func NewListDomainsParameter() (p *ListDomainsParameter)
type ListEgressFirewallRulesParameter ¶
type ListEgressFirewallRulesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
ForDisplay NullBool
// Lists rule with the specified ID.
Id ID
// the id of IP address of the firwall services
IpAddressId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list firewall rules for ceratin network
NetworkId ID
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// List resources by tags (key/value pairs)
Tags map[string]string
}
ListEgressFirewallRules represents the paramter of ListEgressFirewallRules
func NewListEgressFirewallRulesParameter ¶
func NewListEgressFirewallRulesParameter() (p *ListEgressFirewallRulesParameter)
type ListFirewallRulesParameter ¶
type ListFirewallRulesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
ForDisplay NullBool
// Lists rule with the specified ID.
Id ID
// the id of IP address of the firwall services
IpAddressId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list firewall rules for ceratin network
NetworkId ID
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// List resources by tags (key/value pairs)
Tags map[string]string
}
ListFirewallRules represents the paramter of ListFirewallRules
func NewListFirewallRulesParameter ¶
func NewListFirewallRulesParameter() (p *ListFirewallRulesParameter)
type ListHostTagsParameter ¶
type ListHostTagsParameter struct {
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
ListHostTags represents the paramter of ListHostTags
func NewListHostTagsParameter ¶
func NewListHostTagsParameter() (p *ListHostTagsParameter)
type ListHostsParameter ¶
type ListHostsParameter struct {
// lists hosts existing in particular cluster
ClusterId ID
// comma separated list of host details requested, value can be a list of [ min,
// all, capacity, events, stats]
Details []string
// if true, list only hosts dedicated to HA
HaHost NullBool
// hypervisor type of host: XenServer,KVM,VMware,Hyperv,BareMetal,Simulator
Hypervisor NullString
// the id of the host
Id ID
// List by keyword
Keyword NullString
// the name of the host
Name NullString
Page NullNumber
PageSize NullNumber
// the Pod ID for the host
PodId ID
// list hosts by resource state. Resource state represents current state
// determined by admin of host, valule can be one of [Enabled, Disabled,
// Unmanaged, PrepareForMaintenance, ErrorInMaintenance, Maintenance, Error]
ResourceState NullString
// the state of the host
State NullString
// the host type
Type NullString
// lists hosts in the same cluster as this VM and flag hosts with enough CPU/RAm
// to host this VM
VirtualMachineId ID
// the Zone ID for the host
ZoneId ID
}
ListHosts represents the paramter of ListHosts
func NewListHostsParameter ¶
func NewListHostsParameter() (p *ListHostsParameter)
type ListImageStoresParameter ¶
type ListImageStoresParameter struct {
// the ID of the storage pool
Id ID
// List by keyword
Keyword NullString
// the name of the image store
Name NullString
Page NullNumber
PageSize NullNumber
// the image store protocol
Protocol NullString
// the image store provider
Provider NullString
// the Zone ID for the image store
ZoneId ID
}
ListImageStores represents the paramter of ListImageStores
func NewListImageStoresParameter ¶
func NewListImageStoresParameter() (p *ListImageStoresParameter)
type ListIpForwardingRulesParameter ¶
type ListIpForwardingRulesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// Lists rule with the specified ID.
Id ID
// list the rule belonging to this public ip address
IpAddressId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// Lists all rules applied to the specified Vm.
VirtualMachineId ID
}
ListIpForwardingRules represents the paramter of ListIpForwardingRules
func NewListIpForwardingRulesParameter ¶
func NewListIpForwardingRulesParameter() (p *ListIpForwardingRulesParameter)
type ListLdapUsersParameter ¶
type ListLdapUsersParameter struct {
// List by keyword
Keyword NullString
// Determines whether all ldap users are returned or just non-cloudstack users
ListType NullString
Page NullNumber
PageSize NullNumber
}
ListLdapUsers represents the paramter of ListLdapUsers
func NewListLdapUsersParameter ¶
func NewListLdapUsersParameter() (p *ListLdapUsersParameter)
type ListLoadBalancerRuleInstancesParameter ¶
type ListLoadBalancerRuleInstancesParameter struct {
// true if listing all virtual machines currently applied to the load balancer
// rule; default is true
Applied NullBool
// the ID of the load balancer rule
Id ID
// List by keyword
Keyword NullString
// true if lb rule vm ip information to be included; default is false
LbVmIps NullBool
Page NullNumber
PageSize NullNumber
}
ListLoadBalancerRuleInstances represents the paramter of ListLoadBalancerRuleInstances
func NewListLoadBalancerRuleInstancesParameter ¶
func NewListLoadBalancerRuleInstancesParameter(id string) (p *ListLoadBalancerRuleInstancesParameter)
type ListLoadBalancerRulesParameter ¶
type ListLoadBalancerRulesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
ForDisplay NullBool
// the ID of the load balancer rule
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// the name of the load balancer rule
Name NullString
// list by network id the rule belongs to
NetworkId ID
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// the public IP address id of the load balancer rule
PublicIpId ID
// List resources by tags (key/value pairs)
Tags map[string]string
// the ID of the virtual machine of the load balancer rule
VirtualMachineId ID
// the availability zone ID
ZoneId ID
}
ListLoadBalancerRules represents the paramter of ListLoadBalancerRules
func NewListLoadBalancerRulesParameter ¶
func NewListLoadBalancerRulesParameter() (p *ListLoadBalancerRulesParameter)
type ListNetworkOfferingsParameter ¶
type ListNetworkOfferingsParameter struct {
// the availability of network offering. Default value is Required
Availability NullString
// list network offerings by display text
DisplayText NullString
// the network offering can be used only for network creation inside the VPC
ForVpc NullBool
// list network offerings by guest type: Shared or Isolated
GuestIpType NullString
// list network offerings by id
Id ID
// true if need to list only default network offerings. Default value is false
IsDefault NullBool
// true if offering has tags specified
IsTagged NullBool
// List by keyword
Keyword NullString
// list network offerings by name
Name NullString
// the ID of the network. Pass this in if you want to see the available network
// offering that a network can be changed to.
NetworkId ID
Page NullNumber
PageSize NullNumber
// true if need to list only netwok offerings where source nat is supported,
// false otherwise
Sourcenatsupported NullBool
// true if need to list only network offerings which support specifying ip
// ranges
SpecifyIpRanges NullBool
// the tags for the network offering.
SpecifyVlan NullBool
// list network offerings by state
State NullString
// list network offerings supporting certain services
SupportedServices []string
// list network offerings by tags
Tags NullString
// list by traffic type
TrafficType NullString
// list netowrk offerings available for network creation in specific zone
ZoneId ID
}
ListNetworkOfferings represents the paramter of ListNetworkOfferings
func NewListNetworkOfferingsParameter ¶
func NewListNetworkOfferingsParameter() (p *ListNetworkOfferingsParameter)
type ListNetworksParameter ¶
type ListNetworksParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list networks by ACL (access control list) type. Supported values are Account
// and Domain
AclType NullString
// list networks available for vm deployment
CanUseForDeploy NullBool
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
DisplayNetwork NullBool
// list only resources belonging to the domain specified
DomainId ID
// the network belongs to vpc
ForVpc NullBool
// list networks by id
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// true if network is system, false otherwise
IsSystem NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// list networks by physical network id
PhysicalNetworkId ID
// list objects by project
ProjectId ID
// list networks by restartRequired
ReStartRequired NullBool
// true if need to list only networks which support specifying ip ranges
SpecifyIpRanges NullBool
// list networks supporting certain services
SupportedServices []string
// List resources by tags (key/value pairs)
Tags map[string]string
// type of the traffic
TrafficType NullString
// the type of the network. Supported values are: Isolated and Shared
Type NullString
// List networks by VPC
VpcId ID
// the Zone ID of the network
ZoneId ID
}
ListNetworks represents the paramter of ListNetworks
func NewListNetworksParameter ¶
func NewListNetworksParameter() (p *ListNetworksParameter)
type ListPodsParameter ¶
type ListPodsParameter struct {
// list pods by allocation state
AllocationState NullString
// list Pods by ID
Id ID
// List by keyword
Keyword NullString
// list Pods by name
Name NullString
Page NullNumber
PageSize NullNumber
// flag to display the capacity of the pods
ShowCapacities NullBool
// list Pods by Zone ID
ZoneId ID
}
ListPods represents the paramter of ListPods
func NewListPodsParameter ¶
func NewListPodsParameter() (p *ListPodsParameter)
type ListPortForwardingRulesParameter ¶
type ListPortForwardingRulesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
ForDisplay NullBool
// Lists rule with the specified ID.
Id ID
// the id of IP address of the port forwarding services
IpAddressId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list port forwarding rules for certain network
NetworkId ID
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// List resources by tags (key/value pairs)
Tags map[string]string
}
ListPortForwardingRules represents the paramter of ListPortForwardingRules
func NewListPortForwardingRulesParameter ¶
func NewListPortForwardingRulesParameter() (p *ListPortForwardingRulesParameter)
type ListProjectAccountsParameter ¶
type ListProjectAccountsParameter struct {
// list accounts of the project by account name
Account NullString
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
// id of the project
ProjectId ID
// list accounts of the project by role
Role NullString
}
ListProjectAccounts represents the paramter of ListProjectAccounts
func NewListProjectAccountsParameter ¶
func NewListProjectAccountsParameter(projectid string) (p *ListProjectAccountsParameter)
type ListProjectInvitationsParameter ¶
type ListProjectInvitationsParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// if true, list only active invitations - having Pending state and ones that
// are not timed out yet
ActiveOnly NullBool
// list only resources belonging to the domain specified
DomainId ID
// list invitations by id
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// list by project id
ProjectId ID
// list invitations by state
State NullString
}
ListProjectInvitations represents the paramter of ListProjectInvitations
func NewListProjectInvitationsParameter ¶
func NewListProjectInvitationsParameter() (p *ListProjectInvitationsParameter)
type ListProjectsParameter ¶
type ListProjectsParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list projects by display text
DisplayText NullString
// list only resources belonging to the domain specified
DomainId ID
// list projects by project ID
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// list projects by name
Name NullString
Page NullNumber
PageSize NullNumber
// list projects by state
State NullString
// List projects by tags (key/value pairs)
Tags map[string]string
}
ListProjects represents the paramter of ListProjects
func NewListProjectsParameter ¶
func NewListProjectsParameter() (p *ListProjectsParameter)
type ListPublicIpAddressesParameter ¶
type ListPublicIpAddressesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// limits search results to allocated public IP addresses
AllocatedOnly NullBool
// lists all public IP addresses associated to the network specified
AssociatedNetworkId ID
// list only resources belonging to the domain specified
DomainId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
ForDisplay NullBool
// list only ips used for load balancing
ForLoadBalancing NullBool
// the virtual network for the IP address
ForVirtualNetwork NullBool
// lists ip address by id
Id ID
// lists the specified IP address
IpAddress NullString
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// list only source nat ip addresses
IsSourceNat NullBool
// list only static nat ip addresses
IsStaticNat NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// lists all public IP addresses by physical network id
PhysicalNetworkId ID
// list objects by project
ProjectId ID
// lists all public IP addresses by state
State NullString
// List resources by tags (key/value pairs)
Tags map[string]string
// lists all public IP addresses by VLAN ID
VlanId ID
// List ips belonging to the VPC
VpcId ID
// lists all public IP addresses by Zone ID
ZoneId ID
}
ListPublicIpAddresses represents the paramter of ListPublicIpAddresses
func NewListPublicIpAddressesParameter ¶
func NewListPublicIpAddressesParameter() (p *ListPublicIpAddressesParameter)
type ListSecondaryStagingStoresParameter ¶
type ListSecondaryStagingStoresParameter struct {
// the ID of the staging store
Id ID
// List by keyword
Keyword NullString
// the name of the staging store
Name NullString
Page NullNumber
PageSize NullNumber
// the staging store protocol
Protocol NullString
// the staging store provider
Provider NullString
// the Zone ID for the staging store
ZoneId ID
}
ListSecondaryStagingStores represents the paramter of ListSecondaryStagingStores
func NewListSecondaryStagingStoresParameter ¶
func NewListSecondaryStagingStoresParameter() (p *ListSecondaryStagingStoresParameter)
type ListSecurityGroupsParameter ¶
type ListSecurityGroupsParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// list the security group by the id provided
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// lists security groups by name
SecurityGroupName NullString
// List resources by tags (key/value pairs)
Tags map[string]string
// lists security groups by virtual machine id
VirtualMachineId ID
}
ListSecurityGroups represents the paramter of ListSecurityGroups
func NewListSecurityGroupsParameter ¶
func NewListSecurityGroupsParameter() (p *ListSecurityGroupsParameter)
type ListServiceOfferingsParameter ¶
type ListServiceOfferingsParameter struct {
// the ID of the domain associated with the service offering
DomainId ID
// ID of the service offering
Id ID
// is this a system vm offering
IsSystem NullBool
// List by keyword
Keyword NullString
// name of the service offering
Name NullString
Page NullNumber
PageSize NullNumber
// the system VM type. Possible types are "consoleproxy", "secondarystoragevm"
// or "domainrouter".
SystemVmType NullString
// the ID of the virtual machine. Pass this in if you want to see the available
// service offering that a virtual machine can be changed to.
VirtualMachineId ID
}
ListServiceOfferings represents the paramter of ListServiceOfferings
func NewListServiceOfferingsParameter ¶
func NewListServiceOfferingsParameter() (p *ListServiceOfferingsParameter)
type ListStoragePoolsParameter ¶
type ListStoragePoolsParameter struct {
// list storage pools belongig to the specific cluster
ClusterId ID
// the ID of the storage pool
Id ID
// the IP address for the storage pool
IpAddress NullString
// List by keyword
Keyword NullString
// the name of the storage pool
Name NullString
Page NullNumber
PageSize NullNumber
// the storage pool path
Path NullString
// the Pod ID for the storage pool
PodId ID
// the ID of the storage pool
Scope NullString
// the Zone ID for the storage pool
ZoneId ID
}
ListStoragePools represents the paramter of ListStoragePools
func NewListStoragePoolsParameter ¶
func NewListStoragePoolsParameter() (p *ListStoragePoolsParameter)
type ListStorageProvidersParameter ¶
type ListStorageProvidersParameter struct {
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
// the type of storage provider: either primary or image
Type NullString
}
ListStorageProviders represents the paramter of ListStorageProviders
func NewListStorageProvidersParameter ¶
func NewListStorageProvidersParameter(typ string) (p *ListStorageProvidersParameter)
type ListStorageTagsParameter ¶
type ListStorageTagsParameter struct {
// List by keyword
Keyword NullString
Page NullNumber
PageSize NullNumber
}
ListStorageTags represents the paramter of ListStorageTags
func NewListStorageTagsParameter ¶
func NewListStorageTagsParameter() (p *ListStorageTagsParameter)
type ListTagsParameter ¶
type ListTagsParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list by customer name
Customer NullString
// list only resources belonging to the domain specified
DomainId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// list by key
Key NullString
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// list by resource id
ResourceId ID
// list by resource type
ResourceType NullString
// list by value
Value NullString
}
ListTags represents the paramter of ListTags
func NewListTagsParameter ¶
func NewListTagsParameter() (p *ListTagsParameter)
type ListTemplatePermissionsParameter ¶
type ListTemplatePermissionsParameter struct {
// the template ID
Id ID
}
ListTemplatePermissions represents the paramter of ListTemplatePermissions
func NewListTemplatePermissionsParameter ¶
func NewListTemplatePermissionsParameter(id string) (p *ListTemplatePermissionsParameter)
type ListTemplatesParameter ¶
type ListTemplatesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list only resources belonging to the domain specified
DomainId ID
// the hypervisor for which to restrict the search
Hypervisor NullString
// the template ID
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// the template name
Name NullString
Page NullNumber
PageSize NullNumber
// list objects by project
ProjectId ID
// show removed templates as well
ShowRemoved NullBool
// List resources by tags (key/value pairs)
Tags map[string]string
// possible values are "featured", "self",
// "selfexecutable","sharedexecutable","executable", and "community". * featured
// : templates that have been marked as featured and public. * self : templates
// that have been registered or created by the calling user. * selfexecutable :
// same as self, but only returns templates that can be used to deploy a new VM.
// * sharedexecutable : templates ready to be deployed that have been granted to
// the calling user by another user. * executable : templates that are owned by
// the calling user, or public templates, that can be used to deploy a VM. *
// community : templates that have been marked as public but not featured. * all
// : all templates (only usable by admins).
Templatefilter NullString
// list templates by zoneId
ZoneId ID
}
ListTemplates represents the paramter of ListTemplates
func NewListTemplatesParameter ¶
func NewListTemplatesParameter(templatefilter string) (p *ListTemplatesParameter)
type ListUsersParameter ¶
type ListUsersParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// List users by account type. Valid types include admin, domain-admin,
// read-only-admin, or user.
AccountType NullNumber
// list only resources belonging to the domain specified
DomainId ID
// List user by ID.
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
Page NullNumber
PageSize NullNumber
// List users by state of the user account.
State NullString
// List user by the username
UserName NullString
}
ListUsers represents the paramter of ListUsers
func NewListUsersParameter ¶
func NewListUsersParameter() (p *ListUsersParameter)
type ListVirtualMachinesParameter ¶
type ListVirtualMachinesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list vms by affinity group
AffinityGroupId ID
// comma separated list of host details requested, value can be a list of [all,
// group, nics, stats, secgrp, tmpl, servoff, diskoff, iso, volume, min,
// affgrp]. If no parameter is passed in, the details will be defaulted to all
Details []string
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
DisplayVm NullBool
// list only resources belonging to the domain specified
DomainId ID
// list by network type; true if need to list vms using Virtual Network, false
// otherwise
ForVirtualNetwork NullBool
// the group ID
GroupId ID
// the host ID
HostId ID
// the target hypervisor for the template
Hypervisor NullString
// the ID of the virtual machine
Id ID
// the IDs of the virtual machines, mutually exclusive with id
Ids []string
// list vms by iso
IsoId ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// name of the virtual machine
Name NullString
// list by network id
NetworkId ID
Page NullNumber
PageSize NullNumber
// the pod ID
PodId ID
// list objects by project
ProjectId ID
// list by the service offering
ServiceOfferingId ID
// state of the virtual machine
State NullString
// the storage ID where vm's volumes belong to
StorageId ID
// List resources by tags (key/value pairs)
Tags map[string]string
// list vms by template
TemplateId ID
// list vms by vpc
VpcId ID
// the availability zone ID
ZoneId ID
}
ListVirtualMachines represents the paramter of ListVirtualMachines
func NewListVirtualMachinesParameter ¶
func NewListVirtualMachinesParameter() (p *ListVirtualMachinesParameter)
type ListVolumesParameter ¶
type ListVolumesParameter struct {
// list resources by account. Must be used with the domainId parameter.
Account NullString
// list volumes by disk offering
DiskOfferingId ID
// list resources by display flag; only ROOT admin is eligible to pass this
// parameter
DisplayVolume NullBool
// list only resources belonging to the domain specified
DomainId ID
// list volumes on specified host
HostId ID
// the ID of the disk volume
Id ID
// defaults to false, but if true, lists all resources from the parent specified
// by the domainId till leaves.
IsRecursive NullBool
// List by keyword
Keyword NullString
// If set to false, list only resources belonging to the command's caller; if
// set to true - list resources that the caller is authorized to see. Default
// value is false
ListAll NullBool
// the name of the disk volume
Name NullString
Page NullNumber
PageSize NullNumber
// the pod id the disk volume belongs to
PodId ID
// list objects by project
ProjectId ID
// the ID of the storage pool, available to ROOT admin only
StorageId ID
// List resources by tags (key/value pairs)
Tags map[string]string
// the type of disk volume
Type NullString
// the ID of the virtual machine
VirtualMachineId ID
// the ID of the availability zone
ZoneId ID
}
ListVolumes represents the paramter of ListVolumes
func NewListVolumesParameter ¶
func NewListVolumesParameter() (p *ListVolumesParameter)
type ListZonesParameter ¶
type ListZonesParameter struct {
// true if you want to retrieve all available Zones. False if you only want to
// return the Zones from which you have at least one VM. Default is false.
Available NullBool
// the ID of the domain associated with the zone
DomainId ID
// the ID of the zone
Id ID
// List by keyword
Keyword NullString
// the name of the zone
Name NullString
// the network type of the zone that the virtual machine belongs to
NetworkType NullString
Page NullNumber
PageSize NullNumber
// flag to display the capacity of the zones
ShowCapacities NullBool
// List zones by resource tags (key/value pairs)
Tags map[string]string
}
ListZones represents the paramter of ListZones
func NewListZonesParameter ¶
func NewListZonesParameter() (p *ListZonesParameter)
type LoadBalancerRule ¶
type LoadBalancerRule struct {
ResourceBase
// the account of the load balancer rule
Account NullString `json:"account"`
// the load balancer algorithm (source, roundrobin, leastconn)
Algorithm NullString `json:"algorithm"`
// the cidr list to forward traffic from
CidrList NullString `json:"cidrlist"`
// the description of the load balancer
Description NullString `json:"description"`
// the domain of the load balancer rule
Domain NullString `json:"domain"`
// the domain ID of the load balancer rule
DomainId ID `json:"domainid"`
// is rule for display to the regular user
ForDisplay NullBool `json:"fordisplay"`
// the load balancer rule ID
Id ID `json:"id"`
// the name of the load balancer
Name NullString `json:"name"`
// the id of the guest network the lb rule belongs to
NetworkId ID `json:"networkid"`
// the private port
PrivatePort NullString `json:"privateport"`
// the project name of the load balancer
Project NullString `json:"project"`
// the project id of the load balancer
ProjectId ID `json:"projectid"`
// the protocol of the loadbalanacer rule
Protocol NullString `json:"protocol"`
// the public ip address
PublicIp NullString `json:"publicip"`
// the public ip address id
PublicIpId ID `json:"publicipid"`
// the public port
PublicPort NullString `json:"publicport"`
// the state of the rule
State NullString `json:"state"`
// the list of resource tags associated with load balancer
Tags []Tag `json:"tags"`
// the id of the zone the rule belongs to
ZoneId ID `json:"zoneid"`
}
type LoadBalancerRuleInstance ¶
type LoadBalancerRuleInstance struct {
ResourceBase
// IP addresses of the vm set of lb rule
LbVmIpAddresses []NullString `json:"lbvmipaddresses"`
// the user vm set for lb rule
LoadBalancerRuleInstance NullString `json:"loadbalancerruleinstance"`
}
type LockAccountParameter ¶
type LockAccountParameter struct {
// Locks the specified account.
Account NullString
// Locks the specified account on this domain.
DomainId ID
}
LockAccount represents the paramter of LockAccount
func NewLockAccountParameter ¶
func NewLockAccountParameter(account string, domainid string) (p *LockAccountParameter)
type LockUserParameter ¶
type LockUserParameter struct {
// Locks user by user ID.
Id ID
}
LockUser represents the paramter of LockUser
func NewLockUserParameter ¶
func NewLockUserParameter(id string) (p *LockUserParameter)
type LogInResponse ¶
type LogInResponse struct {
Username NullString `json:"username"`
UserId ID `json:"userid"`
Password NullString `json:"password"`
DomainId ID `json:"domainid"`
Timeout NullString `json:"timeout"`
Account NullString `json:"account"`
FirstName NullString `json:"firstname"`
LastName NullString `json:"lastname"`
Type NullString `json:"type"`
TimeZone NullString `json:"timezone"`
TimeZoneOffset NullString `json:"timezoneoffset"`
SessionKey NullString `json:"sessionkey"`
}
type LogOutResponse ¶
type LogOutResponse struct {
Description NullString `json:"description"`
}
type MarkDefaultZoneForAccountParameter ¶
type MarkDefaultZoneForAccountParameter struct {
// Name of the account that is to be marked.
Account NullString
// Marks the account that belongs to the specified domain.
DomainId ID
// The Zone ID with which the account is to be marked.
ZoneId ID
}
MarkDefaultZoneForAccount represents the paramter of MarkDefaultZoneForAccount
func NewMarkDefaultZoneForAccountParameter ¶
func NewMarkDefaultZoneForAccountParameter(account string, domainid string, zoneid string) (p *MarkDefaultZoneForAccountParameter)
type MigrateVirtualMachineParameter ¶
type MigrateVirtualMachineParameter struct {
// Destination Host ID to migrate VM to. Required for live migrating a VM from
// host to host
HostId ID
// Destination storage pool ID to migrate VM volumes to. Required for migrating
// the root disk volume
StorageId ID
// the ID of the virtual machine
VirtualMachineId ID
}
MigrateVirtualMachine represents the paramter of MigrateVirtualMachine
func NewMigrateVirtualMachineParameter ¶
func NewMigrateVirtualMachineParameter(virtualmachineid string) (p *MigrateVirtualMachineParameter)
type MigrateVirtualMachineWithVolumeParameter ¶
type MigrateVirtualMachineWithVolumeParameter struct {
// Destination Host ID to migrate VM to.
HostId ID
// Map of pool to which each volume should be migrated (volume/pool pair)
MigrateTo map[string]string
// the ID of the virtual machine
VirtualMachineId ID
}
MigrateVirtualMachineWithVolume represents the paramter of MigrateVirtualMachineWithVolume
func NewMigrateVirtualMachineWithVolumeParameter ¶
func NewMigrateVirtualMachineWithVolumeParameter(hostid string, virtualmachineid string) (p *MigrateVirtualMachineWithVolumeParameter)
type MigrateVolumeParameter ¶
type MigrateVolumeParameter struct {
// if the volume should be live migrated when it is attached to a running vm
LiveMigrate NullBool
// destination storage pool ID to migrate the volume to
StorageId ID
// the ID of the volume
VolumeId ID
}
MigrateVolume represents the paramter of MigrateVolume
func NewMigrateVolumeParameter ¶
func NewMigrateVolumeParameter(storageid string, volumeid string) (p *MigrateVolumeParameter)
type Network ¶
type Network struct {
ResourceBase
// the owner of the network
Account NullString `json:"account"`
// ACL Id associated with the VPC network
AclId ID `json:"aclid"`
// acl type - access type to the network
AclType NullString `json:"acltype"`
// Broadcast domain type of the network
BroadcastDomainType NullString `json:"broadcastdomaintype"`
// broadcast uri of the network. This parameter is visible to ROOT admins only
BroadcastUri NullString `json:"broadcasturi"`
// list networks available for vm deployment
CanUseForDeploy NullBool `json:"canusefordeploy"`
// Cloudstack managed address space, all CloudStack managed VMs get IP address
// from CIDR
Cidr NullString `json:"cidr"`
// an optional field, whether to the display the network to the end user or not.
DisplayNetwork NullBool `json:"displaynetwork"`
// the displaytext of the network
DisplayText NullString `json:"displaytext"`
// the first DNS for the network
Dns1 NullString `json:"dns1"`
// the second DNS for the network
Dns2 NullString `json:"dns2"`
// the domain name of the network owner
Domain NullString `json:"domain"`
// the domain id of the network owner
DomainId ID `json:"domainid"`
// the network's gateway
Gateway NullString `json:"gateway"`
// the id of the network
Id ID `json:"id"`
// the cidr of IPv6 network
Ip6Cidr NullString `json:"ip6cidr"`
// the gateway of IPv6 network
Ip6Gateway NullString `json:"ip6gateway"`
// true if network is default, false otherwise
IsDefault NullBool `json:"isdefault"`
// list networks that are persistent
IsPersistent NullBool `json:"ispersistent"`
// true if network is system, false otherwise
IsSystem NullBool `json:"issystem"`
// the name of the network
Name NullString `json:"name"`
// the network's netmask
Netmask NullString `json:"netmask"`
// the network CIDR of the guest network configured with IP reservation. It is
// the summation of CIDR and RESERVED_IP_RANGE
NetworkCidr NullString `json:"networkcidr"`
// the network domain
NetworkDomain NullString `json:"networkdomain"`
// availability of the network offering the network is created from
NetworkOfferingAvailability NullString `json:"networkofferingavailability"`
// true if network offering is ip conserve mode enabled
NetworkOfferingconserveMode NullBool `json:"networkofferingconservemode"`
// display text of the network offering the network is created from
NetworkOfferingDisplayText NullString `json:"networkofferingdisplaytext"`
// network offering id the network is created from
NetworkOfferingId ID `json:"networkofferingid"`
// name of the network offering the network is created from
NetworkOfferingName NullString `json:"networkofferingname"`
// the physical network id
PhysicalNetworkId ID `json:"physicalnetworkid"`
// the project name of the address
Project NullString `json:"project"`
// the project id of the ipaddress
ProjectId ID `json:"projectid"`
// related to what other network configuration
Related NullString `json:"related"`
// the network's IP range not to be used by CloudStack guest VMs and can be used
// for non CloudStack purposes
ReservedIpRange NullString `json:"reservediprange"`
// true network requires restart
ReStartRequired NullBool `json:"restartrequired"`
// the list of services
Service []NetworkService `json:"service"`
// true if network supports specifying ip ranges, false otherwise
SpecifyIpRanges NullBool `json:"specifyipranges"`
// state of the network
State NullString `json:"state"`
// true if network can span multiple zones
StrechedL2Subnet NullBool `json:"strechedl2subnet"`
// true if users from subdomains can access the domain level network
SubDomainAccess NullBool `json:"subdomainaccess"`
// the list of resource tags associated with network
Tags []Tag `json:"tags"`
// the traffic type of the network
TrafficType NullString `json:"traffictype"`
// the type of the network
Type NullString `json:"type"`
// The vlan of the network. This parameter is visible to ROOT admins only
Vlan NullString `json:"vlan"`
// VPC the network belongs to
VpcId ID `json:"vpcid"`
// zone id of the network
ZoneId ID `json:"zoneid"`
// the name of the zone the network belongs to
ZoneName NullString `json:"zonename"`
// If a network is enabled for 'streched l2 subnet' then represents zones on
// which network currently spans
ZonesNetworkspans []NullString `json:"zonesnetworkspans"`
}
type NetworkOffering ¶
type NetworkOffering struct {
ResourceBase
// availability of the network offering
Availability NullString `json:"availability"`
// true if network offering is ip conserve mode enabled
ConserveMode NullBool `json:"conservemode"`
// the date this network offering was created
Created NullString `json:"created"`
// additional key/value details tied with network offering
Details NullString `json:"details"`
// an alternate display text of the network offering.
DisplayText NullString `json:"displaytext"`
// true if guest network default egress policy is allow; false if default egress
// policy is deny
EgressDefaultPolicy NullBool `json:"egressdefaultpolicy"`
// true if network offering can be used by VPC networks only
ForVpc NullBool `json:"forvpc"`
// guest type of the network offering, can be Shared or Isolated
GuestIpType NullString `json:"guestiptype"`
// the id of the network offering
Id ID `json:"id"`
// true if network offering is default, false otherwise
IsDefault NullBool `json:"isdefault"`
// true if network offering supports persistent networks, false otherwise
IsPersistent NullBool `json:"ispersistent"`
// maximum number of concurrents connections to be handled by lb
MaxConnections NullNumber `json:"maxconnections"`
// the name of the network offering
Name NullString `json:"name"`
// data transfer rate in megabits per second allowed.
NetworkRate NullNumber `json:"networkrate"`
// the list of supported services
Service []NetworkService `json:"service"`
// the ID of the service offering used by virtual router provider
ServiceOfferingId ID `json:"serviceofferingid"`
// true if network offering supports specifying ip ranges, false otherwise
SpecifyIpRanges NullBool `json:"specifyipranges"`
// true if network offering supports vlans, false otherwise
SpecifyVlan NullBool `json:"specifyvlan"`
// state of the network offering. Can be Disabled/Enabled/Inactive
State NullString `json:"state"`
// true if network offering supports network that span multiple zones
SupportsStrechedL2Subnet NullBool `json:"supportsstrechedl2subnet"`
// the tags for the network offering
Tags NullString `json:"tags"`
// the traffic type for the network offering, supported types are Public,
// Management, Control, Guest, Vlan or Storage.
TrafficType NullString `json:"traffictype"`
}
type NetworkService ¶
type NetworkService struct {
ResourceBase
// the list of capabilities
Capability []NetworkServiceCapability `json:"capability"`
// the service name
Name NullString `json:"name"`
// the service provider name
Provider []NetworkServiceProvider `json:"provider"`
}
type NetworkServiceCapability ¶
type NetworkServiceCapability struct {
// the capability name
Name NullString `json:"name"`
// the capability value
Value NullString `json:"value"`
// can this service capability value can be choosable while creatine network offerings
CanChooseServiceCapability NullBool `json:"canchooseservicecapability"`
}
type NetworkServiceProvider ¶
type NetworkServiceProvider struct {
ResourceBase
// true if individual services can be enabled/disabled
CanEnableIndividualService NullBool `json:"canenableindividualservice"`
// the destination physical network
DestinationPhysicalNetworkId ID `json:"destinationphysicalnetworkid"`
// uuid of the network provider
Id ID `json:"id"`
// the provider name
Name NullString `json:"name"`
// the physical network this belongs to
PhysicalNetworkId ID `json:"physicalnetworkid"`
// services for this provider
ServiceList []NullString `json:"servicelist"`
// state of the network provider
State NullString `json:"state"`
}
type Nic ¶
type Nic struct {
ResourceBase
// the broadcast uri of the nic
BroadcastUri NullString `json:"broadcasturi"`
// device id for the network when plugged into the virtual machine
DeviceId ID `json:"deviceid"`
// the gateway of the nic
Gateway NullString `json:"gateway"`
// the ID of the nic
Id ID `json:"id"`
// the IPv6 address of network
Ip6Address NullString `json:"ip6address"`
// the cidr of IPv6 network
Ip6Cidr NullString `json:"ip6cidr"`
// the gateway of IPv6 network
Ip6Gateway NullString `json:"ip6gateway"`
// the ip address of the nic
IpAddress NullString `json:"ipaddress"`
// true if nic is default, false otherwise
IsDefault NullBool `json:"isdefault"`
// the isolation uri of the nic
IsolationUri NullString `json:"isolationuri"`
// true if nic is default, false otherwise
MacAddress NullString `json:"macaddress"`
// the netmask of the nic
Netmask NullString `json:"netmask"`
// the ID of the corresponding network
NetworkId ID `json:"networkid"`
// the name of the corresponding network
NetworkName NullString `json:"networkname"`
// the Secondary ipv4 addr of nic
SecondaryIp []NullString `json:"secondaryip"`
// the traffic type of the nic
TrafficType NullString `json:"traffictype"`
// the type of the nic
Type NullString `json:"type"`
// Id of the vm to which the nic belongs
VirtualMachineId ID `json:"virtualmachineid"`
}
type NullBase ¶
type NullBase struct {
// contains filtered or unexported fields
}
Base struct of Nullable
func (NullBase) MarshalJSON ¶
func (*NullBase) UnmarshalJSON ¶
type NullBool ¶
type NullBool struct {
NullBase
}
Nullable Bool
func (*NullBool) UnmarshalJSON ¶
type NullNumber ¶
type NullNumber struct {
NullString
}
Nullable Number Value is stored as string.
func (NullNumber) MarshalJSON ¶
func (nn NullNumber) MarshalJSON() ([]byte, error)
func (*NullNumber) Set ¶
func (nn *NullNumber) Set(value interface{}) error
Set Value. Value is converted to string by fmt.Sprint
func (*NullNumber) UnmarshalJSON ¶
func (nn *NullNumber) UnmarshalJSON(b []byte) error
type NullString ¶
type NullString struct {
NullBase
}
Nullable String
func (*NullString) Set ¶
func (ns *NullString) Set(value interface{}) error
Set Value. Value is converted by fmt.Sprint
func (*NullString) UnmarshalJSON ¶
func (ns *NullString) UnmarshalJSON(b []byte) error
type Pod ¶
type Pod struct {
ResourceBase
// the allocation state of the Pod
AllocationState NullString `json:"allocationstate"`
// the capacity of the Pod
Capacity []Capacity `json:"capacity"`
// the ending IP for the Pod
EndIp NullString `json:"endip"`
// the gateway of the Pod
Gateway NullString `json:"gateway"`
// the ID of the Pod
Id ID `json:"id"`
// the name of the Pod
Name NullString `json:"name"`
// the netmask of the Pod
Netmask NullString `json:"netmask"`
// the starting IP for the Pod
StartIp NullString `json:"startip"`
// the Zone ID of the Pod
ZoneId ID `json:"zoneid"`
// the Zone name of the Pod
ZoneName NullString `json:"zonename"`
}
type PortForwardingRule ¶
type PortForwardingRule struct {
ResourceBase
// the cidr list to forward traffic from
CidrList NullString `json:"cidrlist"`
// is firewall for display to the regular user
ForDisplay NullBool `json:"fordisplay"`
// the ID of the port forwarding rule
Id ID `json:"id"`
// the public ip address for the port forwarding rule
IpAddress NullString `json:"ipaddress"`
// the public ip address id for the port forwarding rule
IpAddressId ID `json:"ipaddressid"`
// the id of the guest network the port forwarding rule belongs to
NetworkId ID `json:"networkid"`
// the ending port of port forwarding rule's private port range
PrivateEndPort NullString `json:"privateendport"`
// the starting port of port forwarding rule's private port range
PrivatePort NullString `json:"privateport"`
// the protocol of the port forwarding rule
Protocol NullString `json:"protocol"`
// the ending port of port forwarding rule's private port range
PublicEndPort NullString `json:"publicendport"`
// the starting port of port forwarding rule's public port range
PublicPort NullString `json:"publicport"`
// the state of the rule
State NullString `json:"state"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
// the VM display name for the port forwarding rule
VirtualMachineDisplayName NullString `json:"virtualmachinedisplayname"`
// the VM ID for the port forwarding rule
VirtualMachineId ID `json:"virtualmachineid"`
// the VM name for the port forwarding rule
VirtualMachineName NullString `json:"virtualmachinename"`
// the vm ip address for the port forwarding rule
VmGuestIp NullString `json:"vmguestip"`
}
type PrepareHostForMaintenanceParameter ¶
type PrepareHostForMaintenanceParameter struct {
// the host ID
Id ID
}
PrepareHostForMaintenance represents the paramter of PrepareHostForMaintenance
func NewPrepareHostForMaintenanceParameter ¶
func NewPrepareHostForMaintenanceParameter(id string) (p *PrepareHostForMaintenanceParameter)
type PrepareTemplateParameter ¶
type PrepareTemplateParameter struct {
// template ID of the template to be prepared in primary storage(s).
TemplateId ID
// zone ID of the template to be prepared in primary storage(s).
ZoneId ID
}
PrepareTemplate represents the paramter of PrepareTemplate
func NewPrepareTemplateParameter ¶
func NewPrepareTemplateParameter(templateid string, zoneid string) (p *PrepareTemplateParameter)
type Project ¶
type Project struct {
ResourceBase
// the account name of the project's owner
Account NullString `json:"account"`
// the total number of cpu cores available to be created for this project
CpuAvailable NullString `json:"cpuavailable"`
// the total number of cpu cores the project can own
CpuLimit NullString `json:"cpulimit"`
// the total number of cpu cores owned by project
CpuTotal NullNumber `json:"cputotal"`
// the displaytext of the project
DisplayText NullString `json:"displaytext"`
// the domain name where the project belongs to
Domain NullString `json:"domain"`
// the domain id the project belongs to
DomainId ID `json:"domainid"`
// the id of the project
Id ID `json:"id"`
// the total number of public ip addresses available for this project to acquire
IpAvailable NullString `json:"ipavailable"`
// the total number of public ip addresses this project can acquire
IpLimit NullString `json:"iplimit"`
// the total number of public ip addresses allocated for this project
IpTotal NullNumber `json:"iptotal"`
// the total memory (in MB) available to be created for this project
MemoryAvailable NullString `json:"memoryavailable"`
// the total memory (in MB) the project can own
MemoryLimit NullString `json:"memorylimit"`
// the total memory (in MB) owned by project
MemoryTotal NullNumber `json:"memorytotal"`
// the name of the project
Name NullString `json:"name"`
// the total number of networks available to be created for this project
NetworkAvailable NullString `json:"networkavailable"`
// the total number of networks the project can own
NetworkLimit NullString `json:"networklimit"`
// the total number of networks owned by project
NetworkTotal NullNumber `json:"networktotal"`
// the total primary storage space (in GiB) available to be used for this
// project
PrimaryStorageAvailable NullString `json:"primarystorageavailable"`
// the total primary storage space (in GiB) the project can own
PrimaryStorageLimit NullString `json:"primarystoragelimit"`
// the total primary storage space (in GiB) owned by project
PrimaryStorageTotal NullNumber `json:"primarystoragetotal"`
// the total secondary storage space (in GiB) available to be used for this
// project
SecondaryStorageAvailable NullString `json:"secondarystorageavailable"`
// the total secondary storage space (in GiB) the project can own
SecondaryStorageLimit NullString `json:"secondarystoragelimit"`
// the total secondary storage space (in GiB) owned by project
SecondaryStorageTotal NullNumber `json:"secondarystoragetotal"`
// the total number of snapshots available for this project
SnapshotAvailable NullString `json:"snapshotavailable"`
// the total number of snapshots which can be stored by this project
SnapshotLimit NullString `json:"snapshotlimit"`
// the total number of snapshots stored by this project
SnapshotTotal NullNumber `json:"snapshottotal"`
// the state of the project
State NullString `json:"state"`
// the list of resource tags associated with vm
Tags []Tag `json:"tags"`
// the total number of templates available to be created by this project
TemplateAvailable NullString `json:"templateavailable"`
// the total number of templates which can be created by this project
TemplateLimit NullString `json:"templatelimit"`
// the total number of templates which have been created by this project
TemplateTotal NullNumber `json:"templatetotal"`
// the total number of virtual machines available for this project to acquire
VmAvailable NullString `json:"vmavailable"`
// the total number of virtual machines that can be deployed by this project
VmLimit NullString `json:"vmlimit"`
// the total number of virtual machines running for this project
VmRunning NullNumber `json:"vmrunning"`
// the total number of virtual machines stopped for this project
VmStopped NullNumber `json:"vmstopped"`
// the total number of virtual machines deployed by this project
VmTotal NullNumber `json:"vmtotal"`
// the total volume available for this project
VolumeAvailable NullString `json:"volumeavailable"`
// the total volume which can be used by this project
VolumeLimit NullString `json:"volumelimit"`
// the total volume being used by this project
VolumeTotal NullNumber `json:"volumetotal"`
// the total number of vpcs available to be created for this project
VpcAvailable NullString `json:"vpcavailable"`
// the total number of vpcs the project can own
VpcLimit NullString `json:"vpclimit"`
// the total number of vpcs owned by project
VpcTotal NullNumber `json:"vpctotal"`
}
type ProjectAccount ¶
type ProjectAccount struct {
ResourceBase
// project id
ProjectId ID `json:"projectid"`
// project name
Project NullString `json:"project"`
// the id of the account
AccountId ID `json:"accountid"`
// the name of the account
Account NullString `json:"account"`
// account type (admin, domain-admin, user)
AccountType NullNumber `json:"accounttype"`
// account role in the project (regular,owner)
Role NullString `json:"role"`
// id of the Domain the account belongs too
DomainId ID `json:"domainid"`
// name of the Domain the account belongs too
Domain NullString `json:"domain"`
// the list of users associated with account
User []User `json:"user"`
}
type ProjectInvitation ¶
type ProjectInvitation struct {
ResourceBase
// the account name of the project's owner
Account NullString `json:"account"`
// the domain name where the project belongs to
Domain NullString `json:"domain"`
// the domain id the project belongs to
DomainId ID `json:"domainid"`
// the email the invitation was sent to
Email NullString `json:"email"`
// the id of the invitation
Id ID `json:"id"`
// the name of the project
Project NullString `json:"project"`
// the id of the project
ProjectId ID `json:"projectid"`
// the invitation state
State NullString `json:"state"`
}
type PublicIpAddress ¶
type PublicIpAddress struct {
ResourceBase
// the account the public IP address is associated with
Account NullString `json:"account"`
// date the public IP address was acquired
Allocated NullString `json:"allocated"`
// the ID of the Network associated with the IP address
AssociatedNetworkId ID `json:"associatednetworkid"`
// the name of the Network associated with the IP address
AssociatedNetworkName NullString `json:"associatednetworkname"`
// the domain the public IP address is associated with
Domain NullString `json:"domain"`
// the domain ID the public IP address is associated with
DomainId ID `json:"domainid"`
// is public ip for display to the regular user
ForDisplay NullBool `json:"fordisplay"`
// the virtual network for the IP address
ForVirtualNetwork NullBool `json:"forvirtualnetwork"`
// public IP address id
Id ID `json:"id"`
// public IP address
IpAddress NullString `json:"ipaddress"`
// is public IP portable across the zones
IsPortable NullBool `json:"isportable"`
// true if the IP address is a source nat address, false otherwise
IsSourceNat NullBool `json:"issourcenat"`
// true if this ip is for static nat, false otherwise
IsStaticNat NullBool `json:"isstaticnat"`
// true if this ip is system ip (was allocated as a part of deployVm or
// createLbRule)
IsSystem NullBool `json:"issystem"`
// the ID of the Network where ip belongs to
NetworkId ID `json:"networkid"`
// the physical network this belongs to
PhysicalNetworkId ID `json:"physicalnetworkid"`
// the project name of the address
Project NullString `json:"project"`
// the project id of the ipaddress
ProjectId ID `json:"projectid"`
// purpose of the IP address. In Acton this value is not null for Ips with
// isSystem=true, and can have either StaticNat or LB value
Purpose NullString `json:"purpose"`
// State of the ip address. Can be: Allocatin, Allocated and Releasing
State NullString `json:"state"`
// the list of resource tags associated with ip address
Tags []Tag `json:"tags"`
// virutal machine display name the ip address is assigned to (not null only for
// static nat Ip)
VirtualMachineDisplayName NullString `json:"virtualmachinedisplayname"`
// virutal machine id the ip address is assigned to (not null only for static
// nat Ip)
VirtualMachineId ID `json:"virtualmachineid"`
// virutal machine name the ip address is assigned to (not null only for static
// nat Ip)
VirtualMachineName NullString `json:"virtualmachinename"`
// the ID of the VLAN associated with the IP address. This parameter is visible
// to ROOT admins only
VlanId ID `json:"vlanid"`
// the VLAN associated with the IP address
VlanName NullString `json:"vlanname"`
// virutal machine (dnat) ip address (not null only for static nat Ip)
VmIpAddress NullString `json:"vmipaddress"`
// VPC the ip belongs to
VpcId ID `json:"vpcid"`
// the ID of the zone the public IP address belongs to
ZoneId ID `json:"zoneid"`
// the name of the zone the public IP address belongs to
ZoneName NullString `json:"zonename"`
}
type RebootVirtualMachineParameter ¶
type RebootVirtualMachineParameter struct {
// The ID of the virtual machine
Id ID
}
RebootVirtualMachine represents the paramter of RebootVirtualMachine
func NewRebootVirtualMachineParameter ¶
func NewRebootVirtualMachineParameter(id string) (p *RebootVirtualMachineParameter)
type ReconnectHostParameter ¶
type ReconnectHostParameter struct {
// the host ID
Id ID
}
ReconnectHost represents the paramter of ReconnectHost
func NewReconnectHostParameter ¶
func NewReconnectHostParameter(id string) (p *ReconnectHostParameter)
type RecoverVirtualMachineParameter ¶
type RecoverVirtualMachineParameter struct {
// The ID of the virtual machine
Id ID
}
RecoverVirtualMachine represents the paramter of RecoverVirtualMachine
func NewRecoverVirtualMachineParameter ¶
func NewRecoverVirtualMachineParameter(id string) (p *RecoverVirtualMachineParameter)
type RegisterTemplateParameter ¶
type RegisterTemplateParameter struct {
// an optional accountName. Must be used with domainId.
Account NullString
// 32 or 64 bits support. 64 by default
Bits NullNumber
// the MD5 checksum value of this template
Checksum NullString
// Template details in key/value pairs.
Details map[string]string
// the display text of the template. This is usually used for display purposes.
DisplayText NullString
// an optional domainId. If the account parameter is used, domainId must also be
// used.
DomainId ID
// the format for the template. Possible values include QCOW2, RAW, VHD and OVA.
Format NullString
// the target hypervisor for the template
Hypervisor NullString
// true if template contains XS/VMWare tools inorder to support dynamic scaling
// of VM cpu/memory
IsDynamicallyScalable NullBool
// true if the template or its derivatives are extractable; default is false
IsExtractable NullBool
// true if this template is a featured template, false otherwise
IsFeatured NullBool
// true if the template is available to all accounts; default is true
IsPublic NullBool
// true if the template type is routing i.e., if template is used to deploy
// router
IsRouting NullBool
// the name of the template
Name NullString
// the ID of the OS Type that best represents the OS of this template.
OsTypeId ID
// true if the template supports the password reset feature; default is false
PasswordEnabled NullBool
// Register template for the project
ProjectId ID
// true if this template requires HVM
RequiresHvm NullBool
// true if the template supports the sshkey upload feature; default is false
SshKeyEnabled NullBool
// the tag for this template.
Templatetag NullString
// the URL of where the template is hosted. Possible URL include http:// and
// https://
Url NullString
// the ID of the zone the template is to be hosted on
ZoneId ID
}
RegisterTemplate represents the paramter of RegisterTemplate
type RegisterUserKeysParameter ¶
type RegisterUserKeysParameter struct {
// User id
Id ID
}
RegisterUserKeys represents the paramter of RegisterUserKeys
func NewRegisterUserKeysParameter ¶
func NewRegisterUserKeysParameter(id string) (p *RegisterUserKeysParameter)
type ReleaseDedicatedClusterParameter ¶
type ReleaseDedicatedClusterParameter struct {
// the ID of the Cluster
ClusterId ID
}
ReleaseDedicatedCluster represents the paramter of ReleaseDedicatedCluster
func NewReleaseDedicatedClusterParameter ¶
func NewReleaseDedicatedClusterParameter(clusterid string) (p *ReleaseDedicatedClusterParameter)
type ReleaseDedicatedHostParameter ¶
type ReleaseDedicatedHostParameter struct {
// the ID of the host
HostId ID
}
ReleaseDedicatedHost represents the paramter of ReleaseDedicatedHost
func NewReleaseDedicatedHostParameter ¶
func NewReleaseDedicatedHostParameter(hostid string) (p *ReleaseDedicatedHostParameter)
type ReleaseDedicatedPodParameter ¶
type ReleaseDedicatedPodParameter struct {
// the ID of the Pod
PodId ID
}
ReleaseDedicatedPod represents the paramter of ReleaseDedicatedPod
func NewReleaseDedicatedPodParameter ¶
func NewReleaseDedicatedPodParameter(podid string) (p *ReleaseDedicatedPodParameter)
type ReleaseHostReservationParameter ¶
type ReleaseHostReservationParameter struct {
// the host ID
Id ID
}
ReleaseHostReservation represents the paramter of ReleaseHostReservation
func NewReleaseHostReservationParameter ¶
func NewReleaseHostReservationParameter(id string) (p *ReleaseHostReservationParameter)
type RemoveFromLoadBalancerRuleParameter ¶
type RemoveFromLoadBalancerRuleParameter struct {
// The ID of the load balancer rule
Id ID
// the list of IDs of the virtual machines that are being removed from the load
// balancer rule (i.e. virtualMachineIds=1,2,3)
VirtualMachineIds []string
// VM ID and IP map, vmidipmap[0].vmid=1 vmidipmap[0].ip=10.1.1.75
VmIdIpmap map[string]string
}
RemoveFromLoadBalancerRule represents the paramter of RemoveFromLoadBalancerRule
func NewRemoveFromLoadBalancerRuleParameter ¶
func NewRemoveFromLoadBalancerRuleParameter(id string) (p *RemoveFromLoadBalancerRuleParameter)
type RemoveNicFromVirtualMachineParameter ¶
type RemoveNicFromVirtualMachineParameter struct {
// NIC ID
NicId ID
// Virtual Machine ID
VirtualMachineId ID
}
RemoveNicFromVirtualMachine represents the paramter of RemoveNicFromVirtualMachine
func NewRemoveNicFromVirtualMachineParameter ¶
func NewRemoveNicFromVirtualMachineParameter(nicid string, virtualmachineid string) (p *RemoveNicFromVirtualMachineParameter)
type ResetPasswordForVirtualMachineParameter ¶
type ResetPasswordForVirtualMachineParameter struct {
// The ID of the virtual machine
Id ID
}
ResetPasswordForVirtualMachine represents the paramter of ResetPasswordForVirtualMachine
func NewResetPasswordForVirtualMachineParameter ¶
func NewResetPasswordForVirtualMachineParameter(id string) (p *ResetPasswordForVirtualMachineParameter)
type ResizeVolumeParameter ¶
type ResizeVolumeParameter struct {
// new disk offering id
DiskOfferingId ID
// the ID of the disk volume
Id ID
// New maximum number of IOPS
MaxIops NullNumber
// New minimum number of IOPS
MinIops NullNumber
// Verify OK to Shrink
ShrinkOk NullBool
// New volume size in GB
Size NullNumber
}
ResizeVolume represents the paramter of ResizeVolume
func NewResizeVolumeParameter ¶
func NewResizeVolumeParameter(id string) (p *ResizeVolumeParameter)
type ResourceBase ¶
type ResourceBase struct {
// contains filtered or unexported fields
}
func (*ResourceBase) Delete ¶
func (*ResourceBase) Delete() error
func (*ResourceBase) Refresh ¶
func (*ResourceBase) Refresh() error
func (*ResourceBase) Update ¶
func (*ResourceBase) Update(map[string]interface{}) error
type RestartNetworkParameter ¶
type RestartNetworkParameter struct {
// If cleanup old network elements
Cleanup NullBool
// The id of the network to restart.
Id ID
}
RestartNetwork represents the paramter of RestartNetwork
func NewRestartNetworkParameter ¶
func NewRestartNetworkParameter(id string) (p *RestartNetworkParameter)
type RestoreVirtualMachineParameter ¶
type RestoreVirtualMachineParameter struct {
// an optional template Id to restore vm from the new template. This can be an
// ISO id in case of restore vm deployed using ISO
TemplateId ID
// Virtual Machine ID
VirtualMachineId ID
}
RestoreVirtualMachine represents the paramter of RestoreVirtualMachine
func NewRestoreVirtualMachineParameter ¶
func NewRestoreVirtualMachineParameter(virtualmachineid string) (p *RestoreVirtualMachineParameter)
type Result ¶
type Result struct {
ResourceBase
// any text associated with the success or failure
DisplayText NullString `json:"displaytext"`
// true if operation is executed successfully
Success NullBool `json:"success"`
}
type RevokeSecurityGroupEgressParameter ¶
type RevokeSecurityGroupEgressParameter struct {
// The ID of the egress rule
Id ID
}
RevokeSecurityGroupEgress represents the paramter of RevokeSecurityGroupEgress
func NewRevokeSecurityGroupEgressParameter ¶
func NewRevokeSecurityGroupEgressParameter(id string) (p *RevokeSecurityGroupEgressParameter)
type RevokeSecurityGroupIngressParameter ¶
type RevokeSecurityGroupIngressParameter struct {
// The ID of the ingress rule
Id ID
}
RevokeSecurityGroupIngress represents the paramter of RevokeSecurityGroupIngress
func NewRevokeSecurityGroupIngressParameter ¶
func NewRevokeSecurityGroupIngressParameter(id string) (p *RevokeSecurityGroupIngressParameter)
type ScaleVirtualMachineParameter ¶
type ScaleVirtualMachineParameter struct {
// name value pairs of custom parameters for cpu,memory and cpunumber. example
// details[i].name=value
Details map[string]string
// The ID of the virtual machine
Id ID
// the ID of the service offering for the virtual machine
ServiceOfferingId ID
}
ScaleVirtualMachine represents the paramter of ScaleVirtualMachine
func NewScaleVirtualMachineParameter ¶
func NewScaleVirtualMachineParameter(id string, serviceofferingid string) (p *ScaleVirtualMachineParameter)
type SecurityGroup ¶
type SecurityGroup struct {
ResourceBase
// the account owning the security group
Account NullString `json:"account"`
// the description of the security group
Description NullString `json:"description"`
// the domain name of the security group
Domain NullString `json:"domain"`
// the domain ID of the security group
DomainId ID `json:"domainid"`
// the list of egress rules associated with the security group
EgressRule []SecurityGroupEgress `json:"egressrule"`
// the ID of the security group
Id ID `json:"id"`
// the list of ingress rules associated with the security group
IngressRule []SecurityGroupIngress `json:"ingressrule"`
// the name of the security group
Name NullString `json:"name"`
// the project name of the group
Project NullString `json:"project"`
// the project id of the group
ProjectId ID `json:"projectid"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
}
type SecurityGroupEgress ¶
type SecurityGroupEgress struct {
ResourceBase
// account owning the security group rule
Account NullString `json:"account"`
// the CIDR notation for the base IP address of the security group rule
Cidr NullString `json:"cidr"`
// the ending IP of the security group rule
EndPort NullNumber `json:"endport"`
// the code for the ICMP message response
IcmpCode NullNumber `json:"icmpcode"`
// the type of the ICMP message response
IcmpType NullNumber `json:"icmptype"`
// the protocol of the security group rule
Protocol NullString `json:"protocol"`
// the id of the security group rule
RuleId ID `json:"ruleid"`
// security group name
SecurityGroupName NullString `json:"securitygroupname"`
// the starting IP of the security group rule
StartPort NullNumber `json:"startport"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
}
type SecurityGroupIngress ¶
type SecurityGroupIngress struct {
ResourceBase
// account owning the security group rule
Account NullString `json:"account"`
// the CIDR notation for the base IP address of the security group rule
Cidr NullString `json:"cidr"`
// the ending IP of the security group rule
EndPort NullNumber `json:"endport"`
// the code for the ICMP message response
IcmpCode NullNumber `json:"icmpcode"`
// the type of the ICMP message response
IcmpType NullNumber `json:"icmptype"`
// the protocol of the security group rule
Protocol NullString `json:"protocol"`
// the id of the security group rule
RuleId ID `json:"ruleid"`
// security group name
SecurityGroupName NullString `json:"securitygroupname"`
// the starting IP of the security group rule
StartPort NullNumber `json:"startport"`
// the list of resource tags associated with the rule
Tags []Tag `json:"tags"`
}
type ServiceOffering ¶
type ServiceOffering struct {
ResourceBase
// the number of CPU
CpuNumber NullNumber `json:"cpunumber"`
// the clock rate CPU speed in Mhz
CpuSpeed NullNumber `json:"cpuspeed"`
// the date this service offering was created
Created NullString `json:"created"`
// is this a default system vm offering
DefaultUse NullBool `json:"defaultuse"`
// deployment strategy used to deploy VM.
DeploymentPlanner NullString `json:"deploymentplanner"`
// bytes read rate of the service offering
DiskBytesReadRate NullNumber `json:"diskbytesreadrate"`
// bytes write rate of the service offering
DiskBytesWriteRate NullNumber `json:"diskbyteswriterate"`
// io requests read rate of the service offering
DiskIopsReadRate NullNumber `json:"diskiopsreadrate"`
// io requests write rate of the service offering
DiskIopsWriteRate NullNumber `json:"diskiopswriterate"`
// an alternate display text of the service offering.
DisplayText NullString `json:"displaytext"`
// Domain name for the offering
Domain NullString `json:"domain"`
// the domain id of the service offering
DomainId ID `json:"domainid"`
// the host tag for the service offering
HostTags NullString `json:"hosttags"`
// Hypervisor snapshot reserve space as a percent of a volume (for managed
// storage using Xen or VMware)
HypervisorSnapshotReserve NullNumber `json:"hypervisorsnapshotreserve"`
// the id of the service offering
Id ID `json:"id"`
// is true if the offering is customized
IsCustomized NullBool `json:"iscustomized"`
// true if disk offering uses custom iops, false otherwise
IsCustomizedIops NullBool `json:"iscustomizediops"`
// is this a system vm offering
IsSystem NullBool `json:"issystem"`
// true if the vm needs to be volatile, i.e., on every reboot of vm from API
// root disk is discarded and creates a new root disk
IsVolatile NullBool `json:"isvolatile"`
// restrict the CPU usage to committed service offering
LimitCpuUse NullBool `json:"limitcpuuse"`
// the max iops of the disk offering
MaxIops NullNumber `json:"maxiops"`
// the memory in MB
Memory NullNumber `json:"memory"`
// the min iops of the disk offering
MinIops NullNumber `json:"miniops"`
// the name of the service offering
Name NullString `json:"name"`
// data transfer rate in megabits per second allowed.
NetworkRate NullNumber `json:"networkrate"`
// the ha support in the service offering
OfferHa NullBool `json:"offerha"`
// provisioning type used to create volumes. Valid values are thin, sparse, fat.
ProvisioningType NullString `json:"provisioningtype"`
// additional key/value details tied with this service offering
ServiceOfferingDetails map[string]string `json:"serviceofferingdetails"`
// the storage type for this service offering
StorageType NullString `json:"storagetype"`
// is this a the systemvm type for system vm offering
SystemVmType NullString `json:"systemvmtype"`
// the tags for the service offering
Tags NullString `json:"tags"`
}
type StartVirtualMachineParameter ¶
type StartVirtualMachineParameter struct {
// Deployment planner to use for vm allocation. Available to ROOT admin only
DeploymentPlanner NullString
// destination Host ID to deploy the VM to - parameter available for root admin
// only
HostId ID
// The ID of the virtual machine
Id ID
}
StartVirtualMachine represents the paramter of StartVirtualMachine
func NewStartVirtualMachineParameter ¶
func NewStartVirtualMachineParameter(id string) (p *StartVirtualMachineParameter)
type StopVirtualMachineParameter ¶
type StopVirtualMachineParameter struct {
// Force stop the VM (vm is marked as Stopped even when command fails to be send
// to the backend). The caller knows the VM is stopped.
Forced NullBool
// The ID of the virtual machine
Id ID
}
StopVirtualMachine represents the paramter of StopVirtualMachine
func NewStopVirtualMachineParameter ¶
func NewStopVirtualMachineParameter(id string) (p *StopVirtualMachineParameter)
type StoragePool ¶
type StoragePool struct {
ResourceBase
// IOPS CloudStack can provision from this storage pool
CapacityIops NullNumber `json:"capacityiops"`
// the ID of the cluster for the storage pool
ClusterId ID `json:"clusterid"`
// the name of the cluster for the storage pool
ClusterName NullString `json:"clustername"`
// the date and time the storage pool was created
Created NullString `json:"created"`
// the host's currently allocated disk size
DiskSizeAllocated NullNumber `json:"disksizeallocated"`
// the total disk size of the storage pool
DiskSizeTotal NullNumber `json:"disksizetotal"`
// the host's currently used disk size
DiskSizeUsed NullNumber `json:"disksizeused"`
// the hypervisor type of the storage pool
Hypervisor NullString `json:"hypervisor"`
// the ID of the storage pool
Id ID `json:"id"`
// the IP address of the storage pool
IpAddress NullString `json:"ipaddress"`
// the name of the storage pool
Name NullString `json:"name"`
// the overprovisionfactor for the storage pool
OverProvisionFactor NullString `json:"overprovisionfactor"`
// the storage pool path
Path NullString `json:"path"`
// the Pod ID of the storage pool
PodId ID `json:"podid"`
// the Pod name of the storage pool
PodName NullString `json:"podname"`
// the scope of the storage pool
Scope NullString `json:"scope"`
// the state of the storage pool
State NullString `json:"state"`
// the storage pool capabilities
StorageCapabilities map[string]string `json:"storagecapabilities"`
// true if this pool is suitable to migrate a volume, false otherwise
SuitableForMigration NullBool `json:"suitableformigration"`
// the tags for the storage pool
Tags NullString `json:"tags"`
// the storage pool type
Type NullString `json:"type"`
// the Zone ID of the storage pool
ZoneId ID `json:"zoneid"`
// the Zone name of the storage pool
ZoneName NullString `json:"zonename"`
}
type StorageProvider ¶
type StorageProvider struct {
ResourceBase
// the name of the storage provider
Name NullString `json:"name"`
// the type of the storage provider: primary or image provider
Type NullString `json:"type"`
}
type StorageTag ¶
type StorageTag struct {
ResourceBase
// the ID of the storage tag
Id ID `json:"id"`
// the name of the storage tag
Name NullString `json:"name"`
// the pool ID of the storage tag
PoolId ID `json:"poolid"`
}
type SuspendProjectParameter ¶
type SuspendProjectParameter struct {
// id of the project to be suspended
Id ID
}
SuspendProject represents the paramter of SuspendProject
func NewSuspendProjectParameter ¶
func NewSuspendProjectParameter(id string) (p *SuspendProjectParameter)
type Tag ¶
type Tag struct {
ResourceBase
// the account associated with the tag
Account NullString `json:"account"`
// customer associated with the tag
Customer NullString `json:"customer"`
// the domain associated with the tag
Domain NullString `json:"domain"`
// the ID of the domain associated with the tag
DomainId ID `json:"domainid"`
// tag key name
Key NullString `json:"key"`
// the project name where tag belongs to
Project NullString `json:"project"`
// the project id the tag belongs to
ProjectId ID `json:"projectid"`
// id of the resource
ResourceId ID `json:"resourceid"`
// resource type
ResourceType NullString `json:"resourcetype"`
// tag value
Value NullString `json:"value"`
}
type Template ¶
type Template struct {
ResourceBase
// the account name to which the template belongs
Account NullString `json:"account"`
// the account id to which the template belongs
AccountId ID `json:"accountid"`
// true if the ISO is bootable, false otherwise
Bootable NullBool `json:"bootable"`
// checksum of the template
Checksum NullString `json:"checksum"`
// the date this template was created
Created NullString `json:"created"`
// true if the template is managed across all Zones, false otherwise
CrossZones NullBool `json:"crosszones"`
// additional key/value details tied with template
Details map[string]string `json:"details"`
// the template display text
DisplayText NullString `json:"displaytext"`
// the name of the domain to which the template belongs
Domain NullString `json:"domain"`
// the ID of the domain to which the template belongs
DomainId ID `json:"domainid"`
// the format of the template.
Format NullString `json:"format"`
// the ID of the secondary storage host for the template
HostId ID `json:"hostid"`
// the name of the secondary storage host for the template
HostName NullString `json:"hostname"`
// the hypervisor on which the template runs
Hypervisor NullString `json:"hypervisor"`
// the template ID
Id ID `json:"id"`
// true if template contains XS/VMWare tools inorder to support dynamic scaling
// of VM cpu/memory
IsDynamicallyScalable NullBool `json:"isdynamicallyscalable"`
// true if the template is extractable, false otherwise
IsExtractable NullBool `json:"isextractable"`
// true if this template is a featured template, false otherwise
IsFeatured NullBool `json:"isfeatured"`
// true if this template is a public template, false otherwise
IsPublic NullBool `json:"ispublic"`
// true if the template is ready to be deployed from, false otherwise.
IsReady NullBool `json:"isready"`
// the template name
Name NullString `json:"name"`
// the ID of the OS type for this template.
OsTypeId ID `json:"ostypeid"`
// the name of the OS type for this template.
OsTypeName NullString `json:"ostypename"`
// true if the reset password feature is enabled, false otherwise
PasswordEnabled NullBool `json:"passwordenabled"`
// the project name of the template
Project NullString `json:"project"`
// the project id of the template
ProjectId ID `json:"projectid"`
// the date this template was removed
Removed NullString `json:"removed"`
// the size of the template
Size NullNumber `json:"size"`
// the template ID of the parent template if present
SourceTemplateId ID `json:"sourcetemplateid"`
// true if template is sshkey enabled, false otherwise
SshKeyEnabled NullBool `json:"sshkeyenabled"`
// the status of the template
Status NullString `json:"status"`
// the list of resource tags associated with tempate
Tags []Tag `json:"tags"`
// the tag of this template
Templatetag NullString `json:"templatetag"`
// the type of the template
TemplateType NullString `json:"templatetype"`
// the ID of the zone for this template
ZoneId ID `json:"zoneid"`
// the name of the zone for this template
ZoneName NullString `json:"zonename"`
}
type TemplatePermission ¶
type TemplatePermission struct {
ResourceBase
// the list of accounts the template is available for
Account []NullString `json:"account"`
// the ID of the domain to which the template belongs
DomainId ID `json:"domainid"`
// the template ID
Id ID `json:"id"`
// true if this template is a public template, false otherwise
IsPublic NullBool `json:"ispublic"`
// the list of projects the template is available for
ProjectIds []ID `json:"projectids"`
}
type UpdateAccountParameter ¶
type UpdateAccountParameter struct {
// the current account name
Account NullString
// details for account used to store specific parameters
AccountDetails map[string]string
// the ID of the domain where the account exists
DomainId ID
// Account id
Id ID
// Network domain for the account's networks; empty string will update
// domainName with NULL value
NetworkDomain NullString
// new name for the account
NewName NullString
}
UpdateAccount represents the paramter of UpdateAccount
func NewUpdateAccountParameter ¶
func NewUpdateAccountParameter(newname string) (p *UpdateAccountParameter)
type UpdateCloudToUseObjectStoreParameter ¶
type UpdateCloudToUseObjectStoreParameter struct {
// the details for the image store. Example:
// details[0].key=accesskey&details[0].value=s389ddssaa&details[1].key=secretkey&details[1].value=8dshfsss
Details map[string]string
// the name for the image store
Name NullString
// the image store provider name
Provider NullString
// the URL for the image store
Url NullString
}
UpdateCloudToUseObjectStore represents the paramter of UpdateCloudToUseObjectStore
func NewUpdateCloudToUseObjectStoreParameter ¶
func NewUpdateCloudToUseObjectStoreParameter(provider string) (p *UpdateCloudToUseObjectStoreParameter)
type UpdateClusterParameter ¶
type UpdateClusterParameter struct {
// Allocation state of this cluster for allocation of new resources
AllocationState NullString
// the cluster name
ClusterName NullString
// hypervisor type of the cluster
ClusterType NullString
// hypervisor type of the cluster
Hypervisor NullString
// the ID of the Cluster
Id ID
// whether this cluster is managed by cloudstack
ManagedState NullString
}
UpdateCluster represents the paramter of UpdateCluster
func NewUpdateClusterParameter ¶
func NewUpdateClusterParameter(id string) (p *UpdateClusterParameter)
type UpdateDefaultNicForVirtualMachineParameter ¶
type UpdateDefaultNicForVirtualMachineParameter struct {
// NIC ID
NicId ID
// Virtual Machine ID
VirtualMachineId ID
}
UpdateDefaultNicForVirtualMachine represents the paramter of UpdateDefaultNicForVirtualMachine
func NewUpdateDefaultNicForVirtualMachineParameter ¶
func NewUpdateDefaultNicForVirtualMachineParameter(nicid string, virtualmachineid string) (p *UpdateDefaultNicForVirtualMachineParameter)
type UpdateDiskOfferingParameter ¶
type UpdateDiskOfferingParameter struct {
// an optional field, whether to display the offering to the end user or not.
DisplayOffering NullBool
// updates alternate display text of the disk offering with this value
DisplayText NullString
// ID of the disk offering
Id ID
// updates name of the disk offering with this value
Name NullString
// sort key of the disk offering, integer
SortKey NullNumber
}
UpdateDiskOffering represents the paramter of UpdateDiskOffering
func NewUpdateDiskOfferingParameter ¶
func NewUpdateDiskOfferingParameter(id string) (p *UpdateDiskOfferingParameter)
type UpdateDomainParameter ¶
type UpdateDomainParameter struct {
// ID of domain to update
Id ID
// updates domain with this name
Name NullString
// Network domain for the domain's networks; empty string will update domainName
// with NULL value
NetworkDomain NullString
}
UpdateDomain represents the paramter of UpdateDomain
func NewUpdateDomainParameter ¶
func NewUpdateDomainParameter(id string) (p *UpdateDomainParameter)
type UpdateEgressFirewallRuleParameter ¶
type UpdateEgressFirewallRuleParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// the ID of the egress firewall rule
Id ID
}
UpdateEgressFirewallRule represents the paramter of UpdateEgressFirewallRule
func NewUpdateEgressFirewallRuleParameter ¶
func NewUpdateEgressFirewallRuleParameter(id string) (p *UpdateEgressFirewallRuleParameter)
type UpdateFirewallRuleParameter ¶
type UpdateFirewallRuleParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// the ID of the firewall rule
Id ID
}
UpdateFirewallRule represents the paramter of UpdateFirewallRule
func NewUpdateFirewallRuleParameter ¶
func NewUpdateFirewallRuleParameter(id string) (p *UpdateFirewallRuleParameter)
type UpdateHostParameter ¶
type UpdateHostParameter struct {
// Change resource state of host, valid values are [Enable, Disable]. Operation
// may failed if host in states not allowing Enable/Disable
AllocationState NullString
// list of tags to be added to the host
HostTags []string
// the ID of the host to update
Id ID
// the id of Os category to update the host with
OsCategoryId ID
// the new uri for the secondary storage: nfs://host/path
Url NullString
}
UpdateHost represents the paramter of UpdateHost
func NewUpdateHostParameter ¶
func NewUpdateHostParameter(id string) (p *UpdateHostParameter)
type UpdateHostPasswordParameter ¶
type UpdateHostPasswordParameter struct {
// the cluster ID
ClusterId ID
// the host ID
HostId ID
// the new password for the host/cluster
Password NullString
// the username for the host/cluster
UserName NullString
}
UpdateHostPassword represents the paramter of UpdateHostPassword
func NewUpdateHostPasswordParameter ¶
func NewUpdateHostPasswordParameter(password string, username string) (p *UpdateHostPasswordParameter)
type UpdateIpAddressParameter ¶
type UpdateIpAddressParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the ip to the end user or not
ForDisplay NullBool
// the id of the public ip address to update
Id ID
}
UpdateIpAddress represents the paramter of UpdateIpAddress
func NewUpdateIpAddressParameter ¶
func NewUpdateIpAddressParameter(id string) (p *UpdateIpAddressParameter)
type UpdateLoadBalancerRuleParameter ¶
type UpdateLoadBalancerRuleParameter struct {
// load balancer algorithm (source, roundrobin, leastconn)
Algorithm NullString
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// the description of the load balancer rule
Description NullString
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// the id of the load balancer rule to update
Id ID
// the name of the load balancer rule
Name NullString
}
UpdateLoadBalancerRule represents the paramter of UpdateLoadBalancerRule
func NewUpdateLoadBalancerRuleParameter ¶
func NewUpdateLoadBalancerRuleParameter(id string) (p *UpdateLoadBalancerRuleParameter)
type UpdateNetworkOfferingParameter ¶
type UpdateNetworkOfferingParameter struct {
// the availability of network offering. Default value is Required for Guest
// Virtual network offering; Optional for Guest Direct network offering
Availability NullString
// the display text of the network offering
DisplayText NullString
// the id of the network offering
Id ID
// if true keepalive will be turned on in the loadbalancer. At the time of
// writing this has only an effect on haproxy; the mode http and httpclose
// options are unset in the haproxy conf file.
KeepaliveEnabled NullBool
// maximum number of concurrent connections supported by the network offering
MaxConnections NullNumber
// the name of the network offering
Name NullString
// sort key of the network offering, integer
SortKey NullNumber
// update state for the network offering
State NullString
}
UpdateNetworkOffering represents the paramter of UpdateNetworkOffering
func NewUpdateNetworkOfferingParameter ¶
func NewUpdateNetworkOfferingParameter() (p *UpdateNetworkOfferingParameter)
type UpdateNetworkParameter ¶
type UpdateNetworkParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the network to the end user or not.
DisplayNetwork NullBool
// the new display text for the network
DisplayText NullString
// CIDR for Guest VMs,Cloudstack allocates IPs to Guest VMs only from this CIDR
GuestVmCidr NullString
// the ID of the network
Id ID
// the new name for the network
Name NullString
// network domain
NetworkDomain NullString
// network offering ID
NetworkOfferingId ID
// contains filtered or unexported fields
}
UpdateNetwork represents the paramter of UpdateNetwork
func NewUpdateNetworkParameter ¶
func NewUpdateNetworkParameter(id string) (p *UpdateNetworkParameter)
type UpdatePodParameter ¶
type UpdatePodParameter struct {
// Allocation state of this cluster for allocation of new resources
AllocationState NullString
// the ending IP address for the Pod
EndIp NullString
// the gateway for the Pod
Gateway NullString
// the ID of the Pod
Id ID
// the name of the Pod
Name NullString
// the netmask of the Pod
Netmask NullString
// the starting IP address for the Pod
StartIp NullString
}
UpdatePod represents the paramter of UpdatePod
func NewUpdatePodParameter ¶
func NewUpdatePodParameter(id string) (p *UpdatePodParameter)
type UpdatePortForwardingRuleParameter ¶
type UpdatePortForwardingRuleParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the rule to the end user or not
ForDisplay NullBool
// the ID of the port forwarding rule
Id ID
// the IP address id of the port forwarding rule
IpAddressId ID
// the private IP address of the port forwarding rule
PrivateIp NullString
// the private port of the port forwarding rule
PrivatePort NullString
// the protocol for the port fowarding rule. Valid values are TCP or UDP.
Protocol NullString
// the public port of the port forwarding rule
PublicPort NullString
// the ID of the virtual machine for the port forwarding rule
VirtualMachineId ID
}
UpdatePortForwardingRule represents the paramter of UpdatePortForwardingRule
func NewUpdatePortForwardingRuleParameter ¶
func NewUpdatePortForwardingRuleParameter(id string) (p *UpdatePortForwardingRuleParameter)
type UpdateProjectInvitationParameter ¶
type UpdateProjectInvitationParameter struct {
// if true, accept the invitation, decline if false. True by default
Accept NullBool
// account that is joining the project
Account NullString
// id of the project to join
ProjectId ID
// list invitations for specified account; this parameter has to be specified
// with domainId
Token NullString
}
UpdateProjectInvitation represents the paramter of UpdateProjectInvitation
func NewUpdateProjectInvitationParameter ¶
func NewUpdateProjectInvitationParameter(projectid string) (p *UpdateProjectInvitationParameter)
type UpdateProjectParameter ¶
type UpdateProjectParameter struct {
// new Admin account for the project
Account NullString
// display text of the project
DisplayText NullString
// id of the project to be modified
Id ID
}
UpdateProject represents the paramter of UpdateProject
func NewUpdateProjectParameter ¶
func NewUpdateProjectParameter(id string) (p *UpdateProjectParameter)
type UpdateServiceOfferingParameter ¶
type UpdateServiceOfferingParameter struct {
// the display text of the service offering to be updated
DisplayText NullString
// the ID of the service offering to be updated
Id ID
// the name of the service offering to be updated
Name NullString
// sort key of the service offering, integer
SortKey NullNumber
}
UpdateServiceOffering represents the paramter of UpdateServiceOffering
func NewUpdateServiceOfferingParameter ¶
func NewUpdateServiceOfferingParameter(id string) (p *UpdateServiceOfferingParameter)
type UpdateStoragePoolParameter ¶
type UpdateStoragePoolParameter struct {
// bytes CloudStack can provision from this storage pool
CapacityBytes NullNumber
// IOPS CloudStack can provision from this storage pool
CapacityIops NullNumber
// the Id of the storage pool
Id ID
// comma-separated list of tags for the storage pool
Tags []string
}
UpdateStoragePool represents the paramter of UpdateStoragePool
func NewUpdateStoragePoolParameter ¶
func NewUpdateStoragePoolParameter(id string) (p *UpdateStoragePoolParameter)
type UpdateTemplateParameter ¶
type UpdateTemplateParameter struct {
// true if image is bootable, false otherwise; available only for updateIso API
Bootable NullBool
// Details in key/value pairs.
Details map[string]string
// the display text of the image
DisplayText NullString
// the format for the image
Format NullString
// the ID of the image file
Id ID
// true if template/ISO contains XS/VMWare tools inorder to support dynamic
// scaling of VM cpu/memory
IsDynamicallyScalable NullBool
// true if the template type is routing i.e., if template is used to deploy
// router
IsRouting NullBool
// the name of the image file
Name NullString
// the ID of the OS type that best represents the OS of this image.
OsTypeId ID
// true if the image supports the password reset feature; default is false
PasswordEnabled NullBool
// true if the template requres HVM, false otherwise; available only for
// updateTemplate API
RequiresHvm NullBool
// sort key of the template, integer
SortKey NullNumber
}
UpdateTemplate represents the paramter of UpdateTemplate
func NewUpdateTemplateParameter ¶
func NewUpdateTemplateParameter(id string) (p *UpdateTemplateParameter)
type UpdateTemplatePermissionsParameter ¶
type UpdateTemplatePermissionsParameter struct {
// a comma delimited list of accounts. If specified, "op" parameter has to be
// passed in.
Accounts []string
// the template ID
Id ID
// true if the template/iso is extractable, false other wise. Can be set only by
// root admin
IsExtractable NullBool
// true for featured template/iso, false otherwise
IsFeatured NullBool
// true for public template/iso, false for private templates/isos
IsPublic NullBool
// permission operator (add, remove, reset)
Op NullString
// a comma delimited list of projects. If specified, "op" parameter has to be
// passed in.
ProjectIds []string
}
UpdateTemplatePermissions represents the paramter of UpdateTemplatePermissions
func NewUpdateTemplatePermissionsParameter ¶
func NewUpdateTemplatePermissionsParameter(id string) (p *UpdateTemplatePermissionsParameter)
type UpdateUserParameter ¶
type UpdateUserParameter struct {
// email
Email NullString
// first name
FirstName NullString
// User uuid
Id ID
// last name
LastName NullString
// Clear text password (default hashed to SHA256SALT). If you wish to use any
// other hasing algorithm, you would need to write a custom authentication
// adapter
Password NullString
// Specifies a timezone for this command. For more information on the timezone
// parameter, see Time Zone Format.
TimeZone NullString
// The API key for the user. Must be specified with userSecretKey
UserApiKey NullString
// Unique username
UserName NullString
// The secret key for the user. Must be specified with userSecretKey
UserSecretKey NullString
}
UpdateUser represents the paramter of UpdateUser
func NewUpdateUserParameter ¶
func NewUpdateUserParameter(id string) (p *UpdateUserParameter)
type UpdateVMAffinityGroupParameter ¶
type UpdateVMAffinityGroupParameter struct {
// comma separated list of affinity groups id that are going to be applied to
// the virtual machine. Should be passed only when vm is created from a zone
// with Basic Network support. Mutually exclusive with securitygroupnames
// parameter
AffinityGroupIds []string
// comma separated list of affinity groups names that are going to be applied to
// the virtual machine. Should be passed only when vm is created from a zone
// with Basic Network support. Mutually exclusive with securitygroupids
// parameter
AffinityGroupNames []string
// The ID of the virtual machine
Id ID
}
UpdateVMAffinityGroup represents the paramter of UpdateVMAffinityGroup
func NewUpdateVMAffinityGroupParameter ¶
func NewUpdateVMAffinityGroupParameter(id string) (p *UpdateVMAffinityGroupParameter)
type UpdateVirtualMachineParameter ¶
type UpdateVirtualMachineParameter struct {
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// user generated name
DisplayName NullString
// an optional field, whether to the display the vm to the end user or not.
DisplayVm NullBool
// group of the virtual machine
Group NullString
// true if high-availability is enabled for the virtual machine, false otherwise
HaEnable NullBool
// The ID of the virtual machine
Id ID
// true if VM contains XS/VMWare tools inorder to support dynamic scaling of VM
// cpu/memory
IsDynamicallyScalable NullBool
// new host name of the vm. The VM has to be stopped/started for this update to
// take affect
Name NullString
// the ID of the OS type that best represents this VM.
OsTypeId ID
// an optional binary data that can be sent to the virtual machine upon a
// successful deployment. This binary data must be base64 encoded before adding
// it to the request. Using HTTP GET (via querystring), you can send up to 2KB
// of data after base64 encoding. Using HTTP POST(via POST body), you can send
// up to 32K of data after base64 encoding.
UserData NullString
}
UpdateVirtualMachine represents the paramter of UpdateVirtualMachine
func NewUpdateVirtualMachineParameter ¶
func NewUpdateVirtualMachineParameter(id string) (p *UpdateVirtualMachineParameter)
type UpdateVolumeParameter ¶
type UpdateVolumeParameter struct {
// The chain info of the volume
ChainInfo NullString
// an optional field, in case you want to set a custom id to the resource.
// Allowed to Root Admins only
CustomId ID
// an optional field, whether to the display the volume to the end user or not.
DisplayVolume NullBool
// the ID of the disk volume
Id ID
// The path of the volume
Path NullString
// The state of the volume
State NullString
// Destination storage pool UUID for the volume
StorageId ID
}
UpdateVolume represents the paramter of UpdateVolume
func NewUpdateVolumeParameter ¶
func NewUpdateVolumeParameter() (p *UpdateVolumeParameter)
type UpdateZoneParameter ¶
type UpdateZoneParameter struct {
// Allocation state of this cluster for allocation of new resources
AllocationState NullString
// the details for the Zone
Details map[string]string
// the dhcp Provider for the Zone
DhcpProvider NullString
// the first DNS for the Zone
Dns1 NullString
// the second DNS for the Zone
Dns2 NullString
// the dns search order list
Dnssearchorder []string
// Network domain name for the networks in the zone; empty string will update
// domain with NULL value
Domain NullString
// the guest CIDR address for the Zone
GuestCidrAddress NullString
// the ID of the Zone
Id ID
// the first internal DNS for the Zone
InternalDns1 NullString
// the second internal DNS for the Zone
InternalDns2 NullString
// the first DNS for IPv6 network in the Zone
Ip6Dns1 NullString
// the second DNS for IPv6 network in the Zone
Ip6Dns2 NullString
// updates a private zone to public if set, but not vice-versa
IsPublic NullBool
// true if local storage offering enabled, false otherwise
LocalStorageEnabled NullBool
// the name of the Zone
Name NullString
}
UpdateZone represents the paramter of UpdateZone
func NewUpdateZoneParameter ¶
func NewUpdateZoneParameter(id string) (p *UpdateZoneParameter)
type UploadVolumeParameter ¶
type UploadVolumeParameter struct {
// an optional accountName. Must be used with domainId.
Account NullString
// the MD5 checksum value of this volume
Checksum NullString
// the ID of the disk offering. This must be a custom sized offering since
// during uploadVolume volume size is unknown.
DiskOfferingId ID
// an optional domainId. If the account parameter is used, domainId must also be
// used.
DomainId ID
// the format for the volume. Possible values include QCOW2, OVA, and VHD.
Format NullString
// Image store uuid
ImageStoreUuid ID
// the name of the volume
Name NullString
// Upload volume for the project
ProjectId ID
// the URL of where the volume is hosted. Possible URL include http:// and
// https://
Url NullString
// the ID of the zone the volume is to be hosted on
ZoneId ID
}
UploadVolume represents the paramter of UploadVolume
func NewUploadVolumeParameter ¶
func NewUploadVolumeParameter(format string, name string, url string, zoneid string) (p *UploadVolumeParameter)
type User ¶
type User struct {
ResourceBase
// the account name of the user
Account NullString `json:"account"`
// the account ID of the user
AccountId ID `json:"accountid"`
// the account type of the user
AccountType NullNumber `json:"accounttype"`
// the api key of the user
ApiKey NullString `json:"apikey"`
// the date and time the user account was created
Created NullString `json:"created"`
// the domain name of the user
Domain NullString `json:"domain"`
// the domain ID of the user
DomainId ID `json:"domainid"`
// the user email address
Email NullString `json:"email"`
// the user firstname
FirstName NullString `json:"firstname"`
// the user ID
Id ID `json:"id"`
// the boolean value representing if the updating target is in caller's child
// domain
IsCallerChildDomain NullBool `json:"iscallerchilddomain"`
// true if user is default, false otherwise
IsDefault NullBool `json:"isdefault"`
// the user lastname
LastName NullString `json:"lastname"`
// the secret key of the user
SecretKey NullString `json:"secretkey"`
// the user state
State NullString `json:"state"`
// the timezone user was created in
TimeZone NullString `json:"timezone"`
// the user name
UserName NullString `json:"username"`
}
type UserKeys ¶
type UserKeys struct {
ResourceBase
// the api key of the registered user
ApiKey NullString `json:"apikey"`
// the secret key of the registered user
SecretKey NullString `json:"secretkey"`
}
type VMPassword ¶
type VMPassword struct {
ResourceBase
// The base64 encoded encrypted password of the VM
EncryptedPassword NullString `json:"encryptedpassword"`
}
type VirtualMachine ¶
type VirtualMachine struct {
ResourceBase
// the account associated with the virtual machine
Account NullString `json:"account"`
// list of affinity groups associated with the virtual machine
AffinityGroup []AffinityGroup `json:"affinitygroup"`
// the number of cpu this virtual machine is running with
CpuNumber NullNumber `json:"cpunumber"`
// the speed of each cpu
CpuSpeed NullNumber `json:"cpuspeed"`
// the amount of the vm's CPU currently used
CpuUsed NullString `json:"cpuused"`
// the date when this virtual machine was created
Created NullString `json:"created"`
// Vm details in key/value pairs.
Details map[string]string `json:"details"`
// the read (io) of disk on the vm
DiskIoRead NullNumber `json:"diskioread"`
// the write (io) of disk on the vm
DiskIoWrite NullNumber `json:"diskiowrite"`
// the read (bytes) of disk on the vm
DiskKbsRead NullNumber `json:"diskkbsread"`
// the write (bytes) of disk on the vm
DiskKbsWrite NullNumber `json:"diskkbswrite"`
// the ID of the disk offering of the virtual machine
DiskOfferingId ID `json:"diskofferingid"`
// the name of the disk offering of the virtual machine
DiskOfferingName NullString `json:"diskofferingname"`
// user generated name. The name of the virtual machine is returned if no
// displayname exists.
DisplayName NullString `json:"displayname"`
// an optional field whether to the display the vm to the end user or not.
DisplayVm NullBool `json:"displayvm"`
// the name of the domain in which the virtual machine exists
Domain NullString `json:"domain"`
// the ID of the domain in which the virtual machine exists
DomainId ID `json:"domainid"`
// the virtual network for the service offering
ForVirtualNetwork NullBool `json:"forvirtualnetwork"`
// the group name of the virtual machine
Group NullString `json:"group"`
// the group ID of the virtual machine
GroupId ID `json:"groupid"`
// Os type ID of the virtual machine
GuestOsId ID `json:"guestosid"`
// true if high-availability is enabled, false otherwise
HaEnable NullBool `json:"haenable"`
// the ID of the host for the virtual machine
HostId ID `json:"hostid"`
// the name of the host for the virtual machine
HostName NullString `json:"hostname"`
// the hypervisor on which the template runs
Hypervisor NullString `json:"hypervisor"`
// the ID of the virtual machine
Id ID `json:"id"`
// instance name of the user vm; this parameter is returned to the ROOT admin
// only
InstanceName NullString `json:"instancename"`
// true if vm contains XS/VMWare tools inorder to support dynamic scaling of VM
// cpu/memory.
IsDynamicallyScalable NullBool `json:"isdynamicallyscalable"`
// an alternate display text of the ISO attached to the virtual machine
IsoDisplayText NullString `json:"isodisplaytext"`
// the ID of the ISO attached to the virtual machine
IsoId ID `json:"isoid"`
// the name of the ISO attached to the virtual machine
IsoName NullString `json:"isoname"`
// ssh key-pair
KeyPair NullString `json:"keypair"`
// the memory allocated for the virtual machine
Memory NullNumber `json:"memory"`
// the name of the virtual machine
Name NullString `json:"name"`
// the incoming network traffic on the vm
NetworkKbsRead NullNumber `json:"networkkbsread"`
// the outgoing network traffic on the host
NetworkKbsWrite NullNumber `json:"networkkbswrite"`
// the list of nics associated with vm
Nic []Nic `json:"nic"`
// OS type id of the vm
OsTypeId ID `json:"ostypeid"`
// the password (if exists) of the virtual machine
Password NullString `json:"password"`
// true if the password rest feature is enabled, false otherwise
PasswordEnabled NullBool `json:"passwordenabled"`
// the project name of the vm
Project NullString `json:"project"`
// the project id of the vm
ProjectId ID `json:"projectid"`
// public IP address id associated with vm via Static nat rule
PublicIp NullString `json:"publicip"`
// public IP address id associated with vm via Static nat rule
PublicIpId ID `json:"publicipid"`
// device ID of the root volume
RootDeviceId ID `json:"rootdeviceid"`
// device type of the root volume
RootDeviceType NullString `json:"rootdevicetype"`
// list of security groups associated with the virtual machine
SecurityGroup []SecurityGroup `json:"securitygroup"`
// the ID of the service offering of the virtual machine
ServiceOfferingId ID `json:"serviceofferingid"`
// the name of the service offering of the virtual machine
ServiceOfferingName NullString `json:"serviceofferingname"`
// State of the Service from LB rule
ServiceState NullString `json:"servicestate"`
// the state of the virtual machine
State NullString `json:"state"`
// the list of resource tags associated with vm
Tags []Tag `json:"tags"`
// an alternate display text of the template for the virtual machine
TemplateDisplayText NullString `json:"templatedisplaytext"`
// the ID of the template for the virtual machine. A -1 is returned if the
// virtual machine was created from an ISO file.
TemplateId ID `json:"templateid"`
// the name of the template for the virtual machine
TemplateName NullString `json:"templatename"`
// the vgpu type used by the virtual machine
Vgpu NullString `json:"vgpu"`
// the ID of the availablility zone for the virtual machine
ZoneId ID `json:"zoneid"`
// the name of the availability zone for the virtual machine
ZoneName NullString `json:"zonename"`
}
func (*VirtualMachine) Delete ¶
func (r *VirtualMachine) Delete() (err error)
func (*VirtualMachine) Refresh ¶
func (r *VirtualMachine) Refresh() (err error)
func (*VirtualMachine) Update ¶
func (r *VirtualMachine) Update(args map[string]interface{}) (err error)
type VirtualMachineUserData ¶
type VirtualMachineUserData struct {
ResourceBase
// Base 64 encoded VM user data
UserData NullString `json:"userdata"`
// the ID of the virtual machine
VirtualMachineId ID `json:"virtualmachineid"`
}
type Volume ¶
type Volume struct {
ResourceBase
// the account associated with the disk volume
Account NullString `json:"account"`
// the date the volume was attached to a VM instance
Attached NullString `json:"attached"`
// the chain info of the volume
ChainInfo NullString `json:"chaininfo"`
// the date the disk volume was created
Created NullString `json:"created"`
// the boolean state of whether the volume is destroyed or not
Destroyed NullBool `json:"destroyed"`
// the ID of the device on user vm the volume is attahed to. This tag is not
// returned when the volume is detached.
DeviceId ID `json:"deviceid"`
// bytes read rate of the disk volume
DiskBytesReadRate NullNumber `json:"diskbytesreadrate"`
// bytes write rate of the disk volume
DiskBytesWriteRate NullNumber `json:"diskbyteswriterate"`
// io requests read rate of the disk volume
DiskIopsReadRate NullNumber `json:"diskiopsreadrate"`
// io requests write rate of the disk volume
DiskIopsWriteRate NullNumber `json:"diskiopswriterate"`
// the display text of the disk offering
DiskOfferingDisplayText NullString `json:"diskofferingdisplaytext"`
// ID of the disk offering
DiskOfferingId ID `json:"diskofferingid"`
// name of the disk offering
DiskOfferingName NullString `json:"diskofferingname"`
// an optional field whether to the display the volume to the end user or not.
DisplayVolume NullBool `json:"displayvolume"`
// the domain associated with the disk volume
Domain NullString `json:"domain"`
// the ID of the domain associated with the disk volume
DomainId ID `json:"domainid"`
// Hypervisor the volume belongs to
Hypervisor NullString `json:"hypervisor"`
// ID of the disk volume
Id ID `json:"id"`
// true if the volume is extractable, false otherwise
IsExtractable NullBool `json:"isextractable"`
// an alternate display text of the ISO attached to the virtual machine
IsoDisplayText NullString `json:"isodisplaytext"`
// the ID of the ISO attached to the virtual machine
IsoId ID `json:"isoid"`
// the name of the ISO attached to the virtual machine
IsoName NullString `json:"isoname"`
// max iops of the disk volume
MaxIops NullNumber `json:"maxiops"`
// min iops of the disk volume
MinIops NullNumber `json:"miniops"`
// name of the disk volume
Name NullString `json:"name"`
// the path of the volume
Path NullString `json:"path"`
// the project name of the vpn
Project NullString `json:"project"`
// the project id of the vpn
ProjectId ID `json:"projectid"`
// provisioning type used to create volumes.
ProvisioningType NullString `json:"provisioningtype"`
// need quiesce vm or not when taking snapshot
QuiesceVm NullBool `json:"quiescevm"`
// the display text of the service offering for root disk
ServiceOfferingDisplayText NullString `json:"serviceofferingdisplaytext"`
// ID of the service offering for root disk
ServiceOfferingId ID `json:"serviceofferingid"`
// name of the service offering for root disk
ServiceOfferingName NullString `json:"serviceofferingname"`
// size of the disk volume
Size NullNumber `json:"size"`
// ID of the snapshot from which this volume was created
SnapshotId ID `json:"snapshotid"`
// the state of the disk volume
State NullString `json:"state"`
// the status of the volume
Status NullString `json:"status"`
// name of the primary storage hosting the disk volume
Storage NullString `json:"storage"`
// id of the primary storage hosting the disk volume; returned to admin user
// only
StorageId ID `json:"storageid"`
// shared or local storage
StorageType NullString `json:"storagetype"`
// the list of resource tags associated with volume
Tags []Tag `json:"tags"`
// an alternate display text of the template for the virtual machine
TemplateDisplayText NullString `json:"templatedisplaytext"`
// the ID of the template for the virtual machine. A -1 is returned if the
// virtual machine was created from an ISO file.
TemplateId ID `json:"templateid"`
// the name of the template for the virtual machine
TemplateName NullString `json:"templatename"`
// type of the disk volume (ROOT or DATADISK)
Type NullString `json:"type"`
// id of the virtual machine
VirtualMachineId ID `json:"virtualmachineid"`
// display name of the virtual machine
VmDisplayName NullString `json:"vmdisplayname"`
// name of the virtual machine
VmName NullString `json:"vmname"`
// state of the virtual machine
VmState NullString `json:"vmstate"`
// ID of the availability zone
ZoneId ID `json:"zoneid"`
// name of the availability zone
ZoneName NullString `json:"zonename"`
}
type Zone ¶
type Zone struct {
ResourceBase
// the allocation state of the cluster
AllocationState NullString `json:"allocationstate"`
// the capacity of the Zone
Capacity []Capacity `json:"capacity"`
// Zone description
Description NullString `json:"description"`
// the dhcp Provider for the Zone
DhcpProvider NullString `json:"dhcpprovider"`
// the display text of the zone
DisplayText NullString `json:"displaytext"`
// the first DNS for the Zone
Dns1 NullString `json:"dns1"`
// the second DNS for the Zone
Dns2 NullString `json:"dns2"`
// Network domain name for the networks in the zone
Domain NullString `json:"domain"`
// the UUID of the containing domain, null for public zones
DomainId ID `json:"domainid"`
// the name of the containing domain, null for public zones
DomainName NullString `json:"domainname"`
// the guest CIDR address for the Zone
GuestCidrAddress NullString `json:"guestcidraddress"`
// Zone id
Id ID `json:"id"`
// the first internal DNS for the Zone
InternalDns1 NullString `json:"internaldns1"`
// the second internal DNS for the Zone
InternalDns2 NullString `json:"internaldns2"`
// the first IPv6 DNS for the Zone
Ip6Dns1 NullString `json:"ip6dns1"`
// the second IPv6 DNS for the Zone
Ip6Dns2 NullString `json:"ip6dns2"`
// true if local storage offering enabled, false otherwise
LocalStorageEnabled NullBool `json:"localstorageenabled"`
// Zone name
Name NullString `json:"name"`
// the network type of the zone; can be Basic or Advanced
NetworkType NullString `json:"networktype"`
// Meta data associated with the zone (key/value pairs)
ResourceDetails map[string]string `json:"resourcedetails"`
// true if security groups support is enabled, false otherwise
SecurityGroupsEnabled NullBool `json:"securitygroupsenabled"`
// the list of resource tags associated with zone.
Tags []Tag `json:"tags"`
// the vlan range of the zone
Vlan NullString `json:"vlan"`
// Zone Token
Zonetoken NullString `json:"zonetoken"`
}
Source Files
¶
- AccountApi.go
- AccountStruct.go
- AddressApi.go
- AffinityGroupApi.go
- AffinityGroupStruct.go
- AffinityGroupTypeStruct.go
- CapacityStruct.go
- ClusterApi.go
- ClusterStruct.go
- DiskOfferingApi.go
- DiskOfferingStruct.go
- DomainApi.go
- DomainStruct.go
- FirewallApi.go
- FirewallRuleStruct.go
- HostApi.go
- HostStruct.go
- ImageStoreApi.go
- ImageStoreStruct.go
- IpForwardingRuleStruct.go
- LoadBalancerApi.go
- LoadBalancerRuleInstanceStruct.go
- LoadBalancerRuleStruct.go
- NATApi.go
- NetworkApi.go
- NetworkOfferingApi.go
- NetworkOfferingStruct.go
- NetworkServiceCapabilityStruct.go
- NetworkServiceProviderStruct.go
- NetworkServiceStruct.go
- NetworkStruct.go
- NicStruct.go
- PodApi.go
- PodStruct.go
- PortForwardingRuleStruct.go
- ProjectApi.go
- ProjectStruct.go
- PublicIpAddressStruct.go
- ResourcetagsApi.go
- ResultStruct.go
- SecurityGroupApi.go
- SecurityGroupStruct.go
- ServiceOfferingApi.go
- ServiceOfferingStruct.go
- StoragePoolApi.go
- StoragePoolStruct.go
- StorageProviderApi.go
- StorageProviderStruct.go
- TagStruct.go
- TemplateApi.go
- TemplateStruct.go
- UserApi.go
- UserStruct.go
- VirtualMachineApi.go
- VirtualMachineMethods.go
- VirtualMachineStruct.go
- VolumeApi.go
- VolumeStruct.go
- ZoneApi.go
- ZoneStruct.go
- cloudstack.go
- config.go
- keypair.go
- types.go
- vars.go