service

package
v5.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2022 License: MIT Imports: 11 Imported by: 1

Documentation

Index

Examples

Constants

This section is empty.

Variables

View Source
var ErrCancelManagedDatabaseConnection = errors.New("managed database connection cancellation failed")

Functions

This section is empty.

Types

type Account

type Account interface {
	GetAccountList(ctx context.Context) (upcloud.AccountList, error)
	GetAccount(ctx context.Context) (*upcloud.Account, error)
	GetAccountDetails(ctx context.Context, r *request.GetAccountDetailsRequest) (*upcloud.AccountDetails, error)
	CreateSubaccount(ctx context.Context, r *request.CreateSubaccountRequest) (*upcloud.AccountDetails, error)
	ModifySubaccount(ctx context.Context, r *request.ModifySubaccountRequest) (*upcloud.AccountDetails, error)
	DeleteSubaccount(ctx context.Context, r *request.DeleteSubaccountRequest) error
}

type Client

type Client interface {
	// Get performs a GET request to the specified path and returns the response body.
	Get(ctx context.Context, path string) ([]byte, error)
	// Post performs a POST request to the specified path and returns the response body.
	Post(ctx context.Context, path string, body []byte) ([]byte, error)
	// Put performs a PUT request to the specified path and returns the response body.
	Put(ctx context.Context, path string, body []byte) ([]byte, error)
	// Patch performs a PATCH request to the specified path and returns the response body.
	Patch(ctx context.Context, path string, body []byte) ([]byte, error)
	// Delete performs a DELETE request to the specified path and returns the response body.
	Delete(ctx context.Context, path string) ([]byte, error)
	// Do performs a HTTP request using custom request object and returns the response body.
	Do(r *http.Request) ([]byte, error)
}

type Cloud

type Cloud interface {
	GetZones(ctx context.Context) (*upcloud.Zones, error)
	GetPriceZones(ctx context.Context) (*upcloud.PriceZones, error)
	GetTimeZones(ctx context.Context) (*upcloud.TimeZones, error)
	GetPlans(ctx context.Context) (*upcloud.Plans, error)
}

type Firewall

type Firewall interface {
	GetFirewallRules(ctx context.Context, r *request.GetFirewallRulesRequest) (*upcloud.FirewallRules, error)
	GetFirewallRuleDetails(ctx context.Context, r *request.GetFirewallRuleDetailsRequest) (*upcloud.FirewallRule, error)
	CreateFirewallRule(ctx context.Context, r *request.CreateFirewallRuleRequest) (*upcloud.FirewallRule, error)
	CreateFirewallRules(ctx context.Context, r *request.CreateFirewallRulesRequest) error
	DeleteFirewallRule(ctx context.Context, r *request.DeleteFirewallRuleRequest) error
}

type Host

type Host interface {
	GetHosts(ctx context.Context) (*upcloud.Hosts, error)
	GetHostDetails(ctx context.Context, r *request.GetHostDetailsRequest) (*upcloud.Host, error)
	ModifyHost(ctx context.Context, r *request.ModifyHostRequest) (*upcloud.Host, error)
}

type IPAddress

type IPAddress interface {
	GetIPAddresses(ctx context.Context) (*upcloud.IPAddresses, error)
	GetIPAddressDetails(ctx context.Context, r *request.GetIPAddressDetailsRequest) (*upcloud.IPAddress, error)
	AssignIPAddress(ctx context.Context, r *request.AssignIPAddressRequest) (*upcloud.IPAddress, error)
	ModifyIPAddress(ctx context.Context, r *request.ModifyIPAddressRequest) (*upcloud.IPAddress, error)
	ReleaseIPAddress(ctx context.Context, r *request.ReleaseIPAddressRequest) error
}

type LoadBalancer

type LoadBalancer interface {
	GetLoadBalancers(ctx context.Context, r *request.GetLoadBalancersRequest) ([]upcloud.LoadBalancer, error)
	GetLoadBalancer(ctx context.Context, r *request.GetLoadBalancerRequest) (*upcloud.LoadBalancer, error)
	CreateLoadBalancer(ctx context.Context, r *request.CreateLoadBalancerRequest) (*upcloud.LoadBalancer, error)
	ModifyLoadBalancer(ctx context.Context, r *request.ModifyLoadBalancerRequest) (*upcloud.LoadBalancer, error)
	DeleteLoadBalancer(ctx context.Context, r *request.DeleteLoadBalancerRequest) error
	// Backends
	GetLoadBalancerBackends(ctx context.Context, r *request.GetLoadBalancerBackendsRequest) ([]upcloud.LoadBalancerBackend, error)
	GetLoadBalancerBackend(ctx context.Context, r *request.GetLoadBalancerBackendRequest) (*upcloud.LoadBalancerBackend, error)
	CreateLoadBalancerBackend(ctx context.Context, r *request.CreateLoadBalancerBackendRequest) (*upcloud.LoadBalancerBackend, error)
	ModifyLoadBalancerBackend(ctx context.Context, r *request.ModifyLoadBalancerBackendRequest) (*upcloud.LoadBalancerBackend, error)
	DeleteLoadBalancerBackend(ctx context.Context, r *request.DeleteLoadBalancerBackendRequest) error
	// Backend members
	GetLoadBalancerBackendMembers(ctx context.Context, r *request.GetLoadBalancerBackendMembersRequest) ([]upcloud.LoadBalancerBackendMember, error)
	GetLoadBalancerBackendMember(ctx context.Context, r *request.GetLoadBalancerBackendMemberRequest) (*upcloud.LoadBalancerBackendMember, error)
	CreateLoadBalancerBackendMember(ctx context.Context, r *request.CreateLoadBalancerBackendMemberRequest) (*upcloud.LoadBalancerBackendMember, error)
	ModifyLoadBalancerBackendMember(ctx context.Context, r *request.ModifyLoadBalancerBackendMemberRequest) (*upcloud.LoadBalancerBackendMember, error)
	DeleteLoadBalancerBackendMember(ctx context.Context, r *request.DeleteLoadBalancerBackendMemberRequest) error
	// Resolvers
	GetLoadBalancerResolvers(ctx context.Context, r *request.GetLoadBalancerResolversRequest) ([]upcloud.LoadBalancerResolver, error)
	CreateLoadBalancerResolver(ctx context.Context, r *request.CreateLoadBalancerResolverRequest) (*upcloud.LoadBalancerResolver, error)
	GetLoadBalancerResolver(ctx context.Context, r *request.GetLoadBalancerResolverRequest) (*upcloud.LoadBalancerResolver, error)
	ModifyLoadBalancerResolver(ctx context.Context, r *request.ModifyLoadBalancerResolverRequest) (*upcloud.LoadBalancerResolver, error)
	DeleteLoadBalancerResolver(ctx context.Context, r *request.DeleteLoadBalancerResolverRequest) error
	// Plans
	GetLoadBalancerPlans(ctx context.Context, r *request.GetLoadBalancerPlansRequest) ([]upcloud.LoadBalancerPlan, error)
	// Frontends
	GetLoadBalancerFrontends(ctx context.Context, r *request.GetLoadBalancerFrontendsRequest) ([]upcloud.LoadBalancerFrontend, error)
	GetLoadBalancerFrontend(ctx context.Context, r *request.GetLoadBalancerFrontendRequest) (*upcloud.LoadBalancerFrontend, error)
	CreateLoadBalancerFrontend(ctx context.Context, r *request.CreateLoadBalancerFrontendRequest) (*upcloud.LoadBalancerFrontend, error)
	ModifyLoadBalancerFrontend(ctx context.Context, r *request.ModifyLoadBalancerFrontendRequest) (*upcloud.LoadBalancerFrontend, error)
	DeleteLoadBalancerFrontend(ctx context.Context, r *request.DeleteLoadBalancerFrontendRequest) error
	// Frontend rules
	GetLoadBalancerFrontendRules(ctx context.Context, r *request.GetLoadBalancerFrontendRulesRequest) ([]upcloud.LoadBalancerFrontendRule, error)
	GetLoadBalancerFrontendRule(ctx context.Context, r *request.GetLoadBalancerFrontendRuleRequest) (*upcloud.LoadBalancerFrontendRule, error)
	CreateLoadBalancerFrontendRule(ctx context.Context, r *request.CreateLoadBalancerFrontendRuleRequest) (*upcloud.LoadBalancerFrontendRule, error)
	ModifyLoadBalancerFrontendRule(ctx context.Context, r *request.ModifyLoadBalancerFrontendRuleRequest) (*upcloud.LoadBalancerFrontendRule, error)
	ReplaceLoadBalancerFrontendRule(ctx context.Context, r *request.ReplaceLoadBalancerFrontendRuleRequest) (*upcloud.LoadBalancerFrontendRule, error)
	DeleteLoadBalancerFrontendRule(ctx context.Context, r *request.DeleteLoadBalancerFrontendRuleRequest) error
	// TLS Config
	GetLoadBalancerFrontendTLSConfigs(ctx context.Context, r *request.GetLoadBalancerFrontendTLSConfigsRequest) ([]upcloud.LoadBalancerFrontendTLSConfig, error)
	GetLoadBalancerFrontendTLSConfig(ctx context.Context, r *request.GetLoadBalancerFrontendTLSConfigRequest) (*upcloud.LoadBalancerFrontendTLSConfig, error)
	CreateLoadBalancerFrontendTLSConfig(ctx context.Context, r *request.CreateLoadBalancerFrontendTLSConfigRequest) (*upcloud.LoadBalancerFrontendTLSConfig, error)
	ModifyLoadBalancerFrontendTLSConfig(ctx context.Context, r *request.ModifyLoadBalancerFrontendTLSConfigRequest) (*upcloud.LoadBalancerFrontendTLSConfig, error)
	DeleteLoadBalancerFrontendTLSConfig(ctx context.Context, r *request.DeleteLoadBalancerFrontendTLSConfigRequest) error
	// Certificate bundles
	GetLoadBalancerCertificateBundles(ctx context.Context, r *request.GetLoadBalancerCertificateBundlesRequest) ([]upcloud.LoadBalancerCertificateBundle, error)
	GetLoadBalancerCertificateBundle(ctx context.Context, r *request.GetLoadBalancerCertificateBundleRequest) (*upcloud.LoadBalancerCertificateBundle, error)
	CreateLoadBalancerCertificateBundle(ctx context.Context, r *request.CreateLoadBalancerCertificateBundleRequest) (*upcloud.LoadBalancerCertificateBundle, error)
	ModifyLoadBalancerCertificateBundle(ctx context.Context, r *request.ModifyLoadBalancerCertificateBundleRequest) (*upcloud.LoadBalancerCertificateBundle, error)
	DeleteLoadBalancerCertificateBundle(ctx context.Context, r *request.DeleteLoadBalancerCertificateBundleRequest) error
	// Networks
	ModifyLoadBalancerNetwork(ctx context.Context, r *request.ModifyLoadBalancerNetworkRequest) (*upcloud.LoadBalancerNetwork, error)
}

type ManagedDatabaseLogicalDatabaseManager

type ManagedDatabaseLogicalDatabaseManager interface {
	CreateManagedDatabaseLogicalDatabase(ctx context.Context, r *request.CreateManagedDatabaseLogicalDatabaseRequest) (*upcloud.ManagedDatabaseLogicalDatabase, error)
	GetManagedDatabaseLogicalDatabases(ctx context.Context, r *request.GetManagedDatabaseLogicalDatabasesRequest) ([]upcloud.ManagedDatabaseLogicalDatabase, error)
	DeleteManagedDatabaseLogicalDatabase(ctx context.Context, r *request.DeleteManagedDatabaseLogicalDatabaseRequest) error
}

type ManagedDatabaseServiceManager

type ManagedDatabaseServiceManager interface {
	CancelManagedDatabaseConnection(ctx context.Context, r *request.CancelManagedDatabaseConnection) error
	CloneManagedDatabase(ctx context.Context, r *request.CloneManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	CreateManagedDatabase(ctx context.Context, r *request.CreateManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	GetManagedDatabase(ctx context.Context, r *request.GetManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	GetManagedDatabases(ctx context.Context, r *request.GetManagedDatabasesRequest) ([]upcloud.ManagedDatabase, error)
	GetManagedDatabaseConnections(ctx context.Context, r *request.GetManagedDatabaseConnectionsRequest) ([]upcloud.ManagedDatabaseConnection, error)
	GetManagedDatabaseMetrics(ctx context.Context, r *request.GetManagedDatabaseMetricsRequest) (*upcloud.ManagedDatabaseMetrics, error)
	GetManagedDatabaseLogs(ctx context.Context, r *request.GetManagedDatabaseLogsRequest) (*upcloud.ManagedDatabaseLogs, error)
	GetManagedDatabaseQueryStatisticsMySQL(ctx context.Context, r *request.GetManagedDatabaseQueryStatisticsRequest) ([]upcloud.ManagedDatabaseQueryStatisticsMySQL, error)
	GetManagedDatabaseQueryStatisticsPostgreSQL(ctx context.Context, r *request.GetManagedDatabaseQueryStatisticsRequest) ([]upcloud.ManagedDatabaseQueryStatisticsPostgreSQL, error)
	DeleteManagedDatabase(ctx context.Context, r *request.DeleteManagedDatabaseRequest) error
	ModifyManagedDatabase(ctx context.Context, r *request.ModifyManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	UpgradeManagedDatabaseVersion(ctx context.Context, r *request.UpgradeManagedDatabaseVersionRequest) (*upcloud.ManagedDatabase, error)
	GetManagedDatabaseVersions(ctx context.Context, r *request.GetManagedDatabaseVersionsRequest) ([]string, error)
	StartManagedDatabase(ctx context.Context, r *request.StartManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	ShutdownManagedDatabase(ctx context.Context, r *request.ShutdownManagedDatabaseRequest) (*upcloud.ManagedDatabase, error)
	WaitForManagedDatabaseState(ctx context.Context, r *request.WaitForManagedDatabaseStateRequest) (*upcloud.ManagedDatabase, error)
	GetManagedDatabaseServiceType(ctx context.Context, r *request.GetManagedDatabaseServiceTypeRequest) (*upcloud.ManagedDatabaseType, error)
	GetManagedDatabaseServiceTypes(ctx context.Context, r *request.GetManagedDatabaseServiceTypesRequest) (map[string]upcloud.ManagedDatabaseType, error)
}

type Network

type Network interface {
	GetNetworks(ctx context.Context) (*upcloud.Networks, error)
	GetNetworksInZone(ctx context.Context, r *request.GetNetworksInZoneRequest) (*upcloud.Networks, error)
	CreateNetwork(ctx context.Context, r *request.CreateNetworkRequest) (*upcloud.Network, error)
	GetNetworkDetails(ctx context.Context, r *request.GetNetworkDetailsRequest) (*upcloud.Network, error)
	ModifyNetwork(ctx context.Context, r *request.ModifyNetworkRequest) (*upcloud.Network, error)
	DeleteNetwork(ctx context.Context, r *request.DeleteNetworkRequest) error
	AttachNetworkRouter(ctx context.Context, r *request.AttachNetworkRouterRequest) error
	DetachNetworkRouter(ctx context.Context, r *request.DetachNetworkRouterRequest) error
	GetServerNetworks(ctx context.Context, r *request.GetServerNetworksRequest) (*upcloud.Networking, error)
	CreateNetworkInterface(ctx context.Context, r *request.CreateNetworkInterfaceRequest) (*upcloud.Interface, error)
	ModifyNetworkInterface(ctx context.Context, r *request.ModifyNetworkInterfaceRequest) (*upcloud.Interface, error)
	DeleteNetworkInterface(ctx context.Context, r *request.DeleteNetworkInterfaceRequest) error
	GetRouters(ctx context.Context) (*upcloud.Routers, error)
	GetRouterDetails(ctx context.Context, r *request.GetRouterDetailsRequest) (*upcloud.Router, error)
	CreateRouter(ctx context.Context, r *request.CreateRouterRequest) (*upcloud.Router, error)
	ModifyRouter(ctx context.Context, r *request.ModifyRouterRequest) (*upcloud.Router, error)
	DeleteRouter(ctx context.Context, r *request.DeleteRouterRequest) error
}

type Service

type Service struct {
	// contains filtered or unexported fields
}

Service represents the API service with context support. The specified client is used to communicate with the API

func New

func New(client Client) *Service
Example
svc := New(client.New("<username>", "<password>"))
ctx, cancel := context.WithDeadline(context.Background(), time.Now().Add(10*time.Second))
defer cancel()
zones, err := svc.GetZones(ctx)
if err != nil {
	log.Fatal(err)
}
fmt.Printf("%d", len(zones.Zones))
Output:

func (*Service) AssignIPAddress

func (s *Service) AssignIPAddress(ctx context.Context, r *request.AssignIPAddressRequest) (*upcloud.IPAddress, error)

AssignIPAddress assigns the specified IP address to the specified server

func (*Service) AttachNetworkRouter

func (s *Service) AttachNetworkRouter(ctx context.Context, r *request.AttachNetworkRouterRequest) error

AttachNetworkRouter attaches a router to the specified network.

func (*Service) AttachStorage

AttachStorage attaches the specified storage to the specified server

func (*Service) CancelManagedDatabaseConnection

func (s *Service) CancelManagedDatabaseConnection(ctx context.Context, r *request.CancelManagedDatabaseConnection) error

CancelManagedDatabaseConnection (EXPERIMENTAL) cancels a current query of a database connection or terminates it entirely. In case of the server is unable to cancel the query or terminate the connection ErrCancelManagedDatabaseConnection is returned.

func (*Service) CloneManagedDatabase

CloneManagedDatabase (EXPERIMENTAL) clones en existing managed database instance

func (*Service) CloneStorage

CloneStorage detaches the specified storage from the specified server

func (*Service) CreateBackup

CreateBackup creates a backup of the specified storage

func (*Service) CreateFirewallRule

CreateFirewallRule creates the firewall rule

func (*Service) CreateFirewallRules

func (s *Service) CreateFirewallRules(ctx context.Context, r *request.CreateFirewallRulesRequest) error

CreateFirewallRules creates multiple firewall rules

func (*Service) CreateKubernetesCluster

CreateKubernetesCluster creates a new Kubernetes cluster (EXPERIMENTAL).

func (*Service) CreateLoadBalancer

CreateLoadBalancer creates a new load balancer.

func (*Service) CreateLoadBalancerBackend

CreateLoadBalancerBackend creates a new load balancer backend.

func (*Service) CreateLoadBalancerBackendMember

CreateLoadBalancerBackendMember creates a new load balancer backend member.

func (*Service) CreateLoadBalancerCertificateBundle

CreateLoadBalancerCertificateBundle creates a new load balancer certificate bundle.

func (*Service) CreateLoadBalancerFrontend

CreateLoadBalancerFrontend creates a new load balancer frontend.

func (*Service) CreateLoadBalancerFrontendRule

CreateLoadBalancerFrontendRule creates a new load balancer frontend rule.

func (*Service) CreateLoadBalancerFrontendTLSConfig

CreateLoadBalancerFrontendTLSConfig creates a new load balancer frontend TLS config.

func (*Service) CreateLoadBalancerResolver

CreateLoadBalancerResolver creates a new load balancer resolver.

func (*Service) CreateManagedDatabase

CreateManagedDatabase (EXPERIMENTAL) creates a new managed database instance

func (*Service) CreateManagedDatabaseLogicalDatabase

CreateManagedDatabaseLogicalDatabase (EXPERIMENTAL) creates a new logical database to an existing managed database instance

func (*Service) CreateManagedDatabaseUser

CreateManagedDatabaseUser (EXPERIMENTAL) creates a new normal user to an existing managed database instance

func (*Service) CreateNetwork

func (s *Service) CreateNetwork(ctx context.Context, r *request.CreateNetworkRequest) (*upcloud.Network, error)

CreateNetwork creates a new network and returns the network details for the new network.

func (*Service) CreateNetworkInterface

func (s *Service) CreateNetworkInterface(ctx context.Context, r *request.CreateNetworkInterfaceRequest) (*upcloud.Interface, error)

CreateNetworkInterface creates a new network interface on the specified server.

func (*Service) CreateObjectStorage

CreateObjectStorage creates a Object Storage and return the Object Storage details for the newly created device

func (*Service) CreateRouter

func (s *Service) CreateRouter(ctx context.Context, r *request.CreateRouterRequest) (*upcloud.Router, error)

CreateRouter creates a new router.

func (*Service) CreateServer

CreateServer creates a server and returns the server details for the newly created server

func (*Service) CreateServerGroup

func (s *Service) CreateServerGroup(ctx context.Context, r *request.CreateServerGroupRequest) (*upcloud.ServerGroup, error)

CreateServerGroup creates a new server group with context (EXPERIMENTAL).

func (*Service) CreateStorage

CreateStorage creates the specified storage

func (*Service) CreateStorageImport

CreateStorageImport begins the process of importing an image onto a storage device. A `upcloud.StorageImportSourceHTTPImport` source will import from an HTTP source. `upcloud.StorageImportSourceDirectUpload` will directly upload the file specified in `SourceLocation`.

func (*Service) CreateSubaccount

CreateSubaccount creates a new sub account

func (*Service) CreateTag

func (s *Service) CreateTag(ctx context.Context, r *request.CreateTagRequest) (*upcloud.Tag, error)

CreateTag creates a new tag, optionally assigning it to one or more servers at the same time

func (*Service) DeleteFirewallRule

func (s *Service) DeleteFirewallRule(ctx context.Context, r *request.DeleteFirewallRuleRequest) error

DeleteFirewallRule deletes the specified firewall rule

func (*Service) DeleteKubernetesCluster

func (s *Service) DeleteKubernetesCluster(ctx context.Context, r *request.DeleteKubernetesClusterRequest) error

DeleteKubernetesCluster deletes an existing Kubernetes cluster (EXPERIMENTAL).

func (*Service) DeleteLoadBalancer

func (s *Service) DeleteLoadBalancer(ctx context.Context, r *request.DeleteLoadBalancerRequest) error

DeleteLoadBalancer deletes an existing load balancer.

func (*Service) DeleteLoadBalancerBackend

func (s *Service) DeleteLoadBalancerBackend(ctx context.Context, r *request.DeleteLoadBalancerBackendRequest) error

DeleteLoadBalancerBackend deletes an existing load balancer backend.

func (*Service) DeleteLoadBalancerBackendMember

func (s *Service) DeleteLoadBalancerBackendMember(ctx context.Context, r *request.DeleteLoadBalancerBackendMemberRequest) error

DeleteLoadBalancerBackendMember deletes an existing load balancer backend member.

func (*Service) DeleteLoadBalancerCertificateBundle

func (s *Service) DeleteLoadBalancerCertificateBundle(ctx context.Context, r *request.DeleteLoadBalancerCertificateBundleRequest) error

DeleteLoadBalancerCertificateBundle deletes an existing load balancer certificate bundle.

func (*Service) DeleteLoadBalancerFrontend

func (s *Service) DeleteLoadBalancerFrontend(ctx context.Context, r *request.DeleteLoadBalancerFrontendRequest) error

DeleteLoadBalancerFrontend deletes an existing load balancer frontend.

func (*Service) DeleteLoadBalancerFrontendRule

func (s *Service) DeleteLoadBalancerFrontendRule(ctx context.Context, r *request.DeleteLoadBalancerFrontendRuleRequest) error

DeleteLoadBalancerFrontendRule deletes an existing load balancer frontend rule.

func (*Service) DeleteLoadBalancerFrontendTLSConfig

func (s *Service) DeleteLoadBalancerFrontendTLSConfig(ctx context.Context, r *request.DeleteLoadBalancerFrontendTLSConfigRequest) error

DeleteLoadBalancerFrontendTLSConfig deletes an existing load balancer frontend TLS config.

func (*Service) DeleteLoadBalancerResolver

func (s *Service) DeleteLoadBalancerResolver(ctx context.Context, r *request.DeleteLoadBalancerResolverRequest) error

DeleteLoadBalancerResolver deletes an existing load balancer resolver.

func (*Service) DeleteManagedDatabase

func (s *Service) DeleteManagedDatabase(ctx context.Context, r *request.DeleteManagedDatabaseRequest) error

DeleteManagedDatabase (EXPERIMENTAL) deletes an existing managed database instance

func (*Service) DeleteManagedDatabaseLogicalDatabase

func (s *Service) DeleteManagedDatabaseLogicalDatabase(ctx context.Context, r *request.DeleteManagedDatabaseLogicalDatabaseRequest) error

DeleteManagedDatabaseLogicalDatabase (EXPERIMENTAL) deletes an existing logical database of an existing managed database instance

func (*Service) DeleteManagedDatabaseUser

func (s *Service) DeleteManagedDatabaseUser(ctx context.Context, r *request.DeleteManagedDatabaseUserRequest) error

DeleteManagedDatabaseUser (EXPERIMENTAL) deletes an existing user of an existing managed database instance

func (*Service) DeleteNetwork

func (s *Service) DeleteNetwork(ctx context.Context, r *request.DeleteNetworkRequest) error

DeleteNetwork deletes the specified network.

func (*Service) DeleteNetworkInterface

func (s *Service) DeleteNetworkInterface(ctx context.Context, r *request.DeleteNetworkInterfaceRequest) error

DeleteNetworkInterface removes the specified network interface from the specified server.

func (*Service) DeleteObjectStorage

func (s *Service) DeleteObjectStorage(ctx context.Context, r *request.DeleteObjectStorageRequest) error

DeleteObjectStorage deletes the specific Object Storage

func (*Service) DeleteRouter

func (s *Service) DeleteRouter(ctx context.Context, r *request.DeleteRouterRequest) error

DeleteRouter deletes the specified router.

func (*Service) DeleteServer

func (s *Service) DeleteServer(ctx context.Context, r *request.DeleteServerRequest) error

DeleteServer deletes the specified server

func (*Service) DeleteServerAndStorages

func (s *Service) DeleteServerAndStorages(ctx context.Context, r *request.DeleteServerAndStoragesRequest) error

DeleteServerAndStorages deletes the specified server and all attached storages

func (*Service) DeleteServerGroup

func (s *Service) DeleteServerGroup(ctx context.Context, r *request.DeleteServerGroupRequest) error

DeleteServerGroup deletes an existing server group with context (EXPERIMENTAL).

func (*Service) DeleteStorage

func (s *Service) DeleteStorage(ctx context.Context, r *request.DeleteStorageRequest) error

DeleteStorage deletes the specified storage device

func (*Service) DeleteSubaccount

func (s *Service) DeleteSubaccount(ctx context.Context, r *request.DeleteSubaccountRequest) error

DeleteSubaccount deletes a sub account

func (*Service) DeleteTag

func (s *Service) DeleteTag(ctx context.Context, r *request.DeleteTagRequest) error

DeleteTag deletes the specified tag

func (*Service) DetachNetworkRouter

func (s *Service) DetachNetworkRouter(ctx context.Context, r *request.DetachNetworkRouterRequest) error

DetachNetworkRouter detaches a router from the specified network.

func (*Service) DetachStorage

DetachStorage detaches the specified storage from the specified server

func (*Service) EjectCDROM

EjectCDROM ejects the storage from the CD-ROM device of a server

func (*Service) GetAccount

func (s *Service) GetAccount(ctx context.Context) (*upcloud.Account, error)

GetAccount returns the current user's account

func (*Service) GetAccountDetails

GetAccountDetails returns account details

func (*Service) GetAccountList

func (s *Service) GetAccountList(ctx context.Context) (upcloud.AccountList, error)

GetAccountList returns the account list

func (*Service) GetFirewallRuleDetails

func (s *Service) GetFirewallRuleDetails(ctx context.Context, r *request.GetFirewallRuleDetailsRequest) (*upcloud.FirewallRule, error)

GetFirewallRuleDetails returns extended details about the specified firewall rule

func (*Service) GetFirewallRules

GetFirewallRules returns the firewall rules for the specified server

func (*Service) GetHostDetails

func (s *Service) GetHostDetails(ctx context.Context, r *request.GetHostDetailsRequest) (*upcloud.Host, error)

GetHostDetails returns the details for a single private host

func (*Service) GetHosts

func (s *Service) GetHosts(ctx context.Context) (*upcloud.Hosts, error)

GetHosts returns the all the available private hosts

func (*Service) GetIPAddressDetails

func (s *Service) GetIPAddressDetails(ctx context.Context, r *request.GetIPAddressDetailsRequest) (*upcloud.IPAddress, error)

GetIPAddressDetails returns extended details about the specified IP address

func (*Service) GetIPAddresses

func (s *Service) GetIPAddresses(ctx context.Context) (*upcloud.IPAddresses, error)

GetIPAddresses returns all IP addresses associated with the account

func (*Service) GetKubernetesCluster

GetKubernetesCluster retrieves details of a Kubernetes cluster (EXPERIMENTAL).

func (*Service) GetKubernetesClusters

GetKubernetesClusters retrieves a list of Kubernetes clusters (EXPERIMENTAL).

func (*Service) GetKubernetesKubeconfig

func (s *Service) GetKubernetesKubeconfig(ctx context.Context, r *request.GetKubernetesKubeconfigRequest) (string, error)

GetKubernetesKubeconfig retrieves kubeconfig of a Kubernetes cluster (EXPERIMENTAL).

func (*Service) GetKubernetesVersions

func (s *Service) GetKubernetesVersions(ctx context.Context, r *request.GetKubernetesVersionsRequest) ([]string, error)

GetKubernetesVersions retrieves a list of Kubernetes cluster versions (EXPERIMENTAL).

func (*Service) GetLoadBalancer

GetLoadBalancer retrieves details of a load balancer.

func (*Service) GetLoadBalancerBackend

GetLoadBalancerBackend retrieves details of a load balancer backend.

func (*Service) GetLoadBalancerBackendMember

GetLoadBalancerBackendMember retrieves details of a load balancer backend member.

func (*Service) GetLoadBalancerBackendMembers

GetLoadBalancerBackendMembers retrieves a list of load balancer backend members.

func (*Service) GetLoadBalancerBackends

GetLoadBalancerBackends retrieves a list of load balancer backends.

func (*Service) GetLoadBalancerCertificateBundle

GetLoadBalancerCertificateBundle retrieves details of a load balancer certificate bundle.

func (*Service) GetLoadBalancerCertificateBundles

GetLoadBalancerCertificateBundles retrieves details of a load balancer certificate bundles.

func (*Service) GetLoadBalancerFrontend

GetLoadBalancerFrontend retrieves details of a load balancer frontend.

func (*Service) GetLoadBalancerFrontendRule

GetLoadBalancerFrontendRule retrieves details of a load balancer frontend rule.

func (*Service) GetLoadBalancerFrontendRules

GetLoadBalancerFrontendRules retrieves a list of load balancer frontend rules.

func (*Service) GetLoadBalancerFrontendTLSConfig

GetLoadBalancerFrontendTLSConfig retrieves details of a load balancer frontend TLS config.

func (*Service) GetLoadBalancerFrontendTLSConfigs

GetLoadBalancerFrontendTLSConfigs retrieves a list of load balancer frontend TLS configs.

func (*Service) GetLoadBalancerFrontends

GetLoadBalancerFrontends retrieves a list of load balancer frontends.

func (*Service) GetLoadBalancerPlans

GetLoadBalancerPlans retrieves a list of load balancer plans.

func (*Service) GetLoadBalancerResolver

GetLoadBalancerResolver retrieves details of a load balancer resolver.

func (*Service) GetLoadBalancerResolvers

GetLoadBalancerResolvers retrieves a list of load balancer resolvers.

func (*Service) GetLoadBalancers

func (s *Service) GetLoadBalancers(ctx context.Context, r *request.GetLoadBalancersRequest) ([]upcloud.LoadBalancer, error)

GetLoadBalancers retrieves a list of load balancers.

func (*Service) GetManagedDatabase

GetManagedDatabase (EXPERIMENTAL) gets details of an existing managed database instance

func (*Service) GetManagedDatabaseConnections

GetManagedDatabaseConnections (EXPERIMENTAL) returns a slice of connections from an existing managed database instance

func (*Service) GetManagedDatabaseLogicalDatabases

GetManagedDatabaseLogicalDatabases (EXPERIMENTAL) returns a slice of all logical databases of an existing managed database instance

func (*Service) GetManagedDatabaseLogs

GetManagedDatabaseLogs (EXPERIMENTAL) returns logs of a managed database instance

func (*Service) GetManagedDatabaseMetrics

GetManagedDatabaseMetrics (EXPERIMENTAL) returns metrics collection for the selected period

func (*Service) GetManagedDatabaseQueryStatisticsMySQL

GetManagedDatabaseQueryStatisticsMySQL (EXPERIMENTAL) returns MySQL query statistics of a managed database instance

func (*Service) GetManagedDatabaseQueryStatisticsPostgreSQL

GetManagedDatabaseQueryStatisticsPostgres (EXPERIMENTAL) returns PostgreSQL query statistics of a managed database instance

func (*Service) GetManagedDatabaseServiceType

GetManagedDatabaseServiceType (EXPERIMENTAL) returns details of requested service type

func (*Service) GetManagedDatabaseServiceTypes

GetManagedDatabaseServiceTypes (EXPERIMENTAL) returns a map of available database service types

func (*Service) GetManagedDatabaseUser

GetManagedDatabaseUser (EXPERIMENTAL) returns details of an existing user of an existing managed database instance

func (*Service) GetManagedDatabaseUsers

GetManagedDatabaseUsers (EXPERIMENTAL) returns a slice of all users of an existing managed database instance

func (*Service) GetManagedDatabaseVersions

func (s *Service) GetManagedDatabaseVersions(ctx context.Context, r *request.GetManagedDatabaseVersionsRequest) ([]string, error)

GetManagedDatabaseVersions available versions of the specific Managed Database service

func (*Service) GetManagedDatabases

GetManagedDatabases (EXPERIMENTAL) returns a slice of all managed database instances within an account

func (*Service) GetNetworkDetails

func (s *Service) GetNetworkDetails(ctx context.Context, r *request.GetNetworkDetailsRequest) (*upcloud.Network, error)

GetNetworkDetails returns the details for the specified network.

func (*Service) GetNetworks

func (s *Service) GetNetworks(ctx context.Context) (*upcloud.Networks, error)

GetNetworks returns the all the available networks

func (*Service) GetNetworksInZone

func (s *Service) GetNetworksInZone(ctx context.Context, r *request.GetNetworksInZoneRequest) (*upcloud.Networks, error)

GetNetworksInZone returns the all the available networks within the specified zone.

func (*Service) GetObjectStorageDetails

GetObjectStorageDetails returns extended details about the specified Object Storage

func (*Service) GetObjectStorages

func (s *Service) GetObjectStorages(ctx context.Context) (*upcloud.ObjectStorages, error)

GetObjectStorages returns the available objects storages

func (*Service) GetPermissions

func (*Service) GetPlans

func (s *Service) GetPlans(ctx context.Context) (*upcloud.Plans, error)

GetPlans returns the available service plans

func (*Service) GetPriceZones

func (s *Service) GetPriceZones(ctx context.Context) (*upcloud.PriceZones, error)

GetPriceZones returns the available price zones and their corresponding prices

func (*Service) GetRouterDetails

func (s *Service) GetRouterDetails(ctx context.Context, r *request.GetRouterDetailsRequest) (*upcloud.Router, error)

GetRouterDetails returns the details for the specified router.

func (*Service) GetRouters

func (s *Service) GetRouters(ctx context.Context) (*upcloud.Routers, error)

GetRouters returns the all the available routers

func (*Service) GetServerConfigurations

func (s *Service) GetServerConfigurations(ctx context.Context) (*upcloud.ServerConfigurations, error)

GetServerConfigurations returns the available pre-configured server configurations

func (*Service) GetServerDetails

GetServerDetails returns extended details about the specified server

func (*Service) GetServerGroup

GetServerGroup retrieves details of a server group with context (EXPERIMENTAL).

func (*Service) GetServerGroups

GetServerGroups retrieves a list of server groups with context (EXPERIMENTAL).

func (*Service) GetServerGroupsWithFilters

func (s *Service) GetServerGroupsWithFilters(ctx context.Context, r *request.GetServerGroupsWithFiltersRequest) (upcloud.ServerGroups, error)

GetServerGroupsWithFilters retrieves a list of server groups with filters (EXPERIMENTAL).

func (*Service) GetServerNetworks

func (s *Service) GetServerNetworks(ctx context.Context, r *request.GetServerNetworksRequest) (*upcloud.Networking, error)

GetServerNetworks returns all the networks associated with the specified server.

func (*Service) GetServers

func (s *Service) GetServers(ctx context.Context) (*upcloud.Servers, error)

GetServers returns the available servers

func (*Service) GetServersWithFilters

func (s *Service) GetServersWithFilters(ctx context.Context, r *request.GetServersWithFiltersRequest) (*upcloud.Servers, error)

GetServersWithFilters returns the all the available servers using given filters.

func (*Service) GetStorageDetails

GetStorageDetails returns extended details about the specified piece of storage

func (*Service) GetStorageImportDetails

GetStorageImportDetails gets updated details about the specified storage import.

func (*Service) GetStorages

func (s *Service) GetStorages(ctx context.Context, r *request.GetStoragesRequest) (*upcloud.Storages, error)

GetStorages returns all available storages

func (*Service) GetTags

func (s *Service) GetTags(ctx context.Context) (*upcloud.Tags, error)

GetTags returns all tags

func (*Service) GetTimeZones

func (s *Service) GetTimeZones(ctx context.Context) (*upcloud.TimeZones, error)

GetTimeZones returns the available timezones

func (*Service) GetZones

func (s *Service) GetZones(ctx context.Context) (*upcloud.Zones, error)

GetZones returns the available zones

func (*Service) GrantPermission

func (s *Service) GrantPermission(ctx context.Context, r *request.GrantPermissionRequest) (*upcloud.Permission, error)

func (*Service) LoadCDROM

LoadCDROM loads a storage as a CD-ROM in the CD-ROM device of a server

func (*Service) ModifyHost

func (s *Service) ModifyHost(ctx context.Context, r *request.ModifyHostRequest) (*upcloud.Host, error)

ModifyHost modifies the configuration of an existing host.

func (*Service) ModifyIPAddress

func (s *Service) ModifyIPAddress(ctx context.Context, r *request.ModifyIPAddressRequest) (*upcloud.IPAddress, error)

ModifyIPAddress modifies the specified IP address

func (*Service) ModifyLoadBalancer

ModifyLoadBalancer modifies an existing load balancer.

func (*Service) ModifyLoadBalancerBackend

ModifyLoadBalancerBackend modifies an existing load balancer backend.

func (*Service) ModifyLoadBalancerBackendMember

ModifyLoadBalancerBackendMember modifies an existing load balancer backend member.

func (*Service) ModifyLoadBalancerCertificateBundle

ModifyLoadBalancerCertificateBundle modifies an existing load balancer certificate bundle.

func (*Service) ModifyLoadBalancerFrontend

ModifyLoadBalancerFrontend modifies an existing load balancer frontend.

func (*Service) ModifyLoadBalancerFrontendRule

ModifyLoadBalancerFrontendRule modifies an existing load balancer frontend rule.

func (*Service) ModifyLoadBalancerFrontendTLSConfig

ModifyLoadBalancerFrontendTLSConfig modifies an existing load balancer frontend TLS Config.

func (*Service) ModifyLoadBalancerResolver

ModifyLoadBalancerResolver modifies an existing load balancer resolver.

func (*Service) ModifyManagedDatabase

ModifyManagedDatabase (EXPERIMENTAL) modifies an existing managed database instance

func (*Service) ModifyManagedDatabaseUser

ModifyManagedDatabaseUser (EXPERIMENTAL) modifies an existing user of an existing managed database instance

func (*Service) ModifyNetwork

func (s *Service) ModifyNetwork(ctx context.Context, r *request.ModifyNetworkRequest) (*upcloud.Network, error)

ModifyNetwork modifies the existing specified network.

func (*Service) ModifyNetworkInterface

func (s *Service) ModifyNetworkInterface(ctx context.Context, r *request.ModifyNetworkInterfaceRequest) (*upcloud.Interface, error)

ModifyNetworkInterface modifies the specified network interface on the specified server.

func (*Service) ModifyObjectStorage

ModifyObjectStorage modifies the configuration of an existing Object Storage

func (*Service) ModifyRouter

func (s *Service) ModifyRouter(ctx context.Context, r *request.ModifyRouterRequest) (*upcloud.Router, error)

ModifyRouter modifies the configuration of the specified existing router.

func (*Service) ModifyServer

ModifyServer modifies the configuration of an existing server. Attaching and detaching storages as well as assigning and releasing IP addresses have their own separate operations.

func (*Service) ModifyServerGroup

func (s *Service) ModifyServerGroup(ctx context.Context, r *request.ModifyServerGroupRequest) (*upcloud.ServerGroup, error)

ModifyServerGroup modifies an existing server group with context (EXPERIMENTAL).

func (*Service) ModifyStorage

ModifyStorage modifies the specified storage device

func (*Service) ModifySubaccount

ModifySubaccount modifies a sub account

func (*Service) ModifyTag

func (s *Service) ModifyTag(ctx context.Context, r *request.ModifyTagRequest) (*upcloud.Tag, error)

ModifyTag modifies a tag (e.g. renaming it)

func (*Service) ReleaseIPAddress

func (s *Service) ReleaseIPAddress(ctx context.Context, r *request.ReleaseIPAddressRequest) error

ReleaseIPAddress releases the specified IP address from the server it is attached to

func (*Service) ReplaceLoadBalancerFrontendRule

ReplaceLoadBalancerFrontendRule replaces an existing load balancer frontend rule.

func (*Service) ResizeStorageFilesystem

ResizeStorageFilesystem resizes the last partition of a storage and the ext3/ext4/XFS/NTFS filesystem on that partition if the partition does not extend to the end of the storage yet.

Before the resize is attempted, a backup is taken from the storage. If the resize succeeds, backup details are returned. It is advisable to keep the backup until you have ensured that everything works after the resize.

If the resize fails, backup is used to restore the storage to the state where it was before the resize. After that the backup is deleted automatically.

func (*Service) RestartServer

RestartServer restarts the specified server

func (*Service) RestoreBackup

func (s *Service) RestoreBackup(ctx context.Context, r *request.RestoreBackupRequest) error

RestoreBackup creates a backup of the specified storage

func (*Service) RevokePermission

func (s *Service) RevokePermission(ctx context.Context, r *request.RevokePermissionRequest) error

func (*Service) ShutdownManagedDatabase

ShutdownManagedDatabase (EXPERIMENTAL) shuts down existing managed database instance. Only a service which has at least one full backup can be shut down.

func (*Service) StartManagedDatabase

StartManagedDatabase (EXPERIMENTAL) starts a shut down existing managed database instance

func (*Service) StartServer

StartServer starts the specified server

func (*Service) StopServer

StopServer stops the specified server

func (*Service) TagServer

TagServer tags a server with with one or more tags

func (*Service) TemplatizeStorage

TemplatizeStorage detaches the specified storage from the specified server

func (*Service) UntagServer

UntagServer removes one or more tags from a server

func (*Service) UpgradeManagedDatabaseVersion

func (s *Service) UpgradeManagedDatabaseVersion(ctx context.Context, r *request.UpgradeManagedDatabaseVersionRequest) (*upcloud.ManagedDatabase, error)

UpgradeManagedDatabaseServiceVersion upgrades the version of the database service; for the list of available versions use GetManagedDatabaseVersions function

func (*Service) WaitForKubernetesClusterState

func (s *Service) WaitForKubernetesClusterState(ctx context.Context, r *request.WaitForKubernetesClusterStateRequest) (*upcloud.KubernetesCluster, error)

WaitForKubernetesClusterState (EXPERIMENTAL) blocks execution until the specified Kubernetes cluster has entered the specified state. If the state changes favorably, cluster details is returned. The method will give up after the specified timeout

func (*Service) WaitForManagedDatabaseState

func (s *Service) WaitForManagedDatabaseState(ctx context.Context, r *request.WaitForManagedDatabaseStateRequest) (*upcloud.ManagedDatabase, error)

WaitForManagedDatabaseState (EXPERIMENTAL) blocks execution until the specified managed database instance has entered the specified state. If the state changes favorably, the new managed database details is returned. The method will give up after the specified timeout

func (*Service) WaitForServerState

WaitForServerState blocks execution until the specified server has entered the specified state. If the state changes favorably, the new server details are returned. The method will give up after the specified timeout

func (*Service) WaitForStorageImportCompletion

WaitForStorageImportCompletion waits for the importing storage to complete.

func (*Service) WaitForStorageState

WaitForStorageState blocks execution until the specified storage device has entered the specified state. If the state changes favorably, the new storage details is returned. The method will give up after the specified timeout

type Storage

type Storage interface {
	GetStorages(ctx context.Context, r *request.GetStoragesRequest) (*upcloud.Storages, error)
	GetStorageDetails(ctx context.Context, r *request.GetStorageDetailsRequest) (*upcloud.StorageDetails, error)
	CreateStorage(ctx context.Context, r *request.CreateStorageRequest) (*upcloud.StorageDetails, error)
	ModifyStorage(ctx context.Context, r *request.ModifyStorageRequest) (*upcloud.StorageDetails, error)
	AttachStorage(ctx context.Context, r *request.AttachStorageRequest) (*upcloud.ServerDetails, error)
	DetachStorage(ctx context.Context, r *request.DetachStorageRequest) (*upcloud.ServerDetails, error)
	CloneStorage(ctx context.Context, r *request.CloneStorageRequest) (*upcloud.StorageDetails, error)
	TemplatizeStorage(ctx context.Context, r *request.TemplatizeStorageRequest) (*upcloud.StorageDetails, error)
	WaitForStorageState(ctx context.Context, r *request.WaitForStorageStateRequest) (*upcloud.StorageDetails, error)
	LoadCDROM(ctx context.Context, r *request.LoadCDROMRequest) (*upcloud.ServerDetails, error)
	EjectCDROM(ctx context.Context, r *request.EjectCDROMRequest) (*upcloud.ServerDetails, error)
	CreateBackup(ctx context.Context, r *request.CreateBackupRequest) (*upcloud.StorageDetails, error)
	RestoreBackup(ctx context.Context, r *request.RestoreBackupRequest) error
	CreateStorageImport(ctx context.Context, r *request.CreateStorageImportRequest) (*upcloud.StorageImportDetails, error)
	GetStorageImportDetails(ctx context.Context, r *request.GetStorageImportDetailsRequest) (*upcloud.StorageImportDetails, error)
	WaitForStorageImportCompletion(ctx context.Context, r *request.WaitForStorageImportCompletionRequest) (*upcloud.StorageImportDetails, error)
	DeleteStorage(ctx context.Context, r *request.DeleteStorageRequest) error
	ResizeStorageFilesystem(ctx context.Context, r *request.ResizeStorageFilesystemRequest) (*upcloud.ResizeStorageFilesystemBackup, error)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL