Documentation ¶
Overview ¶
Package compute contains the client for Dimension Data's cloud compute API.
Index ¶
- Constants
- func GetResourceDescription(resourceType ResourceType) (string, error)
- func ImageTypeName(imageType ImageType) string
- func IsAPIError(err error, responseCode string) bool
- func IsAPIErrorCode(err error, responseCode string) bool
- func IsExceedsLimitError(err error) bool
- func IsNoIPAddressAvailableError(err error) bool
- func IsOperationCancelledError(err error) bool
- func IsResourceBusyError(err error) bool
- func IsResourceNotFoundError(err error) bool
- type APIError
- type APIResponse
- type APIResponseAdditionalInformationV1
- type APIResponseV1
- func (response *APIResponseV1) GetAPIVersion() string
- func (response *APIResponseV1) GetAdditionalInformation(name string) *string
- func (response *APIResponseV1) GetMessage() string
- func (response *APIResponseV1) GetRequestID() string
- func (response *APIResponseV1) GetResponseCode() string
- func (response *APIResponseV1) ToError(errorMessageOrFormat string, formatArgs ...interface{}) error
- type APIResponseV2
- func (response *APIResponseV2) GetAPIVersion() string
- func (response *APIResponseV2) GetFieldError(fieldName string) *string
- func (response *APIResponseV2) GetFieldMessage(fieldName string) *string
- func (response *APIResponseV2) GetFieldWarning(fieldName string) *string
- func (response *APIResponseV2) GetMessage() string
- func (response *APIResponseV2) GetRequestID() string
- func (response *APIResponseV2) GetResponseCode() string
- func (response *APIResponseV2) ToError(errorMessageOrFormat string, formatArgs ...interface{}) error
- type Account
- type AttachedVlanGateway
- type BackupClientAlerting
- type BackupClientDetail
- type BackupClientType
- type BackupClientTypes
- type BackupSchedulePolicies
- type BackupSchedulePolicy
- type BackupStoragePolicies
- type BackupStoragePolicy
- type Client
- func (client *Client) AddAddress(addresslistId string, begin string, end string, network string, prefixSize int) (address *IPAddressListEntry, err error)
- func (client *Client) AddDiskToSCSIController(controllerID string, scsiUnitID int, sizeGB int, speed string, iops int) (diskID string, err error)
- func (client *Client) AddDiskToServer(serverID string, scsiBusNumber *int, scsiUnitID *int, sizeGB int, speed string, ...) (diskID string, err error)
- func (client *Client) AddNATRule(networkDomainID string, internalIPAddress string, externalIPAddress *string) (natRuleID string, err error)
- func (client *Client) AddNicToServer(serverID string, ipv4Address string, vlanID string) (nicID string, err error)
- func (client *Client) AddNicWithTypeToServer(serverID string, ipv4Address string, vlanID string, adapterType string) (nicID string, err error)
- func (client *Client) AddPublicIPBlock(networkDomainID string) (blockID string, err error)
- func (client *Client) AddSCSIControllerToServer(serverID string, adapterType string, busNumber int) error
- func (client *Client) AddServerBackupClient(serverID string, clientType string, schedulePolicyName string, ...) (clientID string, clientDownloadURL string, err error)
- func (client *Client) AddVIPPoolMember(poolID string, nodeID string, status string, port *int) (poolMemberID string, err error)
- func (client *Client) ApplyAssetTags(assetID string, assetType string, tags ...Tag) (response *APIResponseV2, err error)
- func (client *Client) Cancel()
- func (client *Client) CancelBackupClientJobs(serverID string, clientID string) error
- func (client *Client) ChangeNetworkAdapterType(networkAdapterID string, networkAdapterType string) (err error)
- func (client *Client) ChangeServerBackupServicePlan(serverID string, servicePlan string) error
- func (client *Client) ChangeServerDiskIops(diskID string, iops int) (apiResponse *APIResponseV2, err error)
- func (client *Client) ChangeServerDiskSpeed(serverID string, diskID string, newSpeed string, iops *int) (apiResponse *APIResponseV2, err error)
- func (client *Client) CheckAddressExists(addresslistId string, begin string, network string) (exists bool)
- func (client *Client) CloneServer(serverID string, imageName string, imageDescription string, ...) (imageID string, err error)
- func (client *Client) ConfigureRetry(maxRetryCount int, retryDelay time.Duration)
- func (client *Client) CreateFirewallRule(configuration FirewallRuleConfiguration) (firewallRuleID string, err error)
- func (client *Client) CreateIPAddressList(name string, description string, ipVersion string, networkDomainID string, ...) (addressListID string, err error)
- func (client *Client) CreatePortList(name string, description string, networkDomainID string, ports []PortListEntry, ...) (portListID string, err error)
- func (client *Client) CreateSSLOffloadProfile(networkDomainID string, name string, description string, ciphers *string, ...) (offloadProfileID string, err error)
- func (client *Client) CreateServerAntiAffinityRule(server1Id string, server2Id string) (ruleID string, err error)
- func (client *Client) CreateStaticRoute(networkDomainId string, name string, description string, ipVersion string, ...) (staticRouteID string, err error)
- func (client *Client) CreateTagKey(name string, description string, isValueRequired bool, displayOnReports bool) (tagKeyID string, err error)
- func (client *Client) CreateVIPNode(nodeConfiguration NewVIPNodeConfiguration) (nodeID string, err error)
- func (client *Client) CreateVIPPool(poolConfiguration NewVIPPoolConfiguration) (poolID string, err error)
- func (client *Client) CreateVirtualListener(listenerConfiguration NewVirtualListenerConfiguration) (nodeID string, err error)
- func (client *Client) DeleteAddress(addresslistId string, ipAddress string) (addressList *IPAddressList, err error)
- func (client *Client) DeleteFirewallRule(id string) error
- func (client *Client) DeleteIPAddressList(id string) (err error)
- func (client *Client) DeleteNATRule(id string) error
- func (client *Client) DeleteNetworkDomain(id string) (err error)
- func (client *Client) DeletePortList(id string) (err error)
- func (client *Client) DeleteSSLCertificateChain(id string) (err error)
- func (client *Client) DeleteSSLDomainCertificate(id string) (err error)
- func (client *Client) DeleteSSLOffloadProfile(id string) (err error)
- func (client *Client) DeleteServer(id string) (err error)
- func (client *Client) DeleteServerAntiAffinityRule(ruleID string, networkDomainID string) error
- func (client *Client) DeleteStaticRoute(id string) (err error)
- func (client *Client) DeleteTagKey(id string) error
- func (client *Client) DeleteVIPNode(id string) (err error)
- func (client *Client) DeleteVIPPool(id string) (err error)
- func (client *Client) DeleteVLAN(id string) (err error)
- func (client *Client) DeleteVirtualListener(id string) (err error)
- func (client *Client) DeployNetworkDomain(name string, description string, plan string, datacenter string) (networkDomainID string, err error)
- func (client *Client) DeployServer(serverConfiguration ServerDeploymentConfiguration) (serverID string, err error)
- func (client *Client) DeployUncustomizedServer(serverConfiguration UncustomizedServerDeploymentConfiguration) (serverID string, err error)
- func (client *Client) DeployVLAN(networkDomainID string, name string, description string, ...) (vlanID string, err error)
- func (client *Client) DisableExtendedLogging()
- func (client *Client) DisableServerBackup(serverID string) error
- func (client *Client) EditFirewallRule(id string, enabled bool) error
- func (client *Client) EditIPAddressList(edit EditIPAddressList) error
- func (client *Client) EditNetworkDomain(id string, name *string, description *string, plan *string) (err error)
- func (client *Client) EditPortList(id string, edit EditPortList) error
- func (client *Client) EditSSLOffloadProfile(sslOffloadProfile SSLOffloadProfile) error
- func (client *Client) EditServerMetadata(serverID string, name *string, description *string) error
- func (client *Client) EditVIPNode(id string, nodeConfiguration EditVIPNodeConfiguration) error
- func (client *Client) EditVIPPool(id string, poolConfiguration EditVIPPoolConfiguration) error
- func (client *Client) EditVIPPoolMember(id string, status string) error
- func (client *Client) EditVLAN(id string, name *string, description *string) (err error)
- func (client *Client) EditVirtualListener(id string, listenerConfiguration EditVirtualListenerConfiguration) error
- func (client *Client) EnableExtendedLogging()
- func (client *Client) EnableServerBackup(serverID string, servicePlan string) error
- func (client *Client) ExpandDisk(diskID string, newSizeGB int) (response *APIResponseV2, err error)
- func (client *Client) ExportCustomerImage(imageID string, ovfPackagePrefix string) (exportID string, err error)
- func (client *Client) FindCustomerImage(name string, dataCenterID string) (image *CustomerImage, err error)
- func (client *Client) FindOSImage(name string, dataCenterID string) (image *OSImage, err error)
- func (client *Client) GetAccount() (*Account, error)
- func (client *Client) GetAddressOk(addresslistId string, begin string, network string) (address *IPAddressListEntry, exists bool)
- func (client *Client) GetAssetTags(assetID string, assetType string, paging *Paging) (tags *TagDetails, err error)
- func (client *Client) GetAssetTagsByType(assetType string, datacenterID string, paging *Paging) (tags *TagDetails, err error)
- func (client *Client) GetAvailablePublicIPAddresses(networkDomainID string) (availableIPs map[string]string, err error)
- func (client *Client) GetCustomerImage(id string) (image *CustomerImage, err error)
- func (client *Client) GetDatacenter(id string) (datacenter *Datacenter, err error)
- func (client *Client) GetFirewallRule(id string) (rule *FirewallRule, err error)
- func (client *Client) GetIPAddressList(id string) (addressList *IPAddressList, err error)
- func (client *Client) GetIPAddressListByName(name string, networkDomainID string) (addressList *IPAddressList, err error)
- func (client *Client) GetNATRule(id string) (rule *NATRule, err error)
- func (client *Client) GetNetworkDomain(id string) (domain *NetworkDomain, err error)
- func (client *Client) GetNetworkDomainByName(name string, dataCenterID string) (domain *NetworkDomain, err error)
- func (client *Client) GetOSImage(id string) (image *OSImage, err error)
- func (client *Client) GetPortList(id string) (portList *PortList, err error)
- func (client *Client) GetPublicIPBlock(id string) (block *PublicIPBlock, err error)
- func (client *Client) GetResource(id string, resourceType ResourceType) (Resource, error)
- func (client *Client) GetSSLCertificateChain(id string) (pool *SSLCertificateChain, err error)
- func (client *Client) GetSSLDomainCertificate(id string) (pool *SSLDomainCertificate, err error)
- func (client *Client) GetSSLOffloadProfile(id string) (pool *SSLOffloadProfile, err error)
- func (client *Client) GetServer(id string) (server *Server, err error)
- func (client *Client) GetServerAntiAffinityRule(ruleID string, networkDomainID string) (rule *ServerAntiAffinityRule, err error)
- func (client *Client) GetServerBackupClientTypes(serverID string) (*BackupClientTypes, error)
- func (client *Client) GetServerBackupDetails(serverID string) (*ServerBackupDetails, error)
- func (client *Client) GetServerBackupSchedulePolicies(serverID string) (*BackupSchedulePolicies, error)
- func (client *Client) GetServerBackupStoragePolicies(serverID string) (*BackupStoragePolicies, error)
- func (client *Client) GetStaticRoute(id string) (staticRoute *StaticRoute, err error)
- func (client *Client) GetStaticRouteByAddress(paging *Paging, networkDomainId string, destinationNetworkAddress string, ...) (systemStaticRoute *StaticRoute, err error)
- func (client *Client) GetStaticRouteByName(name string, domainId string) (staticRoute *StaticRoute, err error)
- func (client *Client) GetTagKey(id string) (tagKey *TagKey, err error)
- func (client *Client) GetVIPNode(id string) (node *VIPNode, err error)
- func (client *Client) GetVIPPool(id string) (pool *VIPPool, err error)
- func (client *Client) GetVIPPoolMember(id string) (member *VIPPoolMember, err error)
- func (client *Client) GetVLAN(id string) (vlan *VLAN, err error)
- func (client *Client) GetVLANByName(name string, networkDomainID string) (*VLAN, error)
- func (client *Client) GetVirtualListener(id string) (listener *VirtualListener, err error)
- func (client *Client) ImportCustomerImage(imageName string, imageDescription string, preventGuestOSCustomization bool, ...) (importID string, err error)
- func (client *Client) ImportSSLCertificateChain(networkDomainID string, name string, description string, ...) (certificateChainID string, err error)
- func (client *Client) ImportSSLDomainCertificate(networkDomainID string, name string, description string, certificate string, ...) (certificateID string, err error)
- func (client *Client) IsExtendedLoggingEnabled() bool
- func (client *Client) ListCustomerImagesInDatacenter(dataCenterID string, paging *Paging) (images *CustomerImages, err error)
- func (client *Client) ListDatacenters(paging *Paging) (datacenters *Datacenters, err error)
- func (client *Client) ListDefaultHealthMonitors(networkDomainID string, paging *Paging) (healthMonitors *HealthMonitors, err error)
- func (client *Client) ListDefaultIRules(networkDomainID string, paging *Paging) (irules *IRules, err error)
- func (client *Client) ListDefaultPersistenceProfiles(networkDomainID string, paging *Paging) (persistenceProfiles *PersistenceProfiles, err error)
- func (client *Client) ListFirewallRules(networkDomainID string, paging *Paging) (rules *FirewallRules, err error)
- func (client *Client) ListIPAddressLists(networkDomainID string) (addressLists *IPAddressLists, err error)
- func (client *Client) ListNATRules(networkDomainID string, paging *Paging) (rules *NATRules, err error)
- func (client *Client) ListNetworkDomains(paging *Paging) (domains *NetworkDomains, err error)
- func (client *Client) ListOSImagesInDatacenter(dataCenterID string, paging *Paging) (images *OSImages, err error)
- func (client *Client) ListPortLists(networkDomainID string) (portLists *PortLists, err error)
- func (client *Client) ListPublicIPBlocks(networkDomainID string, paging *Paging) (blocks *PublicIPBlocks, err error)
- func (client *Client) ListReservedIPv6AddressesInVLAN(vlanID string) (reservedIPAddresses *ReservedIPv6Addresses, err error)
- func (client *Client) ListReservedPrivateIPv4AddressesInVLAN(vlanID string) (reservedIPAddresses *ReservedIPv4Addresses, err error)
- func (client *Client) ListReservedPublicIPAddresses(networkDomainID string, paging *Paging) (reservedPublicIPs *ReservedPublicIPs, err error)
- func (client *Client) ListSSLCertificateChainsInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLCertificateChains, err error)
- func (client *Client) ListSSLDomainCertificatesInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLDomainCertificates, err error)
- func (client *Client) ListSSLOffloadProfilesInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLOffloadProfiles, err error)
- func (client *Client) ListServerAntiAffinityRules(networkDomainID string, paging *Paging) (rules *ServerAntiAffinityRules, err error)
- func (client *Client) ListServersInNetworkDomain(networkDomainID string, paging *Paging) (servers Servers, err error)
- func (client *Client) ListStaticRoute(paging *Paging) (staticRoutes *StaticRoutes, err error)
- func (client *Client) ListStaticRouteSystem(paging *Paging, networkDomainId string) (staticRoutes *StaticRoutes, err error)
- func (client *Client) ListTagKeys(paging *Paging) (tagKeys *TagKeys, err error)
- func (client *Client) ListVIPNodesInNetworkDomain(networkDomainID string, paging *Paging) (nodes *VIPNodes, err error)
- func (client *Client) ListVIPPoolMembers(poolID string, paging *Paging) (members *VIPPoolMembers, err error)
- func (client *Client) ListVIPPoolMembershipsInNetworkDomain(networkDomainID string, paging *Paging) (members *VIPPoolMembers, err error)
- func (client *Client) ListVIPPoolsInNetworkDomain(networkDomainID string, paging *Paging) (pools *VIPPools, err error)
- func (client *Client) ListVLANs(networkDomainID string, paging *Paging) (vlans *VLANs, err error)
- func (client *Client) ListVirtualListenersInNetworkDomain(networkDomainID string, paging *Paging) (listeners *VirtualListeners, err error)
- func (client *Client) ModifyServerBackupClient(serverID string, clientID string, schedulePolicyName string, ...) (clientDownloadURL string, err error)
- func (client *Client) NotifyServerIPAddressChange(networkAdapterID string, newIPv4Address *string, newIPv6Address *string) error
- func (client *Client) PowerOffServer(id string) error
- func (client *Client) ReconfigureServer(serverID string, memoryGB *int, cpuCount *int, cpuCoresPerSocket *int, ...) error
- func (client *Client) RemoveAssetTags(assetID string, assetType string, tagNames ...string) (response *APIResponseV2, err error)
- func (client *Client) RemoveDisk(diskID string) error
- func (client *Client) RemoveDiskFromServer(diskID string) error
- func (client *Client) RemoveNicFromServer(networkAdapterID string) (err error)
- func (client *Client) RemovePublicIPBlock(id string) error
- func (client *Client) RemoveSCSIControllerFromServer(controllerID string) error
- func (client *Client) RemoveServerBackupClient(serverID string, clientID string) error
- func (client *Client) RemoveVIPPoolMember(id string) error
- func (client *Client) ReserveIPv6Address(vlanID string, ipAddress string, description string) error
- func (client *Client) ReservePrivateIPv4Address(vlanID string, ipAddress string, description string) error
- func (client *Client) Reset()
- func (client *Client) ResizeServerDisk(serverID string, diskID string, newSizeGB int) (response *APIResponseV1, err error)
- func (client *Client) RestoreStaticRoute(networkDomainId string) (err error)
- func (client *Client) ShutdownServer(id string) error
- func (client *Client) StartServer(id string) error
- func (client *Client) UnreserveIPv6Address(vlanID string, ipAddress string, description string) error
- func (client *Client) UnreservePrivateIPv4Address(vlanID string, ipAddress string, description string) error
- func (client *Client) WaitForAdd(resourceType ResourceType, id string, actionDescription string, ...) (resource Resource, err error)
- func (client *Client) WaitForChange(resourceType ResourceType, id string, actionDescription string, ...) (resource Resource, err error)
- func (client *Client) WaitForDelete(resourceType ResourceType, id string, timeout time.Duration) error
- func (client *Client) WaitForDeploy(resourceType ResourceType, id string, timeout time.Duration) (resource Resource, err error)
- func (client *Client) WaitForEdit(resourceType ResourceType, id string, timeout time.Duration) (resource Resource, err error)
- func (client *Client) WaitForNestedDeleteChange(resourceType ResourceType, id string, actionDescription string, ...) (resource Resource, err error)
- func (client *Client) WaitForServerBackupStatus(serverID string, actionDescription string, targetStatus string, ...) (server *Server, err error)
- func (client *Client) WaitForServerClone(customerImageID string, timeout time.Duration) (resource Resource, err error)
- type CreateStaticRoute
- type CustomerImage
- func (image *CustomerImage) ApplyTo(config *ServerDeploymentConfiguration)
- func (image *CustomerImage) ApplyToUncustomized(config *UncustomizedServerDeploymentConfiguration)
- func (image *CustomerImage) GetDatacenterID() string
- func (image *CustomerImage) GetID() string
- func (image *CustomerImage) GetName() string
- func (image *CustomerImage) GetOS() OperatingSystem
- func (image *CustomerImage) GetResourceType() ResourceType
- func (image *CustomerImage) GetState() string
- func (image *CustomerImage) GetType() ImageType
- func (image *CustomerImage) IsDeleted() bool
- func (image *CustomerImage) RequiresCustomization() bool
- func (image *CustomerImage) ToEntityReference() EntityReference
- type CustomerImages
- type Datacenter
- type DatacenterNetworking
- type Datacenters
- type DeleteVLAN
- type DeployAttachedVLAN
- type DeployDetachedVLAN
- type DetachedVlanGateway
- type EditIPAddressList
- type EditPortList
- type EditVIPNodeConfiguration
- type EditVIPPoolConfiguration
- type EditVLAN
- type EditVirtualListenerConfiguration
- type Entity
- type EntityReference
- type FieldMessage
- type FirewallRule
- type FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) Accept() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) Disable() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) Drop() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) Enable() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) ICMP() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) IP() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) IPv4() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) IPv6() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchAnyDestinationAddress() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchAnyDestinationPort() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchAnySourceAddress() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchAnySourcePort() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationAddress(address string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationAddressList(addressListID string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationNetwork(baseAddress string, prefixSize int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationPort(port int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationPortList(portListID string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchDestinationPortRange(beginPort int, endPort int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourceAddress(address string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourceAddressList(addressListID string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourceNetwork(baseAddress string, prefixSize int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourcePort(port int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourcePortList(portListID string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) MatchSourcePortRange(beginPort int, endPort int) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) PlaceAfter(afterRuleName string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) PlaceBefore(beforeRuleName string) *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) PlaceFirst() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) TCP() *FirewallRuleConfiguration
- func (configuration *FirewallRuleConfiguration) ToFirewallRule() FirewallRule
- type FirewallRuleIPAddress
- type FirewallRulePlacement
- type FirewallRulePort
- type FirewallRuleScope
- func (scope FirewallRuleScope) Diff(other FirewallRuleScope) (differences []string)
- func (scope *FirewallRuleScope) IsScopeAddressList() bool
- func (scope *FirewallRuleScope) IsScopeAny() bool
- func (scope *FirewallRuleScope) IsScopeHost() bool
- func (scope *FirewallRuleScope) IsScopeNetwork() bool
- func (scope *FirewallRuleScope) IsScopePort() bool
- func (scope *FirewallRuleScope) IsScopePortList() bool
- func (scope *FirewallRuleScope) IsScopePortRange() bool
- type FirewallRules
- type HealthMonitor
- type HealthMonitors
- type IPAddressList
- type IPAddressListEntry
- type IPAddressLists
- type IPRange
- type IPv4Range
- type IPv6Range
- type IRule
- type IRules
- type Image
- type ImageGuestInformation
- type ImageType
- type NATRule
- type NATRules
- type NamedEntity
- type NetworkDomain
- func (domain *NetworkDomain) GetID() string
- func (domain *NetworkDomain) GetName() string
- func (domain *NetworkDomain) GetResourceType() ResourceType
- func (domain *NetworkDomain) GetState() string
- func (domain *NetworkDomain) IsDeleted() bool
- func (domain *NetworkDomain) ToEntityReference() EntityReference
- type NetworkDomains
- type NewVIPNodeConfiguration
- type NewVIPPoolConfiguration
- type NewVirtualListenerConfiguration
- type OSImage
- func (image *OSImage) ApplyTo(config *ServerDeploymentConfiguration)
- func (image *OSImage) ApplyToUncustomized(config *UncustomizedServerDeploymentConfiguration)
- func (image *OSImage) GetDatacenterID() string
- func (image *OSImage) GetID() string
- func (image *OSImage) GetName() string
- func (image *OSImage) GetOS() OperatingSystem
- func (image *OSImage) GetResourceType() ResourceType
- func (image *OSImage) GetState() string
- func (image *OSImage) GetType() ImageType
- func (image *OSImage) IsDeleted() bool
- func (image *OSImage) RequiresCustomization() bool
- func (image *OSImage) ToEntityReference() EntityReference
- type OSImages
- type OperatingSystem
- type OperationCancelledError
- type PagedResult
- type Paging
- type PersistenceProfile
- type PersistenceProfiles
- type PortList
- type PortListEntry
- type PortLists
- type PublicIPBlock
- func (block *PublicIPBlock) GetID() string
- func (block *PublicIPBlock) GetName() string
- func (block *PublicIPBlock) GetResourceType() ResourceType
- func (block *PublicIPBlock) GetState() string
- func (block *PublicIPBlock) IsDeleted() bool
- func (block *PublicIPBlock) ToEntityReference() EntityReference
- type PublicIPBlocks
- type ReservedIPAddress
- type ReservedIPv4Addresses
- type ReservedIPv6Addresses
- type ReservedPublicIP
- type ReservedPublicIPs
- type Resource
- type ResourceType
- type Role
- type SSLCertificateChain
- func (certificateChain *SSLCertificateChain) GetID() string
- func (certificateChain *SSLCertificateChain) GetName() string
- func (certificateChain *SSLCertificateChain) GetResourceType() ResourceType
- func (certificateChain *SSLCertificateChain) GetState() string
- func (certificateChain *SSLCertificateChain) IsDeleted() bool
- func (certificateChain *SSLCertificateChain) ToEntityReference() EntityReference
- type SSLCertificateChains
- type SSLDomainCertificate
- func (domainCertificate *SSLDomainCertificate) GetID() string
- func (domainCertificate *SSLDomainCertificate) GetName() string
- func (domainCertificate *SSLDomainCertificate) GetResourceType() ResourceType
- func (domainCertificate *SSLDomainCertificate) GetState() string
- func (domainCertificate *SSLDomainCertificate) IsDeleted() bool
- func (domainCertificate *SSLDomainCertificate) ToEntityReference() EntityReference
- type SSLDomainCertificates
- type SSLOffloadProfile
- func (offloadProfile *SSLOffloadProfile) GetID() string
- func (offloadProfile *SSLOffloadProfile) GetName() string
- func (offloadProfile *SSLOffloadProfile) GetResourceType() ResourceType
- func (offloadProfile *SSLOffloadProfile) GetState() string
- func (offloadProfile *SSLOffloadProfile) IsDeleted() bool
- func (offloadProfile *SSLOffloadProfile) ToEntityReference() EntityReference
- type SSLOffloadProfiles
- type Server
- type ServerAntiAffinityRule
- func (rule *ServerAntiAffinityRule) GetID() string
- func (rule *ServerAntiAffinityRule) GetName() string
- func (rule *ServerAntiAffinityRule) GetResourceType() ResourceType
- func (rule *ServerAntiAffinityRule) GetState() string
- func (rule *ServerAntiAffinityRule) IsDeleted() bool
- func (rule *ServerAntiAffinityRule) ToEntityReference() EntityReference
- type ServerAntiAffinityRules
- type ServerBackup
- type ServerBackupDetails
- type ServerDeploymentConfiguration
- type ServerSummary
- type Servers
- type StaticRoute
- func (staticRoute *StaticRoute) GetID() string
- func (staticRoute *StaticRoute) GetName() string
- func (staticRoute *StaticRoute) GetResourceType() ResourceType
- func (staticRoute *StaticRoute) GetState() string
- func (staticRoute *StaticRoute) IsDeleted() bool
- func (staticRoute *StaticRoute) ToEntityReference() EntityReference
- type StaticRoutes
- type Tag
- type TagDetail
- type TagDetails
- type TagKey
- type TagKeys
- type UncustomizedServerDeploymentConfiguration
- type VIPNode
- type VIPNodeHealthMonitor
- type VIPNodeReference
- type VIPNodes
- type VIPPool
- type VIPPoolMember
- type VIPPoolMembers
- type VIPPools
- type VLAN
- type VLANs
- type VirtualListener
- func (virtualListener *VirtualListener) GetID() string
- func (virtualListener *VirtualListener) GetName() string
- func (virtualListener *VirtualListener) GetResourceType() ResourceType
- func (virtualListener *VirtualListener) GetState() string
- func (virtualListener *VirtualListener) IsDeleted() bool
- func (virtualListener *VirtualListener) ToEntityReference() EntityReference
- type VirtualListenerVIPPoolRef
- type VirtualListeners
- type VirtualMachineCPU
- type VirtualMachineDisk
- type VirtualMachineDisks
- type VirtualMachineNetwork
- type VirtualMachineNetworkAdapter
- func (networkAdapter *VirtualMachineNetworkAdapter) GetID() string
- func (networkAdapter *VirtualMachineNetworkAdapter) GetName() string
- func (networkAdapter *VirtualMachineNetworkAdapter) GetResourceType() ResourceType
- func (networkAdapter *VirtualMachineNetworkAdapter) GetState() string
- func (networkAdapter *VirtualMachineNetworkAdapter) IsDeleted() bool
- func (networkAdapter *VirtualMachineNetworkAdapter) ToEntityReference() EntityReference
- type VirtualMachineSCSIController
- type VirtualMachineSCSIControllers
- func (controllers VirtualMachineSCSIControllers) GetByBusNumber(busNumber int) *VirtualMachineSCSIController
- func (controllers VirtualMachineSCSIControllers) GetByID(controllerID string) *VirtualMachineSCSIController
- func (controllers VirtualMachineSCSIControllers) GetDiskBySCSIPath(busNumber int, unitID int) *VirtualMachineDisk
- func (controllers VirtualMachineSCSIControllers) GetDiskCount() (count int)
Constants ¶
const ( // AssetTypeServer is an asset type representing a server. AssetTypeServer = "SERVER" // AssetTypeNetworkDomain is an asset type representing a network domain. AssetTypeNetworkDomain = "NETWORK_DOMAIN" // AssetTypeVLAN is an asset type representing a virtual LAN (VLAN). AssetTypeVLAN = "VLAN" // AssetTypePublicIPBlock is an asset type representing a public IP block. AssetTypePublicIPBlock = "PUBLIC_IP_BLOCK" // AssetTypeCustomerImage is an asset type of customer image AssetTypeCustomerImage = "CUSTOMER_IMAGE" // AssetTypeCustomerImage is an asset type of account AssetTypeAccount = "ACCOUNT" // AssetTypeUser is an asset type representing a user. AssetTypeUser = "PUBLIC_IP_BLOCK" )
const ( // BackupServicePlanEssentials represents the basic service plan for Cloud Backup BackupServicePlanEssentials = "Essentials" // BackupServicePlanAdvanced represents the advanced service plan for Cloud Backup BackupServicePlanAdvanced = "Advanced" // BackupServicePlanEnterprise represents the enterprise service plan for Cloud Backup BackupServicePlanEnterprise = "Enterprise" // BackupClientStatusOffline indicates that a backup client is not currently contactable by Cloud Backup. BackupClientStatusOffline = "Offline" // BackupClientStatusUnregistered indicates that a backup client has never registered with Cloud Backup. BackupClientStatusUnregistered = "Unregistered" // BackupClientStatusUnconfigured indicates that a backup client has not been configured by Cloud Backup. BackupClientStatusUnconfigured = "Unconfigured" // BackupClientStatusActive indicates that a backup client is currently contactable by Cloud Backup and is ready to service requests. BackupClientStatusActive = "Active" )
const ( // ResourceStatusNormal indicates that a resource is active. ResourceStatusNormal = "NORMAL" // ResourceStatusPendingAdd indicates that an add operation is pending for the resource. ResourceStatusPendingAdd = "PENDING_ADD" // ResourceStatusPendingChange indicates that a change operation is pending for the resource. ResourceStatusPendingChange = "PENDING_CHANGE" // ResourceStatusPendingDelete indicates that a delete operation is pending for the resource. ResourceStatusPendingDelete = "PENDING_DELETE" // ResourceStatusDeleted is a pseudo-status indicates that a resource has been deleted. ResourceStatusDeleted = "" )
const ( // NetworkAdapterTypeE1000 represents the E1000 network adapter type. NetworkAdapterTypeE1000 = "E1000" // NetworkAdapterTypeVMXNET3 represents the VMXNET3 network adapter type. NetworkAdapterTypeVMXNET3 = "VMXNET3" // NetworkAdapterTypeE1000E represents the E1000e network adapter type. NetworkAdapterTypeE1000E = "E1000E" // NetworkAdapterTypeEnhancedVMXNET2 represents the VMXNET2/Enhanced network adapter type. NetworkAdapterTypeEnhancedVMXNET2 = "ENHANCED_VMXNET2" // NetworkAdapterTypeFlexiblePCNET32 represents the PCNET32/Flexible network adapter type. NetworkAdapterTypeFlexiblePCNET32 = "FLEXIBLE_PCNET32" )
const ( // StorageControllerAdapterTypeBusLogicParallel represents the BusLogic Parallel storage controller adapter type. StorageControllerAdapterTypeBusLogicParallel = "BUSLOGIC_PARALLEL" // StorageControllerAdapterTypeLSILogicParallel represents the LSI Logic Parallel storage controller adapter type. StorageControllerAdapterTypeLSILogicParallel = "LSI_LOGIC_PARALLEL" // StorageControllerAdapterTypeLSILogicSAS represents the LSI Logic SAS storage controller adapter type. StorageControllerAdapterTypeLSILogicSAS = "LSI_LOGIC_SAS" // StorageControllerAdapterTypeEnhancedVMWareParavirtual represents the VMWare Paravirtual storage controller adapter type. StorageControllerAdapterTypeEnhancedVMWareParavirtual = "VMWARE_PARAVIRTUAL" )
const ( // ServerDiskSpeedEconomy represents the economy speed for server disks. ServerDiskSpeedEconomy = "ECONOMY" // ServerDiskSpeedStandard represents the standard speed for server disks. ServerDiskSpeedStandard = "STANDARD" // ServerDiskSpeedHighPerformance represents the high-performance speed for server disks. ServerDiskSpeedHighPerformance = "HIGHPERFORMANCE" // Provisioned IOPS ServerDiskSpeedProvisionedIops = "PROVISIONEDIOPS" )
const ( // FirewallRuleActionAccept indicates a firewall rule that, if it matches, will accept the packet and stop processing further rules. FirewallRuleActionAccept = "ACCEPT_DECISIVELY" // FirewallRuleActionDrop indicates a firewale rule that, if it matches, will drop the packet. FirewallRuleActionDrop = "DROP" // FirewallRuleIPVersion4 indicates a firewall rule that targets IPv4 FirewallRuleIPVersion4 = "IPv4" // FirewallRuleIPVersion6 indicates a firewale rule that targets IPv6 FirewallRuleIPVersion6 = "IPv6" // FirewallRuleProtocolIP indicates a firewall rule that targets the Internet Protocol (IP) FirewallRuleProtocolIP = "IP" // FirewallRuleProtocolTCP indicates a firewall rule that targets the Transmission Control Protocol (TCP) FirewallRuleProtocolTCP = "TCP" // FirewallRuleProtocolICMP indicates a firewall rule that targets the Internet Control Message Protocol (ICMP) FirewallRuleProtocolICMP = "ICMP" // FirewallRuleMatchAny indicates a firewall rule value that matches any other value in the same scope. FirewallRuleMatchAny = "ANY" )
const ( // ResultSuccess is a v1 API result indicating that an operation completed successfully. ResultSuccess = "SUCCESS" // ResultCodeSuccess is a v1 API result code indicating that an operation completed successfully. ResultCodeSuccess = "REASON_0" // ResultCodeResourceBusy is a v1 API result code indicating that an operation cannot be performed on a resource because the resource is busy. ResultCodeResourceBusy = "REASON_392" // ResultCodeServerNotFound is a v1 API result code indicating that an operation cannot be performed on a server because the server could not be found. ResultCodeServerNotFound = "REASON_395" // Backup service is not enabled for organisation ResultCodeBackupNotEnabledForOrg = "REASON_540" // Backup service is not enabled for org at the datacenter where server resides. ResultCodeBackupNotEnabledForOrgInDatacenter = "REASON_541" // ResultCodeBackupNotEnabledForServer is a v1 API result code indicating that an operation cannot be performed on a server because backup is not enabled for that server. ResultCodeBackupNotEnabledForServer = "REASON_543" // ResultCodeBackupEnablementInProgressForServer is a v1 API result code indicating that an operation cannot be performed on a server because backup is in the process of being enabled for that server. ResultCodeBackupEnablementInProgressForServer = "REASON_544" // ResultCodeBackupClientNotFound is a v1 API result code indicating that an operation cannot be performed on a backup client because the backup client does not exist (or was never actually installed on the target server). ResultCodeBackupClientNotFound = "REASON_545" // ResultCodeBackupJobInProgress is a v1 API result code indicating that an operation cannot be performed on a server because one or more backup jobs are in progress for that server. ResultCodeBackupJobInProgress = "REASON_547" // ResultCodeServerHasBackupAgents is a v1 API result code indicating that an operation cannot be performed on a server because the server still has one or more backup agents assigned to it. ResultCodeServerHasBackupAgents = "REASON_548" // ResultCodeBackupEnabledForServer is a v1 API result code indicating that an operation cannot be performed on a server because backup is enabled for that server. ResultCodeBackupEnabledForServer = "REASON_550" // ResultCodeExceedsLimit is a v1 API result code indicating that an operation cannot be performed on a resource because a resource limit was exceeded. ResultCodeExceedsLimit = "REASON_751" )
const ( // ResponseCodeOK is a v2 API response code indicating that an operation completed successfully. ResponseCodeOK = "OK" // ResponseCodeInProgress is a v2 API response code indicating that an operation is in progress. ResponseCodeInProgress = "IN_PROGRESS" // ResponseCodeResourceNotFound is a v2 API response code indicating that an operation failed because a target resource was not found. ResponseCodeResourceNotFound = "RESOURCE_NOT_FOUND" // ResponseCodeAuthorizationFailure is a v2 API response code indicating that an operation failed because the caller was not authorised to perform that operation (e.g. target resource belongs to another organisation). ResponseCodeAuthorizationFailure = "AUTHORIZATION_FAILURE" // ResponseCodeInvalidInputData is a v2 API response code indicating that an operation failed due to invalid input data. ResponseCodeInvalidInputData = "INVALID_INPUT_DATA" // ResponseCodeResourceNameNotUnique is a v2 API response code indicating that an operation failed due to the use of a name that duplicates an existing name. ResponseCodeResourceNameNotUnique = "NAME_NOT_UNIQUE" // ResponseCodeIPAddressNotUnique is a v2 API response code indicating that an operation failed due to the use of an IP address that duplicates an existing IP address. ResponseCodeIPAddressNotUnique = "IP_ADDRESS_NOT_UNIQUE" // ResponseCodeIPAddressOutOfRange is a v2 API response code indicating that an operation failed due to the use of an IP address lies outside the supported range (e.g. outside of the target subnet). ResponseCodeIPAddressOutOfRange = "IP_ADDRESS_OUT_OF_RANGE" // ResponseCodeNoIPAddressAvailable is a v2 API response code indicating that there are no remaining unreserved IPv4 addresses in the target subnet. ResponseCodeNoIPAddressAvailable = "NO_IP_ADDRESS_AVAILABLE" // ResponseCodeResourceHasDependency is a v2 API response code indicating that an operation cannot be performed on a resource because of a resource that depends on it. ResponseCodeResourceHasDependency = "HAS_DEPENDENCY" // ResponseCodeResourceBusy is a v2 API response code indicating that an operation cannot be performed on a resource because the resource is busy. ResponseCodeResourceBusy = "RESOURCE_BUSY" // ResponseCodeResourceLocked is a v2 API response code indicating that an operation cannot be performed on a resource because the resource is locked. ResponseCodeResourceLocked = "RESOURCE_LOCKED" // ResponseCodeExceedsLimit is a v2 API response code indicating that an operation failed because a resource limit was exceeded. ResponseCodeExceedsLimit = "EXCEEDS_LIMIT" // ResponseCodeOutOfResources is a v2 API response code indicating that an operation failed because some type of resource (e.g. free IPv4 addresses) has been exhausted. ResponseCodeOutOfResources = "OUT_OF_RESOURCES" // ResponseCodeOperationNotSupported is a v2 API response code indicating that an operation is not supported. ResponseCodeOperationNotSupported = "OPERATION_NOT_SUPPORTED" // ResponseCodeInfrastructureInMaintenance is a v2 API response code indicating that an operation failed due to maintenance being performed on the supporting infrastructure. ResponseCodeInfrastructureInMaintenance = "INFRASTRUCTURE_IN_MAINTENANCE" // ResponseCodeUnexpectedError is a v2 API response code indicating that the CloudControl API encountered an unexpected error. ResponseCodeUnexpectedError = "UNEXPECTED_ERROR" )
const ( // FirewallRuleIPVersion4 indicates a firewall rule that targets IPv4 IPVersion4 = "IPv4" // FirewallRuleIPVersion6 indicates a firewale rule that targets IPv6 IPVersion6 = "IPv6" )
const ( // VIPNodeStatusEnabled represents a VIP node that is currently enabled. VIPNodeStatusEnabled = "ENABLED" // VIPNodeStatusDisabled represents a VIP node that is currently disabled. VIPNodeStatusDisabled = "DISABLED" // VIPNodeStatusForcedOffline represents a VIP node that has been forced offline. VIPNodeStatusForcedOffline = "FORCED_OFFLINE" )
const ( // ServiceDownActionNone indicates no action will be taken when a pool service is down. ServiceDownActionNone = "NONE" // ServiceDownActionDrop indicates that a pool service will be dropped when it is down. ServiceDownActionDrop = "DROP" // ServiceDownActionReselect indicates that a pool service will be reselected when it is down. ServiceDownActionReselect = "RESELECT" // LoadBalanceMethodRoundRobin indicates that requests will be directed to pool nodes in round-robin fashion. LoadBalanceMethodRoundRobin = "ROUND_ROBIN" // LoadBalanceMethodLeastConnectionsNode indicates that requests will be directed to the pool node that has the smallest number of active connections at the moment of connection. // All connections to the node are considered. LoadBalanceMethodLeastConnectionsNode = "LEAST_CONNECTIONS_NODE" // LoadBalanceMethodLeastConnectionsMember indicates that requests will be directed to the pool node that has the smallest number of active connections at the moment of connection. // Only connections to the node as a member of the current pool are considered. LoadBalanceMethodLeastConnectionsMember = "LEAST_CONNECTIONS_MEMBER" // LoadBalanceMethodObservedNode indicates that requests will be directed to the pool node that has the smallest number of active connections over time. // All connections to the node are considered. LoadBalanceMethodObservedNode = "OBSERVED_NODE" // LoadBalanceMethodObservedMember indicates that requests will be directed to the pool node that has the smallest number of active connections over time. // Only connections to the node as a member of the current pool are considered. LoadBalanceMethodObservedMember = "OBSERVED_MEMBER" // LoadBalanceMethodPredictiveNode indicates that requests will be directed to the pool node that is predicted to have the smallest number of active connections. // All connections to the pool are considered. LoadBalanceMethodPredictiveNode = "PREDICTIVE_NODE" // LoadBalanceMethodPredictiveMember indicates that requests will be directed to the pool node that is predicted to have the smallest number of active connections over time. // Only connections to the pool as a member of the current pool are considered. LoadBalanceMethodPredictiveMember = "PREDICTIVE_MEMBER" )
const ( // VirtualListenerTypeStandard represents a standard virtual listener. VirtualListenerTypeStandard = "STANDARD" // VirtualListenerTypePerformanceLayer4 represents a high-performance (layer 4) virtual listener. VirtualListenerTypePerformanceLayer4 = "PERFORMANCE_LAYER_4" )
Virtual listener types
const ( // Any protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolAny = "ANY" // Transmission Control Protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolTCP = "TCP" // Uniform Datagram Protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolUDP = "UDP" // Hypertext Transfer Protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolHTTP = "HTTP" // File Transfer Protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolFTP = "FTP" // Simple Mail Transfer Protocol (as supported by a standard virtual listener). VirtualListenerStandardProtocolSMTP = "SMTP" )
Protocols supported by a standard virtual listener
const ( // Any protocol (as supported by a high-performance layer 4 virtual listener). VirtualListenerPerformanceLayer4ProtocolAny = "ANY" // Transmission Control Protocol (as supported by a high-performance layer 4 virtual listener). VirtualListenerPerformanceLayer4ProtocolTCP = "TCP" // Uniform Datagram Protocol (as supported by a high-performance layer 4 virtual listener). VirtualListenerPerformanceLayer4ProtocolUDP = "UDP" // Hypertext Transfer Protocol (as supported by a high-performance layer 4 virtual listener). VirtualListenerPerformanceLayer4ProtocolHTTP = "HTTP" )
Protocols supported by a high-performance (layer 4) virtual listener
const ( // Source port preservation is enabled. SourcePortPreservationEnabled = "PRESERVE" // Source port preservation is enabled (strict mode). SourcePortPreservationEnabledStrict = "PRESERVE_STRICT" // Source port preservation is disabled. SourcePortPreservationDisabled = "CHANGE" )
Options for source-port preservation on a virtual listener.
Variables ¶
This section is empty.
Functions ¶
func GetResourceDescription ¶
func GetResourceDescription(resourceType ResourceType) (string, error)
GetResourceDescription retrieves a textual description of the specified resource type.
func ImageTypeName ¶
ImageTypeName gets the name of the specified image type.
func IsAPIError ¶
IsAPIError determines whether the specified error represents a CloudControl API error.
func IsAPIErrorCode ¶
IsAPIErrorCode determines whether the specified error represents a CloudControl API error with the specified response code.
func IsExceedsLimitError ¶
IsExceedsLimitError determines whether the specified error represents a EXCEEDS_LIMIT response (or its v1 equivalent, REASON_751) from CloudControl.
func IsNoIPAddressAvailableError ¶
IsNoIPAddressAvailableError determines whether the specified error represents a NO_IP_ADDRESS_AVAILABLE response from CloudControl.
func IsOperationCancelledError ¶
IsOperationCancelledError determines if an error is an OperationCancelledError.
func IsResourceBusyError ¶
IsResourceBusyError determines whether the specified error represents a RESOURCE_BUSY response (or its v1 equivalent, REASON_392) from CloudControl.
func IsResourceNotFoundError ¶
IsResourceNotFoundError determines whether the specified error represents a RESOURCE_NOT_FOUND response from CloudControl.
Types ¶
type APIError ¶
type APIError struct { Message string Response APIResponse }
APIError is an error representing an error response from an API.
type APIResponse ¶
type APIResponse interface { // GetMessage gets the message associated with the API response. GetMessage() string // GetResponseCode gets the response code associated with the API response. GetResponseCode() string // GetRequestID returns the request correlation ID. GetRequestID() string // GetAPIVersion gets the version of the API that returned the response. GetAPIVersion() string }
APIResponse represents the response to an API call.
type APIResponseAdditionalInformationV1 ¶
type APIResponseAdditionalInformationV1 struct { Name string `xml:"name,attr"` Value string `xml:"value"` }
APIResponseAdditionalInformationV1 represents additional information in a V1 API response (in the form of a name / value pair).
type APIResponseV1 ¶
type APIResponseV1 struct { // The XML name for the "APIResponseV1" data contract XMLName xml.Name `xml:"Status"` // The operation for which status is being reported. Operation string `xml:"operation"` // The operation result. Result string `xml:"result"` // A brief message describing the operation result. Message string `xml:"resultDetail"` // The operation result code ResultCode string `xml:"resultCode"` // Additional information (if any). AdditionalInformation []APIResponseAdditionalInformationV1 `xml:"additionalInformation"` }
APIResponseV1 represents a response from the CloudControl v1 API for an asynchronous operation.
func (*APIResponseV1) GetAPIVersion ¶
func (response *APIResponseV1) GetAPIVersion() string
GetAPIVersion gets the response code associated with the API response.
func (*APIResponseV1) GetAdditionalInformation ¶
func (response *APIResponseV1) GetAdditionalInformation(name string) *string
GetAdditionalInformation retrieves additional information (if available) by name from the API response.
Returns nil if no matching additional information is found with the specified name.
func (*APIResponseV1) GetMessage ¶
func (response *APIResponseV1) GetMessage() string
GetMessage gets the message associated with the API response.
func (*APIResponseV1) GetRequestID ¶
func (response *APIResponseV1) GetRequestID() string
GetRequestID gets the request correlation ID.
func (*APIResponseV1) GetResponseCode ¶
func (response *APIResponseV1) GetResponseCode() string
GetResponseCode gets the response code associated with the API response.
func (*APIResponseV1) ToError ¶
func (response *APIResponseV1) ToError(errorMessageOrFormat string, formatArgs ...interface{}) error
ToError creates an error representing the API response.
type APIResponseV2 ¶
type APIResponseV2 struct { // The operation that was performed. Operation string `json:"operation"` // The API response code. ResponseCode string `json:"responseCode"` // The API status message (if any). Message string `json:"message"` // Informational messages (if any) relating to request fields. FieldMessages []FieldMessage `json:"info"` // Warning messages (if any) relating to request fields. FieldWarnings []FieldMessage `json:"warning"` // Error messages (if any) relating to request fields. FieldErrors []FieldMessage `json:"error"` // The request ID (correlation identifier). RequestID string `json:"requestId"` }
APIResponseV2 represents the basic response most commonly received when making v2 API calls.
func (*APIResponseV2) GetAPIVersion ¶
func (response *APIResponseV2) GetAPIVersion() string
GetAPIVersion gets the response code associated with the API response.
func (*APIResponseV2) GetFieldError ¶
func (response *APIResponseV2) GetFieldError(fieldName string) *string
GetFieldError retrieves the value of the specified field error message (if any). Returns nil if the no field error message with the specified name is present in the API response.
func (*APIResponseV2) GetFieldMessage ¶
func (response *APIResponseV2) GetFieldMessage(fieldName string) *string
GetFieldMessage retrieves the value of the specified field message (if any). Returns nil if the no field message with the specified name is present in the API response.
func (*APIResponseV2) GetFieldWarning ¶
func (response *APIResponseV2) GetFieldWarning(fieldName string) *string
GetFieldWarning retrieves the value of the specified field warning message (if any). Returns nil if the no field warning message with the specified name is present in the API response.
func (*APIResponseV2) GetMessage ¶
func (response *APIResponseV2) GetMessage() string
GetMessage gets the message associated with the API response.
func (*APIResponseV2) GetRequestID ¶
func (response *APIResponseV2) GetRequestID() string
GetRequestID gets the request correlation ID.
func (*APIResponseV2) GetResponseCode ¶
func (response *APIResponseV2) GetResponseCode() string
GetResponseCode gets the response code associated with the API response.
func (*APIResponseV2) ToError ¶
func (response *APIResponseV2) ToError(errorMessageOrFormat string, formatArgs ...interface{}) error
ToError creates an error representing the API response.
type Account ¶
type Account struct { // The XML name for the "Account" data contract XMLName xml.Name `xml:"Account"` // The compute API user name. UserName string `xml:"userName"` // The user's full name. FullName string `xml:"fullName"` // The user's first name. FirstName string `xml:"firstName"` // The user's last name. LastName string `xml:"lastName"` // The user's email address. EmailAddress string `xml:"emailAddress"` // The user's department. Department string `xml:"department"` // The Id of the user's organisation. OrganizationID string `xml:"orgId"` // The user's assigned roles. AssignedRoles []Role `xml:"roles>role"` }
Account represents the details for a compute account.
type AttachedVlanGateway ¶
type AttachedVlanGateway struct { // Gateway addressing. Valid input either 'HIGH' or 'LOW' GatewayAddressing string `json:"gatewayAddressing"` }
type BackupClientAlerting ¶
type BackupClientAlerting struct { // The XML name for the BackupClientAlerting structure XMLName xml.Name // Always a child element, so we'll accept element name from containing element's declaration // When should the alert be triggered? // // Must be one of "ON_FAILURE", "ON_SUCCESS", "ON_SUCCESS_OR_FAILURE". Trigger string `xml:"trigger,attr"` // Email addresses for alert notifications. EmailAddresses []string `xml:"http://oec.api.opsource.net/schemas/backup emailAddress"` }
BackupClientAlerting represents the alerting configuration for a backup client.
type BackupClientDetail ¶
type BackupClientDetail struct { // The XML name for the BackupClientDetail structure XMLName xml.Name // Always a child element, so we'll accept element name from containing element's declaration // The client Id. ID string `xml:"id,attr"` // The client type (e.g. "FA.Linux"). Type string `xml:"type,attr"` // Does the backup client operate at the file-system level? IsFileSystem bool `xml:"isFileSystem,attr"` // The backup client's status (e.g. "Unregistered", etc). Status string `xml:"status,attr"` // A description of the backup client. Description string `xml:"http://oec.api.opsource.net/schemas/backup description"` // The name of the storage policy to use. StoragePolicyName string `xml:"http://oec.api.opsource.net/schemas/backup storagePolicyName"` // The name of the schedule policy to use. SchedulePolicyName string `xml:"http://oec.api.opsource.net/schemas/backup schedulePolicyName"` // The client alerting configuration (if any). Alerting *BackupClientAlerting `xml:"http://oec.api.opsource.net/schemas/backup alerting,omitempty"` // The server's total backup size (in GB). TotalBackupSizeGb int `xml:"http://oec.api.opsource.net/schemas/backup totalBackupSizeGb"` // The client download URL. DownloadURL string `xml:"http://oec.api.opsource.net/schemas/backup downloadUrl"` }
BackupClientDetail represents the detail for a specific backup client on a server.
type BackupClientType ¶
type BackupClientType struct { // The XML name for the BackupClientType structure XMLName xml.Name // Always a child element, so we'll accept element name from containing element's declaration Type string `xml:"type,attr"` IsFileSystem bool `xml:"isFileSystem,attr"` Description string `xml:"description,attr"` }
BackupClientType represents a types of backup client enabled for a server.
type BackupClientTypes ¶
type BackupClientTypes struct { // The XML name for the BackupClientTypes structure XMLName xml.Name `xml:"http://oec.api.opsource.net/schemas/backup BackupClientTypes"` // Types of backup client enabled for the server. Items []BackupClientType `xml:"http://oec.api.opsource.net/schemas/backup backupClientType"` }
BackupClientTypes represents the types of backup client enabled for a server.
type BackupSchedulePolicies ¶
type BackupSchedulePolicies struct { // The XML name for the BackupClientType structure XMLName xml.Name `xml:"http://oec.api.opsource.net/schemas/backup BackupSchedulePolicies"` // The schedule policies. Items []BackupSchedulePolicy `xml:"http://oec.api.opsource.net/schemas/backup schedulePolicy"` }
BackupSchedulePolicies represents a list of backup schedule policies.
type BackupSchedulePolicy ¶
type BackupSchedulePolicy struct { // The XML name for the BackupSchedulePolicy structure XMLName xml.Name // Always a child element, so we'll accept element name from containing element's declaration // The policy name. Name string `xml:"name,attr"` // The policy description. Description string `xml:"description,attr"` }
BackupSchedulePolicy represents a Cloud Backup schedule policy.
type BackupStoragePolicies ¶
type BackupStoragePolicies struct { // The XML name for the BackupClientType structure XMLName xml.Name `xml:"http://oec.api.opsource.net/schemas/backup BackupStoragePolicies"` // The storage policies. Items []BackupStoragePolicy `xml:"http://oec.api.opsource.net/schemas/backup storagePolicy"` }
BackupStoragePolicies represents a list of backup storage policies.
type BackupStoragePolicy ¶
type BackupStoragePolicy struct { // The XML name for the BackupStoragePolicy structure XMLName xml.Name // Always a child element, so we'll accept element name from containing element's declaration // The policy name. Name string `xml:"name,attr"` // The policy's backup retention period (in days). RetentionPeriodInDays int `xml:"retentionPeriodInDays,attr"` // The secondary location where backups are stored. SecondaryLocation string `xml:"secondaryLocation,attr"` }
BackupStoragePolicy represents a Cloud Backup storage policy.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is the client for Dimension Data's cloud compute API.
func NewClient ¶
NewClient creates a new cloud compute API client. region is the cloud compute region identifier.
func NewClientWithBaseAddress ¶
NewClientWithBaseAddress creates a new cloud compute API client using a custom end-point base address. baseAddress is the base URL of the CloudControl API end-point.
func (*Client) AddAddress ¶
func (*Client) AddDiskToSCSIController ¶
func (client *Client) AddDiskToSCSIController(controllerID string, scsiUnitID int, sizeGB int, speed string, iops int) (diskID string, err error)
AddDiskToSCSIController adds a disk to an existing SCSI controller.
func (*Client) AddDiskToServer ¶
func (client *Client) AddDiskToServer(serverID string, scsiBusNumber *int, scsiUnitID *int, sizeGB int, speed string, iops int) (diskID string, err error)
AddDiskToServer adds a disk to an existing server.
func (*Client) AddNATRule ¶
func (client *Client) AddNATRule(networkDomainID string, internalIPAddress string, externalIPAddress *string) (natRuleID string, err error)
AddNATRule creates a new NAT rule to forward traffic from the specified external IPv4 address to the specified internal IPv4 address. If externalIPAddress is not specified, an unallocated IPv4 address will be used (if available).
This operation is synchronous.
func (*Client) AddNicToServer ¶
func (client *Client) AddNicToServer(serverID string, ipv4Address string, vlanID string) (nicID string, err error)
AddNicToServer adds a network adapter to a server
func (*Client) AddNicWithTypeToServer ¶
func (client *Client) AddNicWithTypeToServer(serverID string, ipv4Address string, vlanID string, adapterType string) (nicID string, err error)
AddNicWithTypeToServer adds a network adapter of a specific type to a server
func (*Client) AddPublicIPBlock ¶
AddPublicIPBlock adds a new block of public IPv4 addresses to the specified network domain.
func (*Client) AddSCSIControllerToServer ¶
func (client *Client) AddSCSIControllerToServer(serverID string, adapterType string, busNumber int) error
AddSCSIControllerToServer adds a SCSI controller to a server.
func (*Client) AddServerBackupClient ¶
func (client *Client) AddServerBackupClient(serverID string, clientType string, schedulePolicyName string, storagePolicyName string, alerting *BackupClientAlerting) (clientID string, clientDownloadURL string, err error)
AddServerBackupClient adds a backup client to a server.
func (*Client) AddVIPPoolMember ¶
func (client *Client) AddVIPPoolMember(poolID string, nodeID string, status string, port *int) (poolMemberID string, err error)
AddVIPPoolMember adds a VIP node as a member of a VIP pool. State must be one of VIPNodeStatusEnabled, VIPNodeStatusDisabled, or VIPNodeStatusDisabled Returns the member ID (uniquely identifies this combination of node, pool, and port).
func (*Client) ApplyAssetTags ¶
func (client *Client) ApplyAssetTags(assetID string, assetType string, tags ...Tag) (response *APIResponseV2, err error)
ApplyAssetTags applies the specified tags to an asset.
func (*Client) Cancel ¶
func (client *Client) Cancel()
Cancel cancels all pending WaitForXXX or HTTP request operations.
func (*Client) CancelBackupClientJobs ¶
CancelBackupClientJobs cancels all running jobs (if any) for a backup client.
func (*Client) ChangeNetworkAdapterType ¶
func (client *Client) ChangeNetworkAdapterType(networkAdapterID string, networkAdapterType string) (err error)
ChangeNetworkAdapterType changes the type of a server's network adapter.
func (*Client) ChangeServerBackupServicePlan ¶
ChangeServerBackupServicePlan changes a server's Cloud Backup service plan
func (*Client) ChangeServerDiskIops ¶
func (client *Client) ChangeServerDiskIops(diskID string, iops int) (apiResponse *APIResponseV2, err error)
Change Disk IOPS
func (*Client) ChangeServerDiskSpeed ¶
func (client *Client) ChangeServerDiskSpeed(serverID string, diskID string, newSpeed string, iops *int) (apiResponse *APIResponseV2, err error)
ChangeServerDiskSpeed requests changing of a server disk's speed.
func (*Client) CheckAddressExists ¶
func (*Client) CloneServer ¶
func (client *Client) CloneServer(serverID string, imageName string, imageDescription string, preventGuestOSCustomisation bool) (imageID string, err error)
CloneServer clones a server to create a customer image.
func (*Client) ConfigureRetry ¶
ConfigureRetry configures the client's retry facility. Set maxRetryCount to 0 (the default) to disable retry.
func (*Client) CreateFirewallRule ¶
func (client *Client) CreateFirewallRule(configuration FirewallRuleConfiguration) (firewallRuleID string, err error)
CreateFirewallRule creates a new firewall rule.
func (*Client) CreateIPAddressList ¶
func (client *Client) CreateIPAddressList(name string, description string, ipVersion string, networkDomainID string, addresses []IPAddressListEntry, childListIDs []string) (addressListID string, err error)
CreateIPAddressList creates a new IP address list. Returns the Id of the new IP address list.
This operation is synchronous.
func (*Client) CreatePortList ¶
func (client *Client) CreatePortList(name string, description string, networkDomainID string, ports []PortListEntry, childListIDs []string) (portListID string, err error)
CreatePortList creates a new port list. Returns the Id of the new port list.
This operation is synchronous.
func (*Client) CreateSSLOffloadProfile ¶
func (client *Client) CreateSSLOffloadProfile(networkDomainID string, name string, description string, ciphers *string, sslDomainCertificateID string, sslCertificateChainID string) (offloadProfileID string, err error)
CreateSSLOffloadProfile creates an SSL-offload profile in a network domain.
func (*Client) CreateServerAntiAffinityRule ¶
func (client *Client) CreateServerAntiAffinityRule(server1Id string, server2Id string) (ruleID string, err error)
CreateServerAntiAffinityRule creates an anti-affinity rule for the 2 specified servers. server1Id is the Id of the first server. server2Id is the Id of the second server.
Returns the Id of the new anti-affinity rule.
func (*Client) CreateStaticRoute ¶
func (client *Client) CreateStaticRoute(networkDomainId string, name string, description string, ipVersion string, destinationNetworkAddress string, destinationPrefixSize int, nextHopAddress string) (staticRouteID string, err error)
Create enterprise static route
func (*Client) CreateTagKey ¶
func (client *Client) CreateTagKey(name string, description string, isValueRequired bool, displayOnReports bool) (tagKeyID string, err error)
CreateTagKey creates a new tag key.
func (*Client) CreateVIPNode ¶
func (client *Client) CreateVIPNode(nodeConfiguration NewVIPNodeConfiguration) (nodeID string, err error)
CreateVIPNode creates a new VIP node. Returns the Id of the new node.
func (*Client) CreateVIPPool ¶
func (client *Client) CreateVIPPool(poolConfiguration NewVIPPoolConfiguration) (poolID string, err error)
CreateVIPPool creates a new VIP pool. Returns the Id of the new pool.
func (*Client) CreateVirtualListener ¶
func (client *Client) CreateVirtualListener(listenerConfiguration NewVirtualListenerConfiguration) (nodeID string, err error)
CreateVirtualListener creates a new VIP node. Returns the Id of the new node.
func (*Client) DeleteAddress ¶
func (client *Client) DeleteAddress(addresslistId string, ipAddress string) (addressList *IPAddressList, err error)
Note: ipAddress can represent begin or network
func (*Client) DeleteFirewallRule ¶
DeleteFirewallRule deletes the specified FirewallRule rule.
func (*Client) DeleteIPAddressList ¶
DeleteIPAddressList deletes an existing IP address list. Returns an error if the operation was not successful.
This operation is synchronous.
func (*Client) DeleteNATRule ¶
DeleteNATRule deletes the specified NAT rule. This operation is synchronous.
func (*Client) DeleteNetworkDomain ¶
DeleteNetworkDomain deletes an existing network domain. Returns an error if the operation was not successful.
func (*Client) DeletePortList ¶
DeletePortList deletes an existing port list. Returns an error if the operation was not successful.
This operation is synchronous.
func (*Client) DeleteSSLCertificateChain ¶
DeleteSSLCertificateChain deletes an existing SSL certificate chain.
Returns an error if the operation was not successful.
func (*Client) DeleteSSLDomainCertificate ¶
DeleteSSLDomainCertificate deletes an existing SSL domain certificate.
Returns an error if the operation was not successful.
func (*Client) DeleteSSLOffloadProfile ¶
DeleteSSLOffloadProfile deletes an existing SSL-offload profile.
Returns an error if the operation was not successful.
func (*Client) DeleteServer ¶
DeleteServer deletes an existing Server. Returns an error if the operation was not successful.
func (*Client) DeleteServerAntiAffinityRule ¶
DeleteServerAntiAffinityRule deletes the specified server anti-affinity rule.
func (*Client) DeleteStaticRoute ¶
Delete static route
func (*Client) DeleteTagKey ¶
DeleteTagKey deletes the specified TagKey rule.
func (*Client) DeleteVIPNode ¶
DeleteVIPNode deletes an existing VIP node. Returns an error if the operation was not successful.
func (*Client) DeleteVIPPool ¶
DeleteVIPPool deletes an existing VIP pool. Returns an error if the operation was not successful.
func (*Client) DeleteVLAN ¶
DeleteVLAN deletes an existing VLAN. Returns an error if the operation was not successful.
func (*Client) DeleteVirtualListener ¶
DeleteVirtualListener deletes an existing virtual listener. Returns an error if the operation was not successful.
func (*Client) DeployNetworkDomain ¶
func (client *Client) DeployNetworkDomain(name string, description string, plan string, datacenter string) (networkDomainID string, err error)
DeployNetworkDomain deploys a new network domain. Returns the Id of the new network domain.
func (*Client) DeployServer ¶
func (client *Client) DeployServer(serverConfiguration ServerDeploymentConfiguration) (serverID string, err error)
DeployServer deploys a new virtual machine.
func (*Client) DeployUncustomizedServer ¶
func (client *Client) DeployUncustomizedServer(serverConfiguration UncustomizedServerDeploymentConfiguration) (serverID string, err error)
DeployUncustomizedServer deploys a new virtual machine.
func (*Client) DeployVLAN ¶
func (client *Client) DeployVLAN(networkDomainID string, name string, description string, ipv4BaseAddress string, ipv4PrefixSize int, attachedVlanGatewayAddressing string, detachedVlanIpv4GatewayAddress string) (vlanID string, err error)
DeployVLAN deploys a new VLAN into a network domain.
func (*Client) DisableExtendedLogging ¶
func (client *Client) DisableExtendedLogging()
DisableExtendedLogging disables logging of HTTP requests and responses.
func (*Client) DisableServerBackup ¶
DisableServerBackup disables Cloud Backup for a server
func (*Client) EditFirewallRule ¶
EditFirewallRule updates the configuration for a firewall rule (enable / disable). This operation is synchronous.
func (*Client) EditIPAddressList ¶
func (client *Client) EditIPAddressList(edit EditIPAddressList) error
EditIPAddressList updates the configuration for a IP address list.
Note that this operation is not additive; it *replaces* the configuration for the IP address list. You can IPAddressList.BuildEditRequest() to create an EditIPAddressList request that copies the current state of the IPAddressList (and then apply customisations).
This operation is synchronous.
func (*Client) EditNetworkDomain ¶
func (client *Client) EditNetworkDomain(id string, name *string, description *string, plan *string) (err error)
EditNetworkDomain updates an existing network domain. Pass an empty string for any field to retain its existing value. Returns an error if the operation was not successful.
func (*Client) EditPortList ¶
func (client *Client) EditPortList(id string, edit EditPortList) error
EditPortList updates the configuration for a port list.
Note that this operation is not additive; it *replaces* the configuration for the port list. You can PortList.BuildEditRequest() to create an EditPortList request that copies the current state of the PortList (and then apply customisations).
This operation is synchronous.
func (*Client) EditSSLOffloadProfile ¶
func (client *Client) EditSSLOffloadProfile(sslOffloadProfile SSLOffloadProfile) error
EditSSLOffloadProfile updates an existing SSL-offload profile.
func (*Client) EditServerMetadata ¶
EditServerMetadata modifies a server's name and / or description.
Pass nil for values you don't want to modify.
func (*Client) EditVIPNode ¶
func (client *Client) EditVIPNode(id string, nodeConfiguration EditVIPNodeConfiguration) error
EditVIPNode updates an existing VIP node.
func (*Client) EditVIPPool ¶
func (client *Client) EditVIPPool(id string, poolConfiguration EditVIPPoolConfiguration) error
EditVIPPool updates an existing VIP pool.
func (*Client) EditVIPPoolMember ¶
EditVIPPoolMember updates the status of an existing VIP pool member. status can be VIPNodeStatusEnabled, VIPNodeStatusDisabled, or VIPNodeStatusForcedOffline
func (*Client) EditVLAN ¶
EditVLAN updates an existing VLAN. Pass an empty string for any field to retain its existing value. Returns an error if the operation was not successful.
func (*Client) EditVirtualListener ¶
func (client *Client) EditVirtualListener(id string, listenerConfiguration EditVirtualListenerConfiguration) error
EditVirtualListener updates an existing virtual listener.
func (*Client) EnableExtendedLogging ¶
func (client *Client) EnableExtendedLogging()
EnableExtendedLogging enables logging of HTTP requests and responses.
func (*Client) EnableServerBackup ¶
EnableServerBackup enables Cloud Backup for a server
func (*Client) ExpandDisk ¶
func (client *Client) ExpandDisk(diskID string, newSizeGB int) (response *APIResponseV2, err error)
ExpandDisk requests expanding of a server / SCSI controller's disk.
func (*Client) ExportCustomerImage ¶
func (client *Client) ExportCustomerImage(imageID string, ovfPackagePrefix string) (exportID string, err error)
ExportCustomerImage exports the specified customer image to an OVF package.
The OVF package can then be downloaded via FTPS.
The image's status will be ResourceStatusPendingChange while the export is in progress, then ResourceStatusNormal once the export is complete.
func (*Client) FindCustomerImage ¶
func (client *Client) FindCustomerImage(name string, dataCenterID string) (image *CustomerImage, err error)
FindCustomerImage finds a customer image by name in a given data centre.
func (*Client) FindOSImage ¶
FindOSImage finds an OS image by name in a given data centre.
func (*Client) GetAccount ¶
GetAccount retrieves the current user's account information
func (*Client) GetAddressOk ¶
func (*Client) GetAssetTags ¶
func (client *Client) GetAssetTags(assetID string, assetType string, paging *Paging) (tags *TagDetails, err error)
GetAssetTags gets all tags applied to the specified asset.
Note that due to a bug in the CloudControl API, when you go past the last page if results, you'll receive an UNEXPECTED_ERROR response code.
func (*Client) GetAssetTagsByType ¶
func (client *Client) GetAssetTagsByType(assetType string, datacenterID string, paging *Paging) (tags *TagDetails, err error)
GetAssetTagsByType gets all tags applied to assets of the specified type.
datacenterID is optional (pass an empty string for tags from all datacenters).
Note that due to a bug in the CloudControl API, when you go past the last page if results, you'll receive an UNEXPECTED_ERROR response code.
func (*Client) GetAvailablePublicIPAddresses ¶
func (client *Client) GetAvailablePublicIPAddresses(networkDomainID string) (availableIPs map[string]string, err error)
GetAvailablePublicIPAddresses retrieves all public IPv4 addresses in the specified network domain that are available for use.
Returns a map of IP block IDs, keyed by public IP address.
func (*Client) GetCustomerImage ¶
func (client *Client) GetCustomerImage(id string) (image *CustomerImage, err error)
GetCustomerImage retrieves a specific customer image by Id.
func (*Client) GetDatacenter ¶
func (client *Client) GetDatacenter(id string) (datacenter *Datacenter, err error)
GetDatacenter retrieves the datacenter with the specified Id. id is the Id of the datacenter to retrieve. Returns nil if no datacenter is found with the specified Id.
func (*Client) GetFirewallRule ¶
func (client *Client) GetFirewallRule(id string) (rule *FirewallRule, err error)
GetFirewallRule retrieves the Firewall rule with the specified Id. Returns nil if no Firewall rule is found with the specified Id.
func (*Client) GetIPAddressList ¶
func (client *Client) GetIPAddressList(id string) (addressList *IPAddressList, err error)
GetIPAddressList retrieves the IP address list with the specified Id. id is the Id of the IP address list to retrieve. Returns nil if no addressList is found with the specified Id.
func (*Client) GetIPAddressListByName ¶
func (client *Client) GetIPAddressListByName(name string, networkDomainID string) (addressList *IPAddressList, err error)
GetIPAddressList retrieves the IP address list by name. Name is the name of the IP address list to retrieve. Returns nil if no addressList is found with the specified name.
func (*Client) GetNATRule ¶
GetNATRule retrieves the NAT rule with the specified Id. Returns nil if no NAT rule is found with the specified Id.
func (*Client) GetNetworkDomain ¶
func (client *Client) GetNetworkDomain(id string) (domain *NetworkDomain, err error)
GetNetworkDomain retrieves the network domain with the specified Id. id is the Id of the network domain to retrieve. Returns nil if no network domain is found with the specified Id.
func (*Client) GetNetworkDomainByName ¶
func (client *Client) GetNetworkDomainByName(name string, dataCenterID string) (domain *NetworkDomain, err error)
GetNetworkDomainByName retrieves the network domain (if any) with the specified name in the specified data centre.
func (*Client) GetOSImage ¶
GetOSImage retrieves a specific OS image by Id.
func (*Client) GetPortList ¶
GetPortList retrieves the port list with the specified Id. id is the Id of the port list to retrieve. Returns nil if no portList is found with the specified Id.
func (*Client) GetPublicIPBlock ¶
func (client *Client) GetPublicIPBlock(id string) (block *PublicIPBlock, err error)
GetPublicIPBlock retrieves the public IPv4 address block with the specified Id. Returns nil if no IPv4 address block is found with the specified Id.
func (*Client) GetResource ¶
func (client *Client) GetResource(id string, resourceType ResourceType) (Resource, error)
GetResource retrieves a compute resource of the specified type by Id. id is the resource Id. resourceType is the resource type (e.g. ResourceTypeNetworkDomain, ResourceTypeVLAN, etc).
func (*Client) GetSSLCertificateChain ¶
func (client *Client) GetSSLCertificateChain(id string) (pool *SSLCertificateChain, err error)
GetSSLCertificateChain retrieves the SSL certificate chain with the specified Id.
Returns nil if no SSL certificate chain is found with the specified Id.
func (*Client) GetSSLDomainCertificate ¶
func (client *Client) GetSSLDomainCertificate(id string) (pool *SSLDomainCertificate, err error)
GetSSLDomainCertificate retrieves the SSL domain certificate with the specified Id. Returns nil if no SSL domain certificate is found with the specified Id.
func (*Client) GetSSLOffloadProfile ¶
func (client *Client) GetSSLOffloadProfile(id string) (pool *SSLOffloadProfile, err error)
GetSSLOffloadProfile retrieves the SSL-offload profile with the specified Id.
Returns nil if no SSL-offload profile is found with the specified Id.
func (*Client) GetServer ¶
GetServer retrieves the server with the specified Id. id is the Id of the server to retrieve. Returns nil if no server is found with the specified Id.
func (*Client) GetServerAntiAffinityRule ¶
func (client *Client) GetServerAntiAffinityRule(ruleID string, networkDomainID string) (rule *ServerAntiAffinityRule, err error)
GetServerAntiAffinityRule retrieves the specified server anti-affinity rule (in the specified network domain).
func (*Client) GetServerBackupClientTypes ¶
func (client *Client) GetServerBackupClientTypes(serverID string) (*BackupClientTypes, error)
GetServerBackupClientTypes retrieves a list of a server's configured Cloud Backup clients.
func (*Client) GetServerBackupDetails ¶
func (client *Client) GetServerBackupDetails(serverID string) (*ServerBackupDetails, error)
GetServerBackupDetails retrieves detailed information about a server's Cloud Backup status
func (*Client) GetServerBackupSchedulePolicies ¶
func (client *Client) GetServerBackupSchedulePolicies(serverID string) (*BackupSchedulePolicies, error)
GetServerBackupSchedulePolicies retrieves a list of a server's configured Cloud Backup schedule policies.
func (*Client) GetServerBackupStoragePolicies ¶
func (client *Client) GetServerBackupStoragePolicies(serverID string) (*BackupStoragePolicies, error)
GetServerBackupStoragePolicies retrieves a list of a server's configured Cloud Backup storage policies.
func (*Client) GetStaticRoute ¶
func (client *Client) GetStaticRoute(id string) (staticRoute *StaticRoute, err error)
Get static route by ID
func (*Client) GetStaticRouteByAddress ¶
func (client *Client) GetStaticRouteByAddress(paging *Paging, networkDomainId string, destinationNetworkAddress string, destinationPrefixSize int) (systemStaticRoute *StaticRoute, err error)
Get static route by address
func (*Client) GetStaticRouteByName ¶
func (client *Client) GetStaticRouteByName(name string, domainId string) (staticRoute *StaticRoute, err error)
List static route of a network domain by Name
func (*Client) GetTagKey ¶
GetTagKey retrieves the tag key with the specified Id. Returns nil if no tag key is found with the specified Id.
func (*Client) GetVIPNode ¶
GetVIPNode retrieves the VIP node with the specified Id. Returns nil if no VIP node is found with the specified Id.
func (*Client) GetVIPPool ¶
GetVIPPool retrieves the VIP pool with the specified Id. Returns nil if no VIP pool is found with the specified Id.
func (*Client) GetVIPPoolMember ¶
func (client *Client) GetVIPPoolMember(id string) (member *VIPPoolMember, err error)
GetVIPPoolMember retrieves the VIP pool member with the specified Id. Returns nil if no VIP pool member is found with the specified Id.
func (*Client) GetVLAN ¶
GetVLAN retrieves the VLAN with the specified Id. id is the Id of the VLAN to retrieve. Returns nil if no VLAN is found with the specified Id.
func (*Client) GetVLANByName ¶
GetVLANByName retrieves the VLAN (if any) with the specified name in the specified network domain.
func (*Client) GetVirtualListener ¶
func (client *Client) GetVirtualListener(id string) (listener *VirtualListener, err error)
GetVirtualListener retrieves the virtual listener with the specified Id. Returns nil if no virtual listener is found with the specified Id.
func (*Client) ImportCustomerImage ¶
func (client *Client) ImportCustomerImage(imageName string, imageDescription string, preventGuestOSCustomization bool, ovfPackagePrefix string, datacenterID string) (importID string, err error)
ImportCustomerImage imports the specified customer image from an OVF package.
The OVF package can be uploaded via FTPS (call GetDatacenter to determine the FTPS end-point for the target datacenter).
The image's status will be ResourceStatusPendingAdd while the import is in progress, then ResourceStatusNormal once the export is complete.
func (*Client) ImportSSLCertificateChain ¶
func (client *Client) ImportSSLCertificateChain(networkDomainID string, name string, description string, certificateChain string) (certificateChainID string, err error)
ImportSSLCertificateChain imports an SSL certificate chain into a network domain.
func (*Client) ImportSSLDomainCertificate ¶
func (client *Client) ImportSSLDomainCertificate(networkDomainID string, name string, description string, certificate string, key string) (certificateID string, err error)
ImportSSLDomainCertificate imports an SSL domain certificate into a network domain.
func (*Client) IsExtendedLoggingEnabled ¶
IsExtendedLoggingEnabled determines if logging of HTTP requests and responses is enabled.
func (*Client) ListCustomerImagesInDatacenter ¶
func (client *Client) ListCustomerImagesInDatacenter(dataCenterID string, paging *Paging) (images *CustomerImages, err error)
ListCustomerImagesInDatacenter lists all customer images in a given data centre.
func (*Client) ListDatacenters ¶
func (client *Client) ListDatacenters(paging *Paging) (datacenters *Datacenters, err error)
ListDatacenters retrieves a list of all datacenters. TODO: Support filtering and sorting.
func (*Client) ListDefaultHealthMonitors ¶
func (client *Client) ListDefaultHealthMonitors(networkDomainID string, paging *Paging) (healthMonitors *HealthMonitors, err error)
ListDefaultHealthMonitors retrieves a list of all default load-balancing health monitors in the specified network domain.
func (*Client) ListDefaultIRules ¶
func (client *Client) ListDefaultIRules(networkDomainID string, paging *Paging) (irules *IRules, err error)
ListDefaultIRules retrieves a list of all default load-balancing iRules in the specified network domain.
func (*Client) ListDefaultPersistenceProfiles ¶
func (client *Client) ListDefaultPersistenceProfiles(networkDomainID string, paging *Paging) (persistenceProfiles *PersistenceProfiles, err error)
ListDefaultPersistenceProfiles retrieves a list of all default load-balancing persistence profiles in the specified network domain.
func (*Client) ListFirewallRules ¶
func (client *Client) ListFirewallRules(networkDomainID string, paging *Paging) (rules *FirewallRules, err error)
ListFirewallRules lists all firewall rules that apply to the specified network domain.
func (*Client) ListIPAddressLists ¶
func (client *Client) ListIPAddressLists(networkDomainID string) (addressLists *IPAddressLists, err error)
ListIPAddressLists retrieves all IP address lists associated with the specified network domain.
func (*Client) ListNATRules ¶
func (client *Client) ListNATRules(networkDomainID string, paging *Paging) (rules *NATRules, err error)
ListNATRules retrieves all NAT rules defined for the specified network domain.
func (*Client) ListNetworkDomains ¶
func (client *Client) ListNetworkDomains(paging *Paging) (domains *NetworkDomains, err error)
ListNetworkDomains retrieves a list of all network domains. TODO: Support filtering and sorting.
func (*Client) ListOSImagesInDatacenter ¶
func (client *Client) ListOSImagesInDatacenter(dataCenterID string, paging *Paging) (images *OSImages, err error)
ListOSImagesInDatacenter lists all OS images in a given data centre.
func (*Client) ListPortLists ¶
ListPortLists retrieves all port lists associated with the specified network domain.
func (*Client) ListPublicIPBlocks ¶
func (client *Client) ListPublicIPBlocks(networkDomainID string, paging *Paging) (blocks *PublicIPBlocks, err error)
ListPublicIPBlocks retrieves all blocks of public IPv4 addresses that have been allocated to the specified network domain.
func (*Client) ListReservedIPv6AddressesInVLAN ¶
func (client *Client) ListReservedIPv6AddressesInVLAN(vlanID string) (reservedIPAddresses *ReservedIPv6Addresses, err error)
ListReservedIPv6AddressesInVLAN retrieves all IPv6 addresses reserved in the specified VLAN.
func (*Client) ListReservedPrivateIPv4AddressesInVLAN ¶
func (client *Client) ListReservedPrivateIPv4AddressesInVLAN(vlanID string) (reservedIPAddresses *ReservedIPv4Addresses, err error)
ListReservedPrivateIPv4AddressesInVLAN retrieves all private IPv4 addresses reserved in the specified VLAN.
func (*Client) ListReservedPublicIPAddresses ¶
func (client *Client) ListReservedPublicIPAddresses(networkDomainID string, paging *Paging) (reservedPublicIPs *ReservedPublicIPs, err error)
ListReservedPublicIPAddresses retrieves all public IPv4 addresses in the specified network domain that have been reserved.
func (*Client) ListSSLCertificateChainsInNetworkDomain ¶
func (client *Client) ListSSLCertificateChainsInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLCertificateChains, err error)
ListSSLCertificateChainsInNetworkDomain retrieves a list of all SSL certificate chains in the specified network domain.
func (*Client) ListSSLDomainCertificatesInNetworkDomain ¶
func (client *Client) ListSSLDomainCertificatesInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLDomainCertificates, err error)
ListSSLDomainCertificatesInNetworkDomain retrieves a list of all SSL domain certificates in the specified network domain.
func (*Client) ListSSLOffloadProfilesInNetworkDomain ¶
func (client *Client) ListSSLOffloadProfilesInNetworkDomain(networkDomainID string, paging *Paging) (pools *SSLOffloadProfiles, err error)
ListSSLOffloadProfilesInNetworkDomain retrieves a list of all SSL-offload profiles in the specified network domain.
func (*Client) ListServerAntiAffinityRules ¶
func (client *Client) ListServerAntiAffinityRules(networkDomainID string, paging *Paging) (rules *ServerAntiAffinityRules, err error)
ListServerAntiAffinityRules lists the server anti-affinity rules in a network domain.
func (*Client) ListServersInNetworkDomain ¶
func (client *Client) ListServersInNetworkDomain(networkDomainID string, paging *Paging) (servers Servers, err error)
ListServersInNetworkDomain retrieves a page of servers in the specified network domain.
func (*Client) ListStaticRoute ¶
func (client *Client) ListStaticRoute(paging *Paging) (staticRoutes *StaticRoutes, err error)
List static route of a network domain
func (*Client) ListStaticRouteSystem ¶
func (client *Client) ListStaticRouteSystem(paging *Paging, networkDomainId string) (staticRoutes *StaticRoutes, err error)
List static route of a network domain
func (*Client) ListTagKeys ¶
ListTagKeys lists all tag keys that apply to the specified network domain.
func (*Client) ListVIPNodesInNetworkDomain ¶
func (client *Client) ListVIPNodesInNetworkDomain(networkDomainID string, paging *Paging) (nodes *VIPNodes, err error)
ListVIPNodesInNetworkDomain retrieves a list of all VIP nodes in the specified network domain.
func (*Client) ListVIPPoolMembers ¶
func (client *Client) ListVIPPoolMembers(poolID string, paging *Paging) (members *VIPPoolMembers, err error)
ListVIPPoolMembers retrieves a list of all members of the specified VIP pool.
func (*Client) ListVIPPoolMembershipsInNetworkDomain ¶
func (client *Client) ListVIPPoolMembershipsInNetworkDomain(networkDomainID string, paging *Paging) (members *VIPPoolMembers, err error)
ListVIPPoolMembershipsInNetworkDomain retrieves a list of all VIP pool memberships of the specified network domain.
func (*Client) ListVIPPoolsInNetworkDomain ¶
func (client *Client) ListVIPPoolsInNetworkDomain(networkDomainID string, paging *Paging) (pools *VIPPools, err error)
ListVIPPoolsInNetworkDomain retrieves a list of all VIP pools in the specified network domain.
func (*Client) ListVLANs ¶
ListVLANs retrieves a list of all VLANs in the specified network domain. TODO: Support filtering and sorting.
func (*Client) ListVirtualListenersInNetworkDomain ¶
func (client *Client) ListVirtualListenersInNetworkDomain(networkDomainID string, paging *Paging) (listeners *VirtualListeners, err error)
ListVirtualListenersInNetworkDomain retrieves a list of all virtual listeners in the specified network domain.
func (*Client) ModifyServerBackupClient ¶
func (client *Client) ModifyServerBackupClient(serverID string, clientID string, schedulePolicyName string, storagePolicyName string, alerting *BackupClientAlerting) (clientDownloadURL string, err error)
ModifyServerBackupClient modifies one of a server's existing backup clients.
func (*Client) NotifyServerIPAddressChange ¶
func (client *Client) NotifyServerIPAddressChange(networkAdapterID string, newIPv4Address *string, newIPv6Address *string) error
NotifyServerIPAddressChange notifies the system that the IP address for a server's network adapter has changed. serverNetworkAdapterID is the Id of the server's network adapter. Must specify at least one of newIPv4Address / newIPv6Address.
func (*Client) PowerOffServer ¶
PowerOffServer requests that the specified server be powered off (hard shut-down).
func (*Client) ReconfigureServer ¶
func (client *Client) ReconfigureServer(serverID string, memoryGB *int, cpuCount *int, cpuCoresPerSocket *int, cpuSpeed *string) error
ReconfigureServer updates the configuration for a server. serverID is the Id of the server.
func (*Client) RemoveAssetTags ¶
func (client *Client) RemoveAssetTags(assetID string, assetType string, tagNames ...string) (response *APIResponseV2, err error)
RemoveAssetTags removes the specified tags from an asset.
func (*Client) RemoveDisk ¶
RemoveDisk removes an existing disk from a server or SCSI controller.
func (*Client) RemoveDiskFromServer ¶
RemoveDiskFromServer removes an existing disk from a server.
func (*Client) RemoveNicFromServer ¶
RemoveNicFromServer removes the Nic from the server
func (*Client) RemovePublicIPBlock ¶
RemovePublicIPBlock removes the specified block of public IPv4 addresses from its network domain. This operation is synchronous.
func (*Client) RemoveSCSIControllerFromServer ¶
RemoveSCSIControllerFromServer removes an existing SCSI controller from a server.
func (*Client) RemoveServerBackupClient ¶
RemoveServerBackupClient removes a backup client from a server.
func (*Client) RemoveVIPPoolMember ¶
RemoveVIPPoolMember removes a VIP pool member.
func (*Client) ReserveIPv6Address ¶
ReserveIPv6Address creates a reservation for an IPv6 address on a VLAN.
func (*Client) ReservePrivateIPv4Address ¶
func (client *Client) ReservePrivateIPv4Address(vlanID string, ipAddress string, description string) error
ReservePrivateIPv4Address creates a reservation for a private IPv4 address on a VLAN.
func (*Client) Reset ¶
func (client *Client) Reset()
Reset clears all cached data from the Client and resets cancellation (if required).
func (*Client) ResizeServerDisk ¶
func (client *Client) ResizeServerDisk(serverID string, diskID string, newSizeGB int) (response *APIResponseV1, err error)
ResizeServerDisk requests resizing of a server disk.
func (*Client) RestoreStaticRoute ¶
Restores the Static Routes of a Network Domain (networkDomainId) belonging to the organization identified by {org-id} to the system default (also referred to as baseline) configuration applied when the Network Domain was first deployed
func (*Client) ShutdownServer ¶
ShutdownServer requests that the specified server be shut down (gracefully, if possible).
func (*Client) StartServer ¶
StartServer requests that the specified server be started.
func (*Client) UnreserveIPv6Address ¶
func (client *Client) UnreserveIPv6Address(vlanID string, ipAddress string, description string) error
UnreserveIPv6Address removes the reservation (if any) for an IPv6 address on a VLAN.
func (*Client) UnreservePrivateIPv4Address ¶
func (client *Client) UnreservePrivateIPv4Address(vlanID string, ipAddress string, description string) error
UnreservePrivateIPv4Address removes the reservation (if any) for a private IPv4 address on a VLAN.
func (*Client) WaitForAdd ¶
func (client *Client) WaitForAdd(resourceType ResourceType, id string, actionDescription string, timeout time.Duration) (resource Resource, err error)
WaitForAdd waits for a resource's pending add operation to complete.
func (*Client) WaitForChange ¶
func (client *Client) WaitForChange(resourceType ResourceType, id string, actionDescription string, timeout time.Duration) (resource Resource, err error)
WaitForChange waits for a resource's pending change operation to complete.
func (*Client) WaitForDelete ¶
func (client *Client) WaitForDelete(resourceType ResourceType, id string, timeout time.Duration) error
WaitForDelete waits for a resource's pending deletion to complete.
func (*Client) WaitForDeploy ¶
func (client *Client) WaitForDeploy(resourceType ResourceType, id string, timeout time.Duration) (resource Resource, err error)
WaitForDeploy waits for a resource's pending deployment operation to complete.
func (*Client) WaitForEdit ¶
func (client *Client) WaitForEdit(resourceType ResourceType, id string, timeout time.Duration) (resource Resource, err error)
WaitForEdit waits for a resource's pending edit operation to complete.
func (*Client) WaitForNestedDeleteChange ¶
func (client *Client) WaitForNestedDeleteChange(resourceType ResourceType, id string, actionDescription string, timeout time.Duration) (resource Resource, err error)
WaitForNestedDeleteChange waits for a resource's pending change operation (actually the delete of a nested resource) to complete.
type CreateStaticRoute ¶
type CreateStaticRoute struct { // UUID of a Network Domain belonging to {org-id} within which the Static Route is to be created. NetworkDomainId string `json:"networkDomainId"` // Must be between 1 and 75 characters in length. //Cannot start with a number, a period ('.'), 'CCSYSTEM.' or 'CCDEFAULT.'. Name string `json:"name"` // Maximum length: 255 characters. Description string `json:"description"` // One of IPV4 or IPV6 IpVersion string `json:"ipVersion"` // Either a valid IPv4 address in dot-decimal notation or an IPv6 address in compressed or extended format. // In conjunction with the destinationPrefixSize this must represent a CIDR boundary. DestinationNetworkAddress string `json:"destinationNetworkAddress"` // Integer prefix defining the size of the network. // In conjunction with the destinationPrefixSize this must represent a CIDR boundary. DestinationPrefixSize int `json:"destinationPrefixSize"` // Gateway address in the form of an INET gateway, CPNC gateway or an address on an Attached VLAN in the same Network Domain. NextHopAddress string `json:"nextHopAddress"` }
Request body for creating a Static Route
type CustomerImage ¶
type CustomerImage struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` DataCenterID string `json:"datacenterId"` Guest ImageGuestInformation `json:"guest"` CPU VirtualMachineCPU `json:"cpu"` MemoryGB int `json:"memoryGb"` SCSIControllers VirtualMachineSCSIControllers `json:"scsiControllers"` CreateTime string `json:"createTime"` State string `json:"state"` }
CustomerImage represents a custom virtual machine image.
func (*CustomerImage) ApplyTo ¶
func (image *CustomerImage) ApplyTo(config *ServerDeploymentConfiguration)
ApplyTo applies the CustomerImage to the specified ServerDeploymentConfiguration.
func (*CustomerImage) ApplyToUncustomized ¶
func (image *CustomerImage) ApplyToUncustomized(config *UncustomizedServerDeploymentConfiguration)
ApplyToUncustomized applies the CustomerImage to the specified UncustomizedServerDeploymentConfiguration.
func (*CustomerImage) GetDatacenterID ¶
func (image *CustomerImage) GetDatacenterID() string
GetDatacenterID retrieves Id of the datacenter where the image is located.
func (*CustomerImage) GetID ¶
func (image *CustomerImage) GetID() string
GetID retrieves the image ID.
func (*CustomerImage) GetName ¶
func (image *CustomerImage) GetName() string
GetName retrieves the image name.
func (*CustomerImage) GetOS ¶
func (image *CustomerImage) GetOS() OperatingSystem
GetOS retrieves information about the image's operating system.
func (*CustomerImage) GetResourceType ¶
func (image *CustomerImage) GetResourceType() ResourceType
GetResourceType retrieves the resource type.
func (*CustomerImage) GetState ¶
func (image *CustomerImage) GetState() string
GetState retrieves the resource's current state (e.g. ResourceStatusNormal, etc).
func (*CustomerImage) GetType ¶
func (image *CustomerImage) GetType() ImageType
GetType determines the image type.
func (*CustomerImage) IsDeleted ¶
func (image *CustomerImage) IsDeleted() bool
IsDeleted determines whether the resource been deleted (i.e. the underlying struct is nil)?
func (*CustomerImage) RequiresCustomization ¶
func (image *CustomerImage) RequiresCustomization() bool
RequiresCustomization determines whether the image requires guest OS customisation during deployment.
func (*CustomerImage) ToEntityReference ¶
func (image *CustomerImage) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type CustomerImages ¶
type CustomerImages struct { // The current page of network domains. Images []CustomerImage `json:"customerImage"` // The current page number. PageNumber int `json:"pageNumber"` // The number of customer images in the current page of results. PageCount int `json:"pageCount"` // The total number of customer images that match the requested filter criteria (if any). TotalCount int `json:"totalCount"` // The maximum number of customer images per page. PageSize int `json:"pageSize"` }
CustomerImages represents a page of CustomerImage results.
type Datacenter ¶
type Datacenter struct { // The datacenter Id. ID string `json:"id"` // The datacenter type (for display purposes only). Type string `json:"type"` // The datacenter display name. DisplayName string `json:"displayName"` // The name of the city the datacenter is located in. City string `json:"city"` // The name of the state the datacenter is located in. State string `json:"state"` // The name of the country the datacenter is located in. Country string `json:"country"` // The URL of the datacenter's administrative SSL VPN. VPNURL string `json:"vpnUrl"` // The name of the FTPS host used to upload / download OVF packages to / from the datacenter. FTPSHost string `json:"ftpsHost"` // The datacenter's network configuration. Networking DatacenterNetworking `json:"networking"` }
Datacenter represents an MCP datacenter.
type DatacenterNetworking ¶
type DatacenterNetworking struct { // The networking infrastructure type of the data center for programmatic use. // // "1" means MCP 1.0 // "2" means MCP 2.0 Type string `json:"type"` // Indicates whether the networking infrastructure is under maintenance. MaintenanceStatus string `json:"maintenanceStatus"` }
DatacenterNetworking represents the networking configuration for an MCP datacenter.
type Datacenters ¶
type Datacenters struct { // The current page of datacenters. Items []Datacenter `json:"datacenter"` PagedResult }
Datacenters represents the response to a "List Datacenters" API call.
type DeleteVLAN ¶
type DeleteVLAN struct { // The VLAN Id. ID string `json:"id"` }
DeleteVLAN represents a request to delete a compute VLAN.
type DeployAttachedVLAN ¶
type DeployAttachedVLAN struct { // The Id of the network domain in which the VLAN will be deployed. VLANID string `json:"networkDomainId"` // The VLAN name. Name string `json:"name"` // The VLAN description. Description string `json:"description"` // The private IPv4 base address for the VLAN. IPv4BaseAddress string `json:"privateIpv4NetworkAddress"` // The private IPv4 prefix size (i.e. netmask) for the VLAN. IPv4PrefixSize int `json:"privateIpv4PrefixSize"` // Attached Vlan AttachedVlan AttachedVlanGateway `json:"attachedVlan"` }
DeployVLAN represents the request body when deploying a cloud compute VLAN.
type DeployDetachedVLAN ¶
type DeployDetachedVLAN struct { // The Id of the network domain in which the VLAN will be deployed. VLANID string `json:"networkDomainId"` // The VLAN name. Name string `json:"name"` // The VLAN description. Description string `json:"description"` // The private IPv4 base address for the VLAN. IPv4BaseAddress string `json:"privateIpv4NetworkAddress"` // The private IPv4 prefix size (i.e. netmask) for the VLAN. IPv4PrefixSize int `json:"privateIpv4PrefixSize"` // Attached Vlan DetachedVlan DetachedVlanGateway `json:"detachedVlan"` }
DeployVLAN represents the request body when deploying a cloud compute VLAN.
type DetachedVlanGateway ¶
type DetachedVlanGateway struct { // The system will use this IP address as the IPv4 gateway when the Deploy Server API is used referencing a NIC to the VLAN. Ipv4GatewayAddress string `json:"ipv4GatewayAddress"` }
type EditIPAddressList ¶
type EditIPAddressList struct { ID string `json:"id"` Description string `json:"description"` Addresses []IPAddressListEntry `json:"ipAddress"` ChildListIDs []string `json:"childIpAddressListId"` }
EditIPAddressList represents the request body for editing an IP address list.
type EditPortList ¶
type EditPortList struct { ID string `json:"id"` Description string `json:"description"` Ports []PortListEntry `json:"port"` ChildListIDs []string `json:"childPortListId"` }
EditPortList represents the request body for editing a port list.
type EditVIPNodeConfiguration ¶
type EditVIPNodeConfiguration struct { // The VIP node Id. ID string `json:"id"` // The VIP node description. Description *string `json:"description,omitempty"` // The node status (VIPNodeStatusEnabled, VIPNodeStatusDisabled, or VIPNodeStatusForcedOffline). Status *string `json:"status,omitempty"` // The Id of the node's associated health monitor (if any). HealthMonitorID *string `json:"healthMonitorId,omitempty"` // The node's connection limit (must be greater than 0). ConnectionLimit *int `json:"connectionLimit,omitempty"` // The node's connection rate limit (must be greater than 0). ConnectionRateLimit *int `json:"connectionRateLimit,omitempty"` }
EditVIPNodeConfiguration represents the request body when editing a VIP node.
type EditVIPPoolConfiguration ¶
type EditVIPPoolConfiguration struct { // The VIP pool Id. ID string `json:"id"` // The VIP pool description. Description *string `json:"description,omitempty"` // The load-balancing method used for pools in the pool. LoadBalanceMethod *string `json:"loadBalanceMethod"` // The Id of the pool's associated health monitors (if any). // Up to 2 health monitors can be specified per pool. HealthMonitorIDs *[]string `json:"healthMonitorId,omitempty"` // The action performed when a pool in the pool is down. ServiceDownAction *string `json:"serviceDownAction"` // The time, in seconds, over which the the pool will ramp new pools up to their full request rate. SlowRampTime *int `json:"slowRampTime"` }
EditVIPPoolConfiguration represents the request body when editing a VIP pool.
type EditVLAN ¶
type EditVLAN struct { // The ID of the VLAN to edit. ID string `json:"id"` // The VLAN name (optional). Name *string `json:"name,omitempty"` // The VLAN description (optional). Description *string `json:"description,omitempty"` }
EditVLAN represents the request body when editing a cloud compute VLAN.
type EditVirtualListenerConfiguration ¶
type EditVirtualListenerConfiguration struct { ID string `json:"id"` Description *string `json:"description,omitempty"` Enabled *bool `json:"enabled,omitempty"` ConnectionLimit *int `json:"connectionLimit,omitempty"` ConnectionRateLimit *int `json:"connectionRateLimit,omitempty"` SourcePortPreservation *string `json:"sourcePortPreservation,omitempty"` PoolID *string `json:"poolId,omitempty"` PersistenceProfileID *string `json:"persistenceProfileId,omitempty"` SSLOffloadProfileID *string `json:"sslOffloadProfileId,omitempty"` IRuleIDs *[]string `json:"iruleId,omitempty"` OptimizationProfile *string `json:"optimizationProfile,omitempty"` }
EditVirtualListenerConfiguration represents the configuration for editing a virtual listener.
type Entity ¶
type Entity interface { // GetID retrieves the entity's ID. GetID() string }
Entity represents a Cloud Control entity.
type EntityReference ¶
type EntityReference struct { // The entity Id. ID string `json:"id"` // The entity name. Name string `json:"name,omitempty"` }
EntityReference is used to group an entity Id and name together for serialisation / deserialisation purposes.
type FieldMessage ¶
type FieldMessage struct { // The field name. FieldName string `json:"name"` // The field message. Message string `json:"value"` }
FieldMessage represents a field name together with an associated message.
type FirewallRule ¶
type FirewallRule struct { ID string `json:"id"` Name string `json:"name"` Action string `json:"action"` IPVersion string `json:"ipVersion"` Protocol string `json:"protocol"` Source FirewallRuleScope `json:"source"` Destination FirewallRuleScope `json:"destination"` Enabled bool `json:"enabled"` State string `json:"state"` NetworkDomainID string `json:"networkDomainId"` DataCenterID string `json:"datacenterId"` RuleType string `json:"ruleType"` }
FirewallRule represents a firewall rule.
func (*FirewallRule) GetID ¶
func (rule *FirewallRule) GetID() string
GetID returns the firewall rule's Id.
func (*FirewallRule) GetName ¶
func (rule *FirewallRule) GetName() string
GetName returns the firewall rule's name.
func (*FirewallRule) GetResourceType ¶
func (rule *FirewallRule) GetResourceType() ResourceType
GetResourceType returns the firewall rule's resource type.
func (*FirewallRule) GetState ¶
func (rule *FirewallRule) GetState() string
GetState returns the firewall rule's current state.
func (*FirewallRule) IsDeleted ¶
func (rule *FirewallRule) IsDeleted() bool
IsDeleted determines whether the firewall rule has been deleted (is nil).
func (*FirewallRule) ToEntityReference ¶
func (rule *FirewallRule) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type FirewallRuleConfiguration ¶
type FirewallRuleConfiguration struct { Name string `json:"name"` Action string `json:"action"` Enabled bool `json:"enabled"` Placement FirewallRulePlacement `json:"placement"` IPVersion string `json:"ipVersion"` Protocol string `json:"protocol"` Source FirewallRuleScope `json:"source"` Destination FirewallRuleScope `json:"destination"` NetworkDomainID string `json:"networkDomainId"` }
FirewallRuleConfiguration represents the configuration for a new firewall rule.
func (*FirewallRuleConfiguration) Accept ¶
func (configuration *FirewallRuleConfiguration) Accept() *FirewallRuleConfiguration
Accept sets the firewall rule action to FirewallRuleActionAccept.
func (*FirewallRuleConfiguration) Disable ¶
func (configuration *FirewallRuleConfiguration) Disable() *FirewallRuleConfiguration
Disable disables the firewall rule.
func (*FirewallRuleConfiguration) Drop ¶
func (configuration *FirewallRuleConfiguration) Drop() *FirewallRuleConfiguration
Drop sets the firewall rule action to FirewallRuleActionDrop.
func (*FirewallRuleConfiguration) Enable ¶
func (configuration *FirewallRuleConfiguration) Enable() *FirewallRuleConfiguration
Enable enables the firewall rule.
func (*FirewallRuleConfiguration) ICMP ¶
func (configuration *FirewallRuleConfiguration) ICMP() *FirewallRuleConfiguration
ICMP sets the firewall rule's target protocol to ICMP.
func (*FirewallRuleConfiguration) IP ¶
func (configuration *FirewallRuleConfiguration) IP() *FirewallRuleConfiguration
IP sets the firewall rule's target protocol to IP.
func (*FirewallRuleConfiguration) IPv4 ¶
func (configuration *FirewallRuleConfiguration) IPv4() *FirewallRuleConfiguration
IPv4 sets the firewall rule's target IP version to IPv4.
func (*FirewallRuleConfiguration) IPv6 ¶
func (configuration *FirewallRuleConfiguration) IPv6() *FirewallRuleConfiguration
IPv6 sets the firewall rule's target IP version to IPv6.
func (*FirewallRuleConfiguration) MatchAnyDestinationAddress ¶
func (configuration *FirewallRuleConfiguration) MatchAnyDestinationAddress() *FirewallRuleConfiguration
MatchAnyDestinationAddress modifies the configuration so that the firewall rule will match any destination IP address.
func (*FirewallRuleConfiguration) MatchAnyDestinationPort ¶
func (configuration *FirewallRuleConfiguration) MatchAnyDestinationPort() *FirewallRuleConfiguration
MatchAnyDestinationPort modifies the configuration so that the firewall rule will match any destination port.
func (*FirewallRuleConfiguration) MatchAnySourceAddress ¶
func (configuration *FirewallRuleConfiguration) MatchAnySourceAddress() *FirewallRuleConfiguration
MatchAnySourceAddress modifies the configuration so that the firewall rule will match source IP address.
func (*FirewallRuleConfiguration) MatchAnySourcePort ¶
func (configuration *FirewallRuleConfiguration) MatchAnySourcePort() *FirewallRuleConfiguration
MatchAnySourcePort modifies the configuration so that the firewall rule will match any source port.
func (*FirewallRuleConfiguration) MatchDestinationAddress ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationAddress(address string) *FirewallRuleConfiguration
MatchDestinationAddress modifies the configuration so that the firewall rule will match a specific destination IP address.
func (*FirewallRuleConfiguration) MatchDestinationAddressList ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationAddressList(addressListID string) *FirewallRuleConfiguration
MatchDestinationAddressList modifies the configuration so that the firewall rule will match a specific destination IP address list (and, optionally, port).
func (*FirewallRuleConfiguration) MatchDestinationNetwork ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationNetwork(baseAddress string, prefixSize int) *FirewallRuleConfiguration
MatchDestinationNetwork modifies the configuration so that the firewall rule will match any destination IP address on the specified network.
func (*FirewallRuleConfiguration) MatchDestinationPort ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationPort(port int) *FirewallRuleConfiguration
MatchDestinationPort modifies the configuration so that the firewall rule will match a specific destination port.
func (*FirewallRuleConfiguration) MatchDestinationPortList ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationPortList(portListID string) *FirewallRuleConfiguration
MatchDestinationPortList modifies the configuration so that the firewall rule will match any destination port appearing on the specified port list (or its children).
func (*FirewallRuleConfiguration) MatchDestinationPortRange ¶
func (configuration *FirewallRuleConfiguration) MatchDestinationPortRange(beginPort int, endPort int) *FirewallRuleConfiguration
MatchDestinationPortRange modifies the configuration so that the firewall rule will match any destination port in the specified range.
func (*FirewallRuleConfiguration) MatchSourceAddress ¶
func (configuration *FirewallRuleConfiguration) MatchSourceAddress(address string) *FirewallRuleConfiguration
MatchSourceAddress modifies the configuration so that the firewall rule will match a specific source IP address.
func (*FirewallRuleConfiguration) MatchSourceAddressList ¶
func (configuration *FirewallRuleConfiguration) MatchSourceAddressList(addressListID string) *FirewallRuleConfiguration
MatchSourceAddressList modifies the configuration so that the firewall rule will match a specific source IP address list.
func (*FirewallRuleConfiguration) MatchSourceNetwork ¶
func (configuration *FirewallRuleConfiguration) MatchSourceNetwork(baseAddress string, prefixSize int) *FirewallRuleConfiguration
MatchSourceNetwork modifies the configuration so that the firewall rule will match any source IP address on the specified network.
func (*FirewallRuleConfiguration) MatchSourcePort ¶
func (configuration *FirewallRuleConfiguration) MatchSourcePort(port int) *FirewallRuleConfiguration
MatchSourcePort modifies the configuration so that the firewall rule will match a specific source port.
func (*FirewallRuleConfiguration) MatchSourcePortList ¶
func (configuration *FirewallRuleConfiguration) MatchSourcePortList(portListID string) *FirewallRuleConfiguration
MatchSourcePortList modifies the configuration so that the firewall rule will match any source port appearing on the specified port list (or its children).
func (*FirewallRuleConfiguration) MatchSourcePortRange ¶
func (configuration *FirewallRuleConfiguration) MatchSourcePortRange(beginPort int, endPort int) *FirewallRuleConfiguration
MatchSourcePortRange modifies the configuration so that the firewall rule will match any source port in the specified range.
func (*FirewallRuleConfiguration) PlaceAfter ¶
func (configuration *FirewallRuleConfiguration) PlaceAfter(afterRuleName string) *FirewallRuleConfiguration
PlaceAfter modifies the configuration so that the firewall rule will be placed after the specified rule.
func (*FirewallRuleConfiguration) PlaceBefore ¶
func (configuration *FirewallRuleConfiguration) PlaceBefore(beforeRuleName string) *FirewallRuleConfiguration
PlaceBefore modifies the configuration so that the firewall rule will be placed before the specified rule.
func (*FirewallRuleConfiguration) PlaceFirst ¶
func (configuration *FirewallRuleConfiguration) PlaceFirst() *FirewallRuleConfiguration
PlaceFirst modifies the configuration so that the firewall rule will be placed in the first available position.
func (*FirewallRuleConfiguration) TCP ¶
func (configuration *FirewallRuleConfiguration) TCP() *FirewallRuleConfiguration
TCP sets the firewall rule's target protocol to TCP.
func (*FirewallRuleConfiguration) ToFirewallRule ¶
func (configuration *FirewallRuleConfiguration) ToFirewallRule() FirewallRule
ToFirewallRule converts the FirewallRuleConfiguration to a FirewallRule (for use in test scenarios).
type FirewallRuleIPAddress ¶
type FirewallRuleIPAddress struct { Address string `json:"address"` PrefixSize *int `json:"prefixSize,omitempty"` }
FirewallRuleIPAddress represents represents an IP address for firewall configuration.
type FirewallRulePlacement ¶
type FirewallRulePlacement struct { Position string `json:"position"` RelativeToRuleName *string `json:"relativeToRule,omitempty"` }
FirewallRulePlacement describes the placement for a firewall rule.
type FirewallRulePort ¶
FirewallRulePort represents a firewall port configuration.
type FirewallRuleScope ¶
type FirewallRuleScope struct { IPAddress *FirewallRuleIPAddress `json:"ip,omitempty"` AddressList *EntityReference `json:"ipAddressList,omitempty"` AddressListID *string `json:"ipAddressListId,omitempty"` Port *FirewallRulePort `json:"port,omitempty"` PortListID *string `json:"portListId,omitempty"` }
FirewallRuleScope represents a scope (IP and / or port) for firewall configuration (source or destination).
func (FirewallRuleScope) Diff ¶
func (scope FirewallRuleScope) Diff(other FirewallRuleScope) (differences []string)
Diff captures the differences (if any) between a FirewallRuleScope and another FirewallRuleScope.
func (*FirewallRuleScope) IsScopeAddressList ¶
func (scope *FirewallRuleScope) IsScopeAddressList() bool
IsScopeAddressList determines whether the firewall rule scope matches an IP address list.
func (*FirewallRuleScope) IsScopeAny ¶
func (scope *FirewallRuleScope) IsScopeAny() bool
IsScopeAny determines whether the firewall rule scope matches anything (i.e. the rule is unscoped).
func (*FirewallRuleScope) IsScopeHost ¶
func (scope *FirewallRuleScope) IsScopeHost() bool
IsScopeHost determines whether the firewall rule scope matches a host.
func (*FirewallRuleScope) IsScopeNetwork ¶
func (scope *FirewallRuleScope) IsScopeNetwork() bool
IsScopeNetwork determines whether the firewall rule scope matches a network.
func (*FirewallRuleScope) IsScopePort ¶
func (scope *FirewallRuleScope) IsScopePort() bool
IsScopePort determines whether the firewall rule scope matches a single port.
func (*FirewallRuleScope) IsScopePortList ¶
func (scope *FirewallRuleScope) IsScopePortList() bool
IsScopePortList determines whether the firewall rule scope matches a port list.
func (*FirewallRuleScope) IsScopePortRange ¶
func (scope *FirewallRuleScope) IsScopePortRange() bool
IsScopePortRange determines whether the firewall rule scope matches a port range.
type FirewallRules ¶
type FirewallRules struct { Rules []FirewallRule `json:"firewallRule"` PagedResult }
FirewallRules represents a page of FirewallRule results.
type HealthMonitor ¶
type HealthMonitor struct { ID string `json:"id"` Name string `json:"name"` IsNodeCompatible bool `json:"nodeCompatible"` IsPoolCompatible bool `json:"poolCompatible"` }
HealthMonitor represents a load-balancer persistence (stickiness) profile.
type HealthMonitors ¶
type HealthMonitors struct { Items []HealthMonitor `json:"defaultHealthMonitor"` PagedResult }
HealthMonitors represents a page of HealthMonitor results.
type IPAddressList ¶
type IPAddressList struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` IPVersion string `json:"ipVersion"` State string `json:"state"` CreateTime string `json:"createTime"` Addresses []IPAddressListEntry `json:"ipAddress"` ChildLists []EntityReference `json:"childIpAddressList"` }
IPAddressList represents an IP address list.
func (*IPAddressList) BuildEditRequest ¶
func (addressList *IPAddressList) BuildEditRequest() EditIPAddressList
BuildEditRequest creates an EditIPAddressList using the existing addresses and child list references in the IP address list.
type IPAddressListEntry ¶
type IPAddressListEntry struct { Begin string `json:"begin"` End *string `json:"end,omitempty"` PrefixSize *int `json:"prefixSize,omitempty"` }
IPAddressListEntry represents an entry in an IP address list.
type IPAddressLists ¶
type IPAddressLists struct { AddressLists []IPAddressList `json:"ipAddressList"` PagedResult }
IPAddressLists represents a page of IPAddressList results.
type IPRange ¶
type IPRange interface { // Convert the IPvX range to a display string. ToDisplayString() string }
IPRange represents an IPvX range.
type IPv4Range ¶
type IPv4Range struct { // The network base address. BaseAddress string `json:"address"` // The network prefix size. PrefixSize int `json:"prefixSize"` }
IPv4Range represents an IPv4 network (base address and prefix size)
func (IPv4Range) ToDisplayString ¶
ToDisplayString converts the IPv4 range to a display string.
type IPv6Range ¶
type IPv6Range struct { // The network base address. BaseAddress string `json:"address"` // The network prefix size. PrefixSize int `json:"prefixSize"` }
IPv6Range represents an IPv6 network (base address and prefix size)
func (IPv6Range) ToDisplayString ¶
ToDisplayString converts the IPv6 range to a display string.
type IRule ¶
type IRule struct { ID string `json:"id"` Name string `json:"name"` VirtualListenerType string `json:"virtualListenerType"` VirtualListenerProtocol string `json:"virtualListenerProtocol"` }
IRule represents a load-balancer iRule.
func (*IRule) ToEntityReference ¶
func (iRule *IRule) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the IRule.
type IRules ¶
type IRules struct { Items []IRule `json:"defaultIRule"` PagedResult }
IRules represents a page of IRule results.
type Image ¶
type Image interface { Resource // GetType determines the image type. GetType() ImageType // GetDatacenterID retrieves Id of the datacenter where the image is located. GetDatacenterID() string // GetOS retrieves information about the image's operating system. GetOS() OperatingSystem // RequiresCustomization determines whether the image requires guest OS customisation during deployment. RequiresCustomization() bool // ApplyTo applies the Image to the specified ServerDeploymentConfiguration. ApplyTo(config *ServerDeploymentConfiguration) // ApplyToUncustomized applies the Image to the specified UncustomizedServerDeploymentConfiguration. ApplyToUncustomized(config *UncustomizedServerDeploymentConfiguration) }
Image represents an image used to create servers.
type ImageGuestInformation ¶
type ImageGuestInformation struct { OperatingSystem OperatingSystem `json:"operatingSystem"` OSCustomization bool `json:"osCustomization"` }
ImageGuestInformation represents guest-related information about a virtual machine image.
type NATRule ¶
type NATRule struct { ID string `json:"id"` NetworkDomainID string `json:"networkDomainId"` InternalIPAddress string `json:"internalIp"` ExternalIPAddress string `json:"externalIp"` CreateTime string `json:"createTime"` State string `json:"state"` DataCenterID string `json:"datacenterId"` }
NATRule represents a Network Address Translation (NAT) rule. NAT rules are used to forward IPv4 traffic from a public IP address to a server's private IP address.
type NATRules ¶
type NATRules struct { Rules []NATRule `json:"natRule"` PagedResult }
NATRules represents a page of NATRule results.
type NamedEntity ¶
type NamedEntity interface { Entity // GetName retrieves the entity's name. GetName() string // ToEntityReference creates an EntityReference representing the entity. ToEntityReference() EntityReference }
NamedEntity represents a named Cloud Control entity.
type NetworkDomain ¶
type NetworkDomain struct { // The network domain Id. ID string `json:"id"` // The network domain name. Name string `json:"name"` // The network domain description. Description string `json:"description"` // The network domain type. Type string `json:"type"` // The network domain's NAT IPv4 address. NatIPv4Address string `json:"snatIpv4Address"` // The network domain's outside transit IPv4 subnet. OutsideTransitVLANIPv4Subnet IPv4Range `json:"outsideTransitVlanIpv4Subnet"` // The network domain's creation timestamp. CreateTime string `json:"createTime"` // The network domain's current state. State string `json:"state"` // The network domain's current progress (if any). Progress string `json:"progress"` // The Id of the data centre in which the network domain is located. DatacenterID string `json:"datacenterId"` }
NetworkDomain represents a compute network domain.
func (*NetworkDomain) GetID ¶
func (domain *NetworkDomain) GetID() string
GetID returns the network domain's Id.
func (*NetworkDomain) GetName ¶
func (domain *NetworkDomain) GetName() string
GetName returns the network domain's name.
func (*NetworkDomain) GetResourceType ¶
func (domain *NetworkDomain) GetResourceType() ResourceType
GetResourceType returns the network domain's resource type.
func (*NetworkDomain) GetState ¶
func (domain *NetworkDomain) GetState() string
GetState returns the network domain's current state.
func (*NetworkDomain) IsDeleted ¶
func (domain *NetworkDomain) IsDeleted() bool
IsDeleted determines whether the network domain has been deleted (is nil).
func (*NetworkDomain) ToEntityReference ¶
func (domain *NetworkDomain) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the NetworkDomain.
type NetworkDomains ¶
type NetworkDomains struct { // The current page of network domains. Domains []NetworkDomain `json:"networkDomain"` PagedResult }
NetworkDomains represents the response to a "List Network Domains" API call.
type NewVIPNodeConfiguration ¶
type NewVIPNodeConfiguration struct { // The VIP node name. Name string `json:"name"` // The VIP node description. Description string `json:"description"` // The node's IPv4 address (either IPv4 or IPv6 address must be specified). IPv4Address string `json:"ipv4Address,omitempty"` // The node's IPv6 address (either IPv4 or IPv6 address must be specified). IPv6Address string `json:"ipv6Address,omitempty"` // The node status (VIPNodeStatusEnabled, VIPNodeStatusDisabled, or VIPNodeStatusForcedOffline). Status string `json:"status"` // The Id of the node's associated health monitor (if any). HealthMonitorID string `json:"healthMonitorId,omitempty"` // The node's connection limit (must be greater than 0). ConnectionLimit int `json:"connectionLimit"` // The node's connection rate limit (must be greater than 0). ConnectionRateLimit int `json:"connectionRateLimit"` // The Id of the network domain where the node is located. NetworkDomainID string `json:"networkDomainId"` }
NewVIPNodeConfiguration represents the configuration for a new VIP node.
type NewVIPPoolConfiguration ¶
type NewVIPPoolConfiguration struct { // The VIP pool name. Name string `json:"name"` // The VIP pool description. Description string `json:"description"` // The load-balancing method used for pools in the pool. LoadBalanceMethod string `json:"loadBalanceMethod"` // The Id of the pool's associated health monitors (if any). // Up to 2 health monitors can be specified per pool. HealthMonitorIDs []string `json:"healthMonitorId,omitempty"` // The action performed when a pool in the pool is down. ServiceDownAction string `json:"serviceDownAction"` // The time, in seconds, over which the the pool will ramp new pools up to their full request rate. SlowRampTime int `json:"slowRampTime"` // The Id of the network domain where the pool is located. NetworkDomainID string `json:"networkDomainId"` // The Id of the data centre where the pool is located. DatacenterID string `json:"datacenterId,omitempty"` }
NewVIPPoolConfiguration represents the configuration for a new VIP pool.
type NewVirtualListenerConfiguration ¶
type NewVirtualListenerConfiguration struct { Name string `json:"name"` Description string `json:"description"` Type string `json:"type"` Protocol string `json:"protocol"` ListenerIPAddress *string `json:"listenerIpAddress,omitempty"` Port int `json:"port,omitempty"` Enabled bool `json:"enabled"` ConnectionLimit int `json:"connectionLimit"` ConnectionRateLimit int `json:"connectionRateLimit"` SourcePortPreservation string `json:"sourcePortPreservation"` PoolID *string `json:"poolId,omitempty"` ClientClonePoolID *string `json:"clientClonePoolId,omitempty"` PersistenceProfileID *string `json:"persistenceProfileId,omitempty"` FallbackPersistenceProfileID *string `json:"fallbackPersistenceProfileId,omitempty"` SSLOffloadProfileID *string `json:"sslOffloadProfileId,omitempty"` IRuleIDs []string `json:"iruleId"` OptimizationProfile *string `json:"optimizationProfile,omitempty"` NetworkDomainID string `json:"networkDomainId"` }
NewVirtualListenerConfiguration represents the configuration for a new virtual listener.
type OSImage ¶
type OSImage struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` DataCenterID string `json:"datacenterId"` Guest ImageGuestInformation `json:"guest"` CPU VirtualMachineCPU `json:"cpu"` MemoryGB int `json:"memoryGb"` SCSIControllers VirtualMachineSCSIControllers `json:"scsiController"` State string `json:"state"` CreateTime string `json:"createTime"` OSImageKey string `json:"osImageKey"` }
OSImage represents a DD-provided virtual machine image.
func (*OSImage) ApplyTo ¶
func (image *OSImage) ApplyTo(config *ServerDeploymentConfiguration)
ApplyTo applies the OSImage to the specified ServerDeploymentConfiguration.
func (*OSImage) ApplyToUncustomized ¶
func (image *OSImage) ApplyToUncustomized(config *UncustomizedServerDeploymentConfiguration)
ApplyToUncustomized applies the OSImage to the specified UncustomizedServerDeploymentConfiguration.
func (*OSImage) GetDatacenterID ¶
GetDatacenterID retrieves Id of the datacenter where the image is located.
func (*OSImage) GetOS ¶
func (image *OSImage) GetOS() OperatingSystem
GetOS retrieves information about the image's operating system.
func (*OSImage) GetResourceType ¶
func (image *OSImage) GetResourceType() ResourceType
GetResourceType retrieves the resource type.
func (*OSImage) GetState ¶
GetState retrieves the resource's current state (e.g. ResourceStatusNormal, etc).
func (*OSImage) IsDeleted ¶
IsDeleted determines whether the resource been deleted (i.e. the underlying struct is nil)?
func (*OSImage) RequiresCustomization ¶
RequiresCustomization determines whether the image requires guest OS customisation during deployment.
func (*OSImage) ToEntityReference ¶
func (image *OSImage) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the OSImage.
type OSImages ¶
type OSImages struct { // The current page of network domains. Images []OSImage `json:"osImage"` // The current page number. PageNumber int `json:"pageNumber"` // The number of OS images in the current page of results. PageCount int `json:"pageCount"` // The total number of OS images that match the requested filter criteria (if any). TotalCount int `json:"totalCount"` // The maximum number of OS images per page. PageSize int `json:"pageSize"` }
OSImages represents a page of OSImage results.
type OperatingSystem ¶
type OperatingSystem struct { // The operating system Id. ID string `json:"id"` // The operating system type. Family string `json:"family"` // The operating system display-name. DisplayName string `json:"displayName"` }
OperatingSystem represents a well-known operating system for virtual machines.
type OperationCancelledError ¶
type OperationCancelledError struct {
OperationDescription string
}
OperationCancelledError is the error returned when an operation cancelled.
func (OperationCancelledError) Error ¶
func (err OperationCancelledError) Error() string
Get a string representation of the error.
type PagedResult ¶
type PagedResult struct { // The current page number. PageNumber int `json:"pageNumber"` // The number of items in the current page of results. PageCount int `json:"pageCount"` // The total number of results that match the requested filter criteria (if any). TotalCount int `json:"totalCount"` // The maximum number of results per page. PageSize int `json:"pageSize"` }
PagedResult represents the common fields for all paged results from the compute API.
func (*PagedResult) IsEmpty ¶
func (page *PagedResult) IsEmpty() bool
IsEmpty determines whether the page contains no results.
func (*PagedResult) IsLastPage ¶
func (page *PagedResult) IsLastPage() bool
IsLastPage determines whether the page represents the last page of results.
func (*PagedResult) NextPage ¶
func (page *PagedResult) NextPage() *Paging
NextPage creates a Paging for the next page of results.
type Paging ¶
Paging contains the paging configuration for a compute API operation.
func DefaultPaging ¶
func DefaultPaging() *Paging
DefaultPaging creates Paging with default settings (page 1, 50 records per page).
func (*Paging) EnsurePaging ¶
EnsurePaging always returns a paging configuration (if the supplied Paging is nil, it returns the default configuration).
type PersistenceProfile ¶
type PersistenceProfile struct { ID string `json:"id"` Name string `json:"name"` IsFallbackCompatible bool `json:"fallbackCompatible"` VirtualListenerType string `json:"virtualListenerType"` VirtualListenerProtocol string `json:"virtualListenerProtocol"` }
PersistenceProfile represents a load-balancer persistence (stickiness) profile.
func (*PersistenceProfile) GetID ¶
func (profile *PersistenceProfile) GetID() string
GetID retrieves the persistence profile's ID.
func (*PersistenceProfile) GetName ¶
func (profile *PersistenceProfile) GetName() string
GetName retrieves the persistence profile's name.
func (*PersistenceProfile) ToEntityReference ¶
func (profile *PersistenceProfile) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the PersistenceProfile.
type PersistenceProfiles ¶
type PersistenceProfiles struct { Items []PersistenceProfile `json:"defaultPersistenceProfile"` PagedResult }
PersistenceProfiles represents a page of PersistenceProfile results.
type PortList ¶
type PortList struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` Ports []PortListEntry `json:"port"` ChildLists []EntityReference `json:"childPortList"` State string `json:"state"` CreateTime string `json:"createTime"` }
PortList represents a port list.
func (*PortList) BuildEditRequest ¶
func (portList *PortList) BuildEditRequest() EditPortList
BuildEditRequest creates an EditPortList using the existing ports and child list references in the port list.
type PortListEntry ¶
PortListEntry represents an entry in a port list.
type PortLists ¶
type PortLists struct { PortLists []PortList `json:"portList"` PagedResult }
PortLists represents a page of PortList results.
type PublicIPBlock ¶
type PublicIPBlock struct { ID string `json:"id"` NetworkDomainID string `json:"networkDomainId"` DataCenterID string `json:"datacenterId"` BaseIP string `json:"baseIp"` Size int `json:"size"` CreateTime string `json:"createTime"` State string `json:"state"` }
PublicIPBlock represents an allocated block of public IPv4 addresses.
func (*PublicIPBlock) GetID ¶
func (block *PublicIPBlock) GetID() string
GetID returns the public IPv4 address block's Id.
func (*PublicIPBlock) GetName ¶
func (block *PublicIPBlock) GetName() string
GetName returns the public IPv4 address block's name.
func (*PublicIPBlock) GetResourceType ¶
func (block *PublicIPBlock) GetResourceType() ResourceType
GetResourceType returns the public IP block's resource type.
func (*PublicIPBlock) GetState ¶
func (block *PublicIPBlock) GetState() string
GetState returns the network block's current state.
func (*PublicIPBlock) IsDeleted ¶
func (block *PublicIPBlock) IsDeleted() bool
IsDeleted determines whether the public IPv4 address block has been deleted (is nil).
func (*PublicIPBlock) ToEntityReference ¶
func (block *PublicIPBlock) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type PublicIPBlocks ¶
type PublicIPBlocks struct { Blocks []PublicIPBlock `json:"publicIpBlock"` PagedResult }
PublicIPBlocks represents a page of PublicIPBlock results.
type ReservedIPAddress ¶
type ReservedIPAddress struct { IPAddress string `json:"ipAddress"` VLANID string `json:"vlanId"` Description string `json:"description"` }
Request body when reserving an IP address.
type ReservedIPv4Addresses ¶
type ReservedIPv4Addresses struct { PagedResult Items []ReservedIPAddress `json:"ipv4"` }
ReservedIPv4Addresses represents a page of ReservedIPAddress results for reserved IPv4 addresses.
type ReservedIPv6Addresses ¶
type ReservedIPv6Addresses struct { PagedResult Items []ReservedIPAddress `json:"reservedIpv6Address"` }
ReservedIPv6Addresses represents a page of ReservedIPAddress results for reserved IPv6 addresses.
type ReservedPublicIP ¶
type ReservedPublicIP struct { IPBlockID string `json:"ipBlockId"` DataCenterID string `json:"datacenterId"` NetworkDomainID string `json:"networkDomainId"` Address string `json:"value"` }
ReservedPublicIP represents a public IPv4 address reserved for NAT or a VIP.
type ReservedPublicIPs ¶
type ReservedPublicIPs struct { IPs []ReservedPublicIP `json:"ip"` PagedResult }
ReservedPublicIPs represents a page of ReservedPublicIP results.
type Resource ¶
type Resource interface { NamedEntity // The resource type. GetResourceType() ResourceType // The resource's current state (e.g. ResourceStatusNormal, etc). GetState() string // Has the resource been deleted (i.e. the underlying struct is nil)? IsDeleted() bool }
Resource represents a compute resource.
type ResourceType ¶
type ResourceType int
ResourceType represents a well-known DD compute resource type.
const ( // ResourceTypeNetworkDomain represents a network domain. ResourceTypeNetworkDomain ResourceType = iota // ResourceTypeVLAN represents a VLAN. ResourceTypeVLAN // ResourceTypeServer represents a virtual machine. ResourceTypeServer // ResourceTypeServerAntiAffinityRule represents a server anti-affinity rule. ResourceTypeServerAntiAffinityRule // ResourceTypeNetworkAdapter represents a network adapter in a virtual machine. // Note that when calling methods such as WaitForChange, the Id must be of the form 'serverId/networkAdapterId'. ResourceTypeNetworkAdapter // ResourceTypePublicIPBlock represents a block of public IP addresses. ResourceTypePublicIPBlock // ResourceTypeFirewallRule represents a firewall rule. ResourceTypeFirewallRule // ResourceTypeVIPNode represents a VIP node. ResourceTypeVIPNode // ResourceTypeVIPPool represents a VIP pool. ResourceTypeVIPPool // ResourceTypeVirtualListener represents a virtual listener. ResourceTypeVirtualListener // ResourceTypeOSImage represents an OS image. ResourceTypeOSImage // ResourceTypeCustomerImage represents a customer image. ResourceTypeCustomerImage // ResourceTypeSSLDomainCertificate represents an SSL certificate for a domain name. ResourceTypeSSLDomainCertificate // ResourceTypeSSLCertificateChain represents an SSL certificate chain ResourceTypeSSLCertificateChain // ResourceTypeSSLOffloadProfile represents an SSL-offload profile ResourceTypeSSLOffloadProfile // ResourceStaticRoutes represents network domain static routes ResourceTypeStaticRoutes )
type Role ¶
type Role struct { // The XML name for the "Role" data contract XMLName xml.Name `xml:"role"` // The role name. Name string `xml:"name"` }
Role represents a role assigned to a compute account.
type SSLCertificateChain ¶
type SSLCertificateChain struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` State string `json:"state"` DatacenterID string `json:"datacenterId"` NetworkDomainID string `json:"networkDomainId"` }
SSLCertificateChain represents an SSL certificate applicable to a domain name.
func (*SSLCertificateChain) GetID ¶
func (certificateChain *SSLCertificateChain) GetID() string
GetID returns the certificate chain's Id.
func (*SSLCertificateChain) GetName ¶
func (certificateChain *SSLCertificateChain) GetName() string
GetName returns the certificate chain's name.
func (*SSLCertificateChain) GetResourceType ¶
func (certificateChain *SSLCertificateChain) GetResourceType() ResourceType
GetResourceType returns the certificate chain's resource type.
func (*SSLCertificateChain) GetState ¶
func (certificateChain *SSLCertificateChain) GetState() string
GetState returns the certificate chain's current state.
func (*SSLCertificateChain) IsDeleted ¶
func (certificateChain *SSLCertificateChain) IsDeleted() bool
IsDeleted determines whether the certificate chain has been deleted (is nil).
func (*SSLCertificateChain) ToEntityReference ¶
func (certificateChain *SSLCertificateChain) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the certificate chain.
type SSLCertificateChains ¶
type SSLCertificateChains struct { Items []SSLCertificateChain `json:"sslCertificateChain"` PagedResult }
SSLCertificateChains represents a page of SSLCertificateChain results.
type SSLDomainCertificate ¶
type SSLDomainCertificate struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` State string `json:"state"` DatacenterID string `json:"datacenterId"` NetworkDomainID string `json:"networkDomainId"` }
SSLDomainCertificate represents an SSL certificate applicable to a domain name.
func (*SSLDomainCertificate) GetID ¶
func (domainCertificate *SSLDomainCertificate) GetID() string
GetID returns the domain certificate's Id.
func (*SSLDomainCertificate) GetName ¶
func (domainCertificate *SSLDomainCertificate) GetName() string
GetName returns the domain certificate's name.
func (*SSLDomainCertificate) GetResourceType ¶
func (domainCertificate *SSLDomainCertificate) GetResourceType() ResourceType
GetResourceType returns the domain certificate's resource type.
func (*SSLDomainCertificate) GetState ¶
func (domainCertificate *SSLDomainCertificate) GetState() string
GetState returns the domain certificate's current state.
func (*SSLDomainCertificate) IsDeleted ¶
func (domainCertificate *SSLDomainCertificate) IsDeleted() bool
IsDeleted determines whether the domain certificate has been deleted (is nil).
func (*SSLDomainCertificate) ToEntityReference ¶
func (domainCertificate *SSLDomainCertificate) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the domain certificate.
type SSLDomainCertificates ¶
type SSLDomainCertificates struct { Items []SSLDomainCertificate `json:"sslDomainCertificate"` PagedResult }
SSLDomainCertificates represents a page of SSLDomainCertificate results.
type SSLOffloadProfile ¶
type SSLOffloadProfile struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` SSLDomainCertificate EntityReference `json:"sslDomainCertificate"` SSLCertificateChain EntityReference `json:"sslCertificateChain"` Ciphers string `json:"ciphers"` State string `json:"state"` DatacenterID string `json:"datacenterId"` NetworkDomainID string `json:"networkDomainId"` }
SSLOffloadProfile represents an SSL-offload profile.
func (*SSLOffloadProfile) GetID ¶
func (offloadProfile *SSLOffloadProfile) GetID() string
GetID returns the offload profile's Id.
func (*SSLOffloadProfile) GetName ¶
func (offloadProfile *SSLOffloadProfile) GetName() string
GetName returns the offload profile's name.
func (*SSLOffloadProfile) GetResourceType ¶
func (offloadProfile *SSLOffloadProfile) GetResourceType() ResourceType
GetResourceType returns the offload profile's resource type.
func (*SSLOffloadProfile) GetState ¶
func (offloadProfile *SSLOffloadProfile) GetState() string
GetState returns the offload profile's current state.
func (*SSLOffloadProfile) IsDeleted ¶
func (offloadProfile *SSLOffloadProfile) IsDeleted() bool
IsDeleted determines whether the offload profile has been deleted (is nil).
func (*SSLOffloadProfile) ToEntityReference ¶
func (offloadProfile *SSLOffloadProfile) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the offload profile.
type SSLOffloadProfiles ¶
type SSLOffloadProfiles struct { Items []SSLOffloadProfile `json:"sslOffloadProfile"` PagedResult }
SSLOffloadProfiles represents a page of SSLOffloadProfile results.
type Server ¶
type Server struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` OperatingSystem OperatingSystem `json:"operatingSystem"` CPU VirtualMachineCPU `json:"cpu"` MemoryGB int `json:"memoryGb"` SCSIControllers VirtualMachineSCSIControllers `json:"scsiController"` Network VirtualMachineNetwork `json:"networkInfo"` Backup *ServerBackup `json:"backup,omitempty"` SourceImageID string `json:"sourceImageId"` State string `json:"state"` Deployed bool `json:"deployed"` Started bool `json:"started"` }
Server represents a virtual machine.
func (*Server) GetResourceType ¶
func (server *Server) GetResourceType() ResourceType
GetResourceType returns the network domain's resource type.
func (*Server) ToEntityReference ¶
func (server *Server) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the Server.
type ServerAntiAffinityRule ¶
type ServerAntiAffinityRule struct { // The anti-affinity rule Id. ID string `json:"id"` // The 2 servers that the rule relates to. // // Only ever contains exactly 2 servers. // // This is only declared as an array because that's what the CloudControl API returns. Servers []ServerSummary `json:"serverSummary"` // The network domain's current state. State string `json:"state"` // The network domain's creation timestamp. CreateTime string `json:"created"` // The Id of the data centre in which the network domain is located. DatacenterID string `json:"datacenterId"` }
ServerAntiAffinityRule represents an anti-affinity rule between 2 servers.
func (*ServerAntiAffinityRule) GetID ¶
func (rule *ServerAntiAffinityRule) GetID() string
GetID returns the server anti-affinity rule's Id.
func (*ServerAntiAffinityRule) GetName ¶
func (rule *ServerAntiAffinityRule) GetName() string
GetName returns the server anti-affinity rule's name.
func (*ServerAntiAffinityRule) GetResourceType ¶
func (rule *ServerAntiAffinityRule) GetResourceType() ResourceType
GetResourceType returns the server anti-affinity rule's resource type.
func (*ServerAntiAffinityRule) GetState ¶
func (rule *ServerAntiAffinityRule) GetState() string
GetState returns the server anti-affinity rule's current state.
func (*ServerAntiAffinityRule) IsDeleted ¶
func (rule *ServerAntiAffinityRule) IsDeleted() bool
IsDeleted determines whether the server anti-affinity rule has been deleted (is nil).
func (*ServerAntiAffinityRule) ToEntityReference ¶
func (rule *ServerAntiAffinityRule) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type ServerAntiAffinityRules ¶
type ServerAntiAffinityRules struct { Items []ServerAntiAffinityRule `json:"antiAffinityRule"` PagedResult }
ServerAntiAffinityRules represents a page of ServerAntiAffinityRule results.
type ServerBackup ¶
ServerBackup represents the backup configuration for a server.
type ServerBackupDetails ¶
type ServerBackupDetails struct { // The XML name for the BackupClientDetail structure XMLName xml.Name `xml:"http://oec.api.opsource.net/schemas/backup BackupDetails"` // The server's associated asset Id. AssetID string `xml:"assetId,attr"` // The server's associated backup service plan. ServicePlan string `xml:"servicePlan,attr"` // The server state. State string `xml:"state,attr"` // Detailed information about the server's backup clients. Clients []BackupClientDetail `xml:"http://oec.api.opsource.net/schemas/backup backupClient"` }
ServerBackupDetails represents detailed backup information for a server.
func (*ServerBackupDetails) GetClientByID ¶
func (backupDetails *ServerBackupDetails) GetClientByID(id string) *BackupClientDetail
GetClientByID retrieves the BackupClientDetail (if any) with the specified Id.
type ServerDeploymentConfiguration ¶
type ServerDeploymentConfiguration struct { Name string `json:"name"` Description string `json:"description"` ImageID string `json:"imageId"` AdministratorPassword string `json:"administratorPassword,omitempty"` CPU VirtualMachineCPU `json:"cpu"` MemoryGB int `json:"memoryGb,omitempty"` SCSIControllers VirtualMachineSCSIControllers `json:"scsiController"` Network VirtualMachineNetwork `json:"networkInfo"` PrimaryDNS string `json:"primaryDns,omitempty"` SecondaryDNS string `json:"secondaryDns,omitempty"` Start bool `json:"start"` }
ServerDeploymentConfiguration represents the configuration for deploying a virtual machine.
type ServerSummary ¶
type ServerSummary struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` }
ServerSummary respresents summary information for a server.
func (*ServerSummary) ToEntityReference ¶
func (serverSummary *ServerSummary) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the ServerSummary.
type Servers ¶
type Servers struct { Items []Server `json:"server"` PagedResult }
Servers represents a page of Server results.
type StaticRoute ¶
type StaticRoute struct { // UUID of a Network Domain belonging to {org-id} within which the Static Route is to be created. NetworkDomainId string `json:"networkDomainId"` // Must be between 1 and 75 characters in length. //Cannot start with a number, a period ('.'), 'CCSYSTEM.' or 'CCDEFAULT.'. Name string `json:"name"` // Maximum length: 255 characters. Description string `json:"description"` // Type Type string `json:"type"` // One of IPV4 or IPV6 IpVersion string `json:"ipVersion"` // Either a valid IPv4 address in dot-decimal notation or an IPv6 address in compressed or extended format. // In conjunction with the destinationPrefixSize this must represent a CIDR boundary. DestinationNetworkAddress string `json:"destinationNetworkAddress"` // Integer prefix defining the size of the network. // In conjunction with the destinationPrefixSize this must represent a CIDR boundary. DestinationPrefixSize int `json:"destinationPrefixSize"` // Gateway address in the form of an INET gateway, CPNC gateway or an address on an Attached VLAN in the same Network Domain. NextHopAddress string `json:"nextHopAddress"` // State State string `json:"state"` // The date/time that the Static Route was created in CloudControl CreateTime string `json:"createTime"` // Static Route ID ID string `json:"id"` // Data Center DataCenter string `json:"datacenterId"` }
StaticRoute reporesents client static route on a network domain in an MCP2 data center.
func (*StaticRoute) GetResourceType ¶
func (staticRoute *StaticRoute) GetResourceType() ResourceType
GetResourceType returns the static route resource type.
func (*StaticRoute) GetState ¶
func (staticRoute *StaticRoute) GetState() string
GetState returns the Static Routes current state.
func (*StaticRoute) IsDeleted ¶
func (staticRoute *StaticRoute) IsDeleted() bool
IsDeleted determines whether the network domain has been deleted (is nil).
func (*StaticRoute) ToEntityReference ¶
func (staticRoute *StaticRoute) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the VLAN.
type StaticRoutes ¶
type StaticRoutes struct { // The current page of network domains. Routes []StaticRoute `json:"staticRoute"` PagedResult }
type TagDetail ¶
type TagDetail struct { AssetType string `json:"assetType"` AssetID string `json:"assetId"` AssetName string `json:"assetName"` DataCenterID string `json:"datacenterId"` TagKeyID string `json:"tagKeyId"` Name string `json:"tagKeyName"` Value string `json:"value"` IsValueRequired bool `json:"valueRequired"` DisplayOnReports bool `json:"displayOnReport"` }
TagDetail represents detailed information about a tag applied to an asset.
type TagDetails ¶
type TagDetails struct { Items []TagDetail `json:"tag"` PagedResult }
TagDetails represents a page of TagDetail results.
type TagKey ¶
type TagKey struct { ID string `json:"id"` // contains filtered or unexported fields }
TagKey represents a key for asset tags.
type TagKeys ¶
type TagKeys struct { Items []TagKey `json:"tagKey"` PagedResult }
TagKeys represents a page of TagKey results.
type UncustomizedServerDeploymentConfiguration ¶
type UncustomizedServerDeploymentConfiguration struct { Name string `json:"name"` Description string `json:"description"` ImageID string `json:"imageId"` CPU VirtualMachineCPU `json:"cpu"` MemoryGB int `json:"memoryGb,omitempty"` Disks VirtualMachineDisks `json:"disk"` Network VirtualMachineNetwork `json:"networkInfo"` Start bool `json:"start"` }
UncustomizedServerDeploymentConfiguration represents the configuration for deploying a virtual machine without guest OS customisation.
type VIPNode ¶
type VIPNode struct { // The node Id. ID string `json:"id"` // The node name. Name string `json:"name"` // The node description. Description string `json:"description"` // VIPNode's IPv4 address (either IPv4 or IPv6 address must be specified). IPv4Address string `json:"ipv4Address,omitempty"` // VIPNode's IPv6 address (either IPv4 or IPv6 address must be specified). IPv6Address string `json:"ipv6Address,omitempty"` // The node status (VIPNodeStatusEnabled, VIPNodeStatusDisabled, or VIPNodeStatusForcedOffline). Status string `json:"status"` // The Id of the node's associated health monitor (if any). HealthMonitor VIPNodeHealthMonitor `json:"healthMonitor,omitempty"` // The node's connection limit (must be greater than 0). ConnectionLimit int `json:"connectionLimit"` // The node's connection rate limit (must be greater than 0). ConnectionRateLimit int `json:"connectionRateLimit"` // The Id of the network domain where the node is located. NetworkDomainID string `json:"networkDomainId"` // The Id of the data centre where the node is located. DataCenterID string `json:"datacenterId"` // The node's creation timestamp. CreateTime string `json:"createTime"` // The node's current state. State string `json:"state"` // The node's current progress (if any). Progress string `json:"progress"` }
VIPNode represents a VIP node.
func (*VIPNode) GetResourceType ¶
func (node *VIPNode) GetResourceType() ResourceType
GetResourceType returns the node's resource type.
func (*VIPNode) ToEntityReference ¶
func (node *VIPNode) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the VIPNode.
type VIPNodeHealthMonitor ¶
VIPNodeHealthMonitor represents a health Monitor to a VIP node.
type VIPNodeReference ¶
type VIPNodeReference struct { EntityReference IPAddress string `json:"ipAddress"` Status string `json:"status"` }
VIPNodeReference represents a reference to a VIP node.
type VIPNodes ¶
type VIPNodes struct { // The current page of node results. Items []VIPNode `json:"node"` PagedResult }
VIPNodes represents a page of VIPNode results.
type VIPPool ¶
type VIPPool struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` LoadBalanceMethod string `json:"loadBalanceMethod"` HealthMonitors []EntityReference `json:"healthMonitor"` ServiceDownAction string `json:"serviceDownAction"` SlowRampTime int `json:"slowRampTime"` State string `json:"state"` NetworkDomainID string `json:"networkDomainID"` DataCenterID string `json:"datacenterId"` CreateTime string `json:"createTime"` }
VIPPool represents a VIP pool.
func (*VIPPool) GetResourceType ¶
func (pool *VIPPool) GetResourceType() ResourceType
GetResourceType returns the pool's resource type.
func (*VIPPool) ToEntityReference ¶
func (pool *VIPPool) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the VIPNode.
type VIPPoolMember ¶
type VIPPoolMember struct { ID string `json:"id"` Pool EntityReference `json:"pool"` Node VIPNodeReference `json:"node"` Port *int `json:"port,omitempty"` Status string `json:"status"` State string `json:"state"` NetworkDomainID string `json:"networkDomainId"` DatacenterID string `json:"datacenterId"` CreateTime string `json:"createTime"` }
VIPPoolMember represents a combination of node and port as a member of a VIP pool.
type VIPPoolMembers ¶
type VIPPoolMembers struct { Items []VIPPoolMember `json:"poolMember"` PagedResult }
VIPPoolMembers represents a page of VIPPoolMember results.
type VIPPools ¶
type VIPPools struct { Items []VIPPool PagedResult }
VIPPools represents a page of VIPPool results.
type VLAN ¶
type VLAN struct { // The VLAN Id. ID string `json:"id"` // The VLAN name. Name string `json:"name"` // The VLAN description. Description string `json:"description"` // The network domain in which the VLAN is deployed associated. NetworkDomain EntityReference `json:"networkDomain"` // The VLAN's associated IPv4 network range. IPv4Range IPv4Range `json:"privateIpv4Range"` // The VLAN's IPv4 gateway address. IPv4GatewayAddress string `json:"ipv4GatewayAddress"` // The VLAN's associated IPv6 network range. IPv6Range IPv6Range `json:"ipv6Range"` // The VLAN's IPv6 gateway address. IPv6GatewayAddress string `json:"ipv6GatewayAddress"` // The date / time that the VLAN was first created. CreateTime string `json:"createTime"` // The VLAN's current state. State string `json:"state"` // The ID of the data center in which the VLAN and its containing network domain are deployed. DataCenterID string `json:"datacenterId"` // Gateway addressing GatewayAddressing string `json:"gatewayAddressing"` }
VLAN represents a compute VLAN.
func (*VLAN) GetResourceType ¶
func (vlan *VLAN) GetResourceType() ResourceType
GetResourceType returns the network domain's resource type.
func (*VLAN) ToEntityReference ¶
func (vlan *VLAN) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the VLAN.
type VLANs ¶
type VLANs struct { // The current page of network domains. VLANs []VLAN `json:"vlan"` PagedResult }
VLANs represents the response to a "List VLANs" API call.
type VirtualListener ¶
type VirtualListener struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` Type string `json:"type"` Protocol string `json:"protocol"` ListenerIPAddress string `json:"listenerIpAddress"` Port int `json:"port"` Enabled bool `json:"enabled"` ConnectionLimit int `json:"connectionLimit"` ConnectionRateLimit int `json:"connectionRateLimit"` SourcePortPreservation string `json:"sourcePortPreservation"` Pool VirtualListenerVIPPoolRef `json:"pool"` ClientClonePool VirtualListenerVIPPoolRef `json:"ClientClonePool"` PersistenceProfile EntityReference `json:"persistenceProfile"` FallbackPersistenceProfile EntityReference `json:"fallbackPersistenceProfile"` SSLOffloadProfile EntityReference `json:"sslOffloadProfile"` OptimizationProfile string `json:"optimizationProfile"` IRules []EntityReference `json:"irule"` State string `json:"state"` CreateTime string `json:"createTime"` NetworkDomainID string `json:"networkDomainId"` DataCenterID string `json:"datacenterId"` }
VirtualListener represents a virtual listener.
func (*VirtualListener) GetID ¶
func (virtualListener *VirtualListener) GetID() string
GetID returns the virtual listener's Id.
func (*VirtualListener) GetName ¶
func (virtualListener *VirtualListener) GetName() string
GetName returns the virtual listener's name.
func (*VirtualListener) GetResourceType ¶
func (virtualListener *VirtualListener) GetResourceType() ResourceType
GetResourceType returns the virtual listener's resource type.
func (*VirtualListener) GetState ¶
func (virtualListener *VirtualListener) GetState() string
GetState returns the virtual listener's current state.
func (*VirtualListener) IsDeleted ¶
func (virtualListener *VirtualListener) IsDeleted() bool
IsDeleted determines whether the virtual listener has been deleted (is nil).
func (*VirtualListener) ToEntityReference ¶
func (virtualListener *VirtualListener) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type VirtualListenerVIPPoolRef ¶
type VirtualListenerVIPPoolRef struct { LoadBalanceMethod string `json:"loadBalanceMethod"` ServiceDownAction string `json:"serviceDownAction"` HealthMonitors []EntityReference `json:"healthMonitor"` EntityReference }
VirtualListenerVIPPoolRef represents a VirtualListener's reference to a VIP pool
type VirtualListeners ¶
type VirtualListeners struct { Items []VirtualListener `json:"virtualListener"` PagedResult }
VirtualListeners represents a page of VirtualListener results.
type VirtualMachineCPU ¶
type VirtualMachineCPU struct { Count int `json:"count,omitempty"` Speed string `json:"speed,omitempty"` CoresPerSocket int `json:"coresPerSocket,omitempty"` }
VirtualMachineCPU represents the CPU configuration for a virtual machine.
type VirtualMachineDisk ¶
type VirtualMachineDisk struct { ID string `json:"id,omitempty"` SCSIUnitID int `json:"scsiId"` SizeGB int `json:"sizeGb"` Speed string `json:"speed"` Iops int `json:"iops,omitempty"` State string `json:"state,omitempty"` }
VirtualMachineDisk represents the configuration for disk in a virtual machine.
type VirtualMachineDisks ¶
type VirtualMachineDisks []VirtualMachineDisk
VirtualMachineDisks is an array of VirtualMachineDisk that adds convenience methods.
func (VirtualMachineDisks) GetByID ¶
func (disks VirtualMachineDisks) GetByID(id string) *VirtualMachineDisk
GetByID retrieves the disk (if any) with the specified Id.
func (VirtualMachineDisks) GetByUnitID ¶
func (disks VirtualMachineDisks) GetByUnitID(unitID int) *VirtualMachineDisk
GetByUnitID retrieves the disk (if any) with the specified SCSI unit Id.
type VirtualMachineNetwork ¶
type VirtualMachineNetwork struct { NetworkDomainID string `json:"networkDomainId,omitempty"` PrimaryAdapter VirtualMachineNetworkAdapter `json:"primaryNic"` AdditionalNetworkAdapters []VirtualMachineNetworkAdapter `json:"additionalNic"` }
VirtualMachineNetwork represents the networking configuration for a virtual machine.
type VirtualMachineNetworkAdapter ¶
type VirtualMachineNetworkAdapter struct { ID *string `json:"id,omitempty"` MACAddress *string `json:"macAddress,omitempty"` // CloudControl v2.4 and higher VLANID *string `json:"vlanId,omitempty"` VLANName *string `json:"vlanName,omitempty"` PrivateIPv4Address *string `json:"privateIpv4,omitempty"` PrivateIPv6Address *string `json:"ipv6,omitempty"` AdapterType *string `json:"networkAdapter,omitempty"` AdapterKey *int `json:"key,omitempty"` // CloudControl v2.4 and higher State *string `json:"state,omitempty"` }
VirtualMachineNetworkAdapter represents the configuration for a virtual machine's network adapter. If deploying a new VM, exactly one of VLANID / PrivateIPv4Address must be specified.
AdapterType (if specified) must be either E1000 or VMXNET3.
func (*VirtualMachineNetworkAdapter) GetID ¶
func (networkAdapter *VirtualMachineNetworkAdapter) GetID() string
GetID returns the network adapter's Id.
func (*VirtualMachineNetworkAdapter) GetName ¶
func (networkAdapter *VirtualMachineNetworkAdapter) GetName() string
GetName returns the network adapter's name (actually Id, since adapters don't have names).
func (*VirtualMachineNetworkAdapter) GetResourceType ¶
func (networkAdapter *VirtualMachineNetworkAdapter) GetResourceType() ResourceType
GetResourceType returns the network domain's resource type.
func (*VirtualMachineNetworkAdapter) GetState ¶
func (networkAdapter *VirtualMachineNetworkAdapter) GetState() string
GetState returns the network adapter's current state.
func (*VirtualMachineNetworkAdapter) IsDeleted ¶
func (networkAdapter *VirtualMachineNetworkAdapter) IsDeleted() bool
IsDeleted determines whether the network adapter has been deleted (is nil).
func (*VirtualMachineNetworkAdapter) ToEntityReference ¶
func (networkAdapter *VirtualMachineNetworkAdapter) ToEntityReference() EntityReference
ToEntityReference creates an EntityReference representing the CustomerImage.
type VirtualMachineSCSIController ¶
type VirtualMachineSCSIController struct { ID string `json:"id,omitempty"` BusNumber int `json:"busNumber"` Key int `json:"key"` AdapterType string `json:"adapterType"` Disks VirtualMachineDisks `json:"disk"` State string `json:"state,omitempty"` }
VirtualMachineSCSIController represents the configuration for a SCSI controller in a virtual machine.
func (*VirtualMachineSCSIController) GetDiskByUnitID ¶
func (controller *VirtualMachineSCSIController) GetDiskByUnitID(unitID int) *VirtualMachineDisk
GetDiskByUnitID retrieves the VirtualMachineDisk (if any) attached to the VirtualMachineSCSIController that matches the specified SCSI logical unit ID.
type VirtualMachineSCSIControllers ¶
type VirtualMachineSCSIControllers []VirtualMachineSCSIController
VirtualMachineSCSIControllers is an array of VirtualMachineSCSIController that adds various convenience methods.
func (VirtualMachineSCSIControllers) GetByBusNumber ¶
func (controllers VirtualMachineSCSIControllers) GetByBusNumber(busNumber int) *VirtualMachineSCSIController
GetByBusNumber retrieves the VirtualMachineSCSIController that matches the specified SCSI bus number.
func (VirtualMachineSCSIControllers) GetByID ¶
func (controllers VirtualMachineSCSIControllers) GetByID(controllerID string) *VirtualMachineSCSIController
GetByID retrieves the VirtualMachineSCSIController that matches the specified CloudControl identifier.
func (VirtualMachineSCSIControllers) GetDiskBySCSIPath ¶
func (controllers VirtualMachineSCSIControllers) GetDiskBySCSIPath(busNumber int, unitID int) *VirtualMachineDisk
GetDiskBySCSIPath retrieves the VirtualMachineDisk (if any) attached to a VirtualMachineSCSIController that matches the specified SCSI device path (bus number and unit ID).
func (VirtualMachineSCSIControllers) GetDiskCount ¶
func (controllers VirtualMachineSCSIControllers) GetDiskCount() (count int)
GetDiskCount determines the number of VirtualMachineDisk entries contained in the VirtualMachineSCSIControllers.
Source Files ¶
- account.go
- address.go
- address_lists.go
- anti_affinity_rules.go
- asset_types.go
- backup.go
- cancellation.go
- client.go
- common_contracts.go
- constants.go
- customer_images.go
- datacenters.go
- domains.go
- firewall_rules.go
- health_monitors.go
- images.go
- ipblock.go
- irules.go
- nat_rules.go
- os_images.go
- paging.go
- persistence_profiles.go
- port_lists.go
- reserved_ip_addresses.go
- resources.go
- responses.go
- responses_v1.go
- responses_v2.go
- server_clone.go
- server_scsi_controllers.go
- servers.go
- ssl_certificate_chains.go
- ssl_certificates.go
- ssl_offload_profiles.go
- static_routes.go
- tags.go
- utilities.go
- vip_nodes.go
- vip_pool_members.go
- vip_pools.go
- virtual_listeners.go
- vlans.go
- wait_for_status.go