Documentation ¶
Overview ¶
Package kubernetes is an EXPERIMENTAL endpoint for controlling the resources of a kubernetes cluster. It is not yet stable and may receive breaking changes.
Index ¶
- type BlockStorage
- type BlockStorageOrder
- type BlockStorageStatus
- type BlockStorageType
- type Cluster
- type ClusterOrder
- type Event
- type IPSetup
- type Label
- type LoadBalancer
- type LoadBalancerConfig
- type LoadBalancerState
- type LoadBalancerStatus
- type LoadBalancerStatusReport
- type LoadBalancingMode
- type Node
- type NodeAddress
- type NodeAddressType
- type NodePool
- type NodePoolOrder
- type NodeStatus
- type PortConfiguration
- type PortConfigurationEndpointSSLMode
- type PortConfigurationMode
- type Release
- type Repository
- func (r *Repository) AddBlockStorageVolume(order BlockStorageOrder) error
- func (r *Repository) AddNodePool(nodePoolOrder NodePoolOrder) error
- func (r *Repository) CreateCluster(clusterOrder ClusterOrder) error
- func (r *Repository) CreateLoadBalancer(clusterName, name string) error
- func (r *Repository) GetBlockStorageStatistics(clusterName, name string, period vps.UsagePeriod) ([]vps.UsageDataDisk, error)
- func (r *Repository) GetBlockStorageVolume(clusterName, name string) (BlockStorage, error)
- func (r *Repository) GetBlockStorageVolumes(clusterName string) ([]BlockStorage, error)
- func (r *Repository) GetClusterByName(clusterName string) (Cluster, error)
- func (r *Repository) GetClusters() ([]Cluster, error)
- func (r *Repository) GetCompatibleRelease(clusterName, version string) (Release, error)
- func (r *Repository) GetCompatibleReleases(clusterName string) ([]Release, error)
- func (r *Repository) GetEventByName(clusterName, eventName string) (Event, error)
- func (r *Repository) GetEvents(clusterName string) ([]Event, error)
- func (r *Repository) GetEventsByNamespace(clusterName, namespace string) ([]Event, error)
- func (r *Repository) GetKubeConfig(clusterName string) (string, error)
- func (r *Repository) GetLabels(clusterName, nodePoolUUID string) ([]Label, error)
- func (r *Repository) GetLoadBalancer(clusterName, name string) (LoadBalancer, error)
- func (r *Repository) GetLoadBalancerStatusReports(clusterName, name string) ([]LoadBalancerStatusReport, error)
- func (r *Repository) GetLoadBalancerStatusReportsForNode(clusterName, name, nodeUUID string) ([]LoadBalancerStatusReport, error)
- func (r *Repository) GetLoadBalancers(clusterName string) ([]LoadBalancer, error)
- func (r *Repository) GetNode(clusterName, nodeUUID string) (Node, error)
- func (r *Repository) GetNodePool(clusterName, nodePoolUUID string) (NodePool, error)
- func (r *Repository) GetNodePools(clusterName string) ([]NodePool, error)
- func (r *Repository) GetNodeStatistics(clusterName, nodeUUID string, usageTypes []vps.UsageType, ...) (vps.Usage, error)
- func (r *Repository) GetNodes(clusterName string) ([]Node, error)
- func (r *Repository) GetNodesByNodePoolUUID(clusterName, nodePoolUUID string) ([]Node, error)
- func (r *Repository) GetRelease(version string) (Release, error)
- func (r *Repository) GetReleases() ([]Release, error)
- func (r *Repository) GetTaints(clusterName, nodePoolUUID string) ([]Taint, error)
- func (r *Repository) RebootNode(clusterName, nodeUUID string) error
- func (r *Repository) RemoveBlockStorageVolume(clusterName, name string) error
- func (r *Repository) RemoveCluster(clusterName string) error
- func (r *Repository) RemoveLoadBalancer(clusterName, name string) error
- func (r *Repository) RemoveNodePool(clusterName, nodePoolUUID string) error
- func (r *Repository) ResetCluster(clusterName, confirmation string) error
- func (r *Repository) SetLabels(clusterName, nodePoolUUID string, labels []Label) error
- func (r *Repository) SetTaints(clusterName, nodePoolUUID string, taints []Taint) error
- func (r *Repository) UpdateBlockStorageVolume(volume BlockStorage) error
- func (r *Repository) UpdateCluster(cluster Cluster) error
- func (r *Repository) UpdateLoadBalancer(clusterName, name string, config LoadBalancerConfig) error
- func (r *Repository) UpdateNodePool(nodePool NodePool) error
- func (r *Repository) UpgradeCluster(clusterName, version string) error
- type StatisticsPeriod
- type TLSMode
- type Taint
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockStorage ¶
type BlockStorage struct { // The unique identifier for the volume UUID string `json:"uuid"` // User configurable unique identifier (max 64 chars) Name string `json:"name"` // ClusterName is the name of the cluster the blockstorage belongs to ClusterName string `json:"clusterName"` // The volume's size in gibibytes SizeInGiB int `json:"sizeInGib"` // Type of storage Type BlockStorageType `json:"type"` // AvailabilityZone where this volume is located AvailabilityZone string `json:"availabilityZone"` // Status of the volume 'attached', 'attaching', 'available', 'creating', // 'deleting' or 'detaching' Status BlockStorageStatus `json:"status,omitempty"` // UUID of node this volume is attached to NodeUUID string `json:"nodeUuid"` // The serial of the disk. This is a unique identifier that is visible by the node it has been attached to. Serial string `json:"serial"` }
BlockStorage struct is a single block storage volume that can be used in a kubernetes cluster
type BlockStorageOrder ¶
type BlockStorageOrder struct { // user adjustable unique identifier for volume (max 64 chars), when none is given, the uuid will be used. Name string `json:"name"` // ClusterName name of the cluster the block storage will be available for ClusterName string `json:"-"` // amount of storage in gibibytes SizeInGiB int `json:"sizeInGib"` // type of storage Type BlockStorageType `json:"type"` // location of the volume AvailabilityZone string `json:"availabilityZone"` }
BlockStorageOrder struct can be used to order a new block storage volume
type BlockStorageStatus ¶
type BlockStorageStatus string
BlockStorageStatus is one of the following statuses 'attached', 'attaching', 'available', 'creating', 'deleting' or 'detaching'
const ( // BlockStorageStatusAttached is the status for a volume that currently is attached to a node BlockStorageStatusAttached BlockStorageStatus = "attached" // BlockStorageStatusAttaching is the status for a volume that is being attached to a node BlockStorageStatusAttaching BlockStorageStatus = "attaching" // BlockStorageStatusAvailable is the status for a volume that is available BlockStorageStatusAvailable BlockStorageStatus = "available" // BlockStorageStatusCreating is the status for a volume that is being created BlockStorageStatusCreating BlockStorageStatus = "creating" // BlockStorageStatusDeleting is the status for a volume that is being deleted BlockStorageStatusDeleting BlockStorageStatus = "deleting" // BlockStorageStatusDetaching is the status for a volume that is being detached from a node BlockStorageStatusDetaching BlockStorageStatus = "detaching" )
Definition of all of the possible block storage statuses
type BlockStorageType ¶
type BlockStorageType string
BlockStorageType is one of the following types 'hdd'
const ( // BlockStorageTypeHDD reflects a block storage volume of type HDD BlockStorageTypeHDD BlockStorageType = "hdd" )
Description of all the possible block storage types
type Cluster ¶
type Cluster struct { // The unique Cluster name Name string `json:"name"` // The name that can be set by customer Description string `json:"description"` // Version of kubernetes this cluster is running Version string `json:"version"` // URL to connect to with kubectl Endpoint string `json:"endpoint"` // Whether or not another process is already doing stuff with this cluster IsLocked bool `json:"isLocked"` // If the cluster is administratively blocked IsBlocked bool `json:"isBlocked"` }
Cluster struct for a Kubernetes cluster
type ClusterOrder ¶
type ClusterOrder struct { // The description of the cluster Description string `json:"description,omitempty"` }
ClusterOrder struct can be used to order a new cluster
type Event ¶ added in v6.24.0
type Event struct { Name string `json:"name"` Namespace string `json:"namespace"` Type string `json:"type"` Message string `json:"message"` Reason string `json:"reason"` Count int `json:"count"` CreationTimestamp int `json:"creationTimestamp"` FirstTimestamp int `json:"firstTimestamp"` LastTimestamp int `json:"lastTimestamp"` InvolvedObjectKind string `json:"involvedObjectKind"` InvolvedObjectName string `json:"involvedObjectName"` SourceComponent string `json:"sourceComponent"` }
Event A kubernetes cluster event
type IPSetup ¶
type IPSetup string
IPSetup is one of the following strings 'both', 'noipv6', 'ipv6to4', 'ipv4to6'
const ( // IPSetupBoth accept ipv4 and ipv6 and forward them to separate ipv4 and ipv6 addresses IPSetupBoth IPSetup = "both" // IPSetupNoIPv6 do not accept ipv6 traffic IPSetupNoIPv6 IPSetup = "noipv6" // IPSetupIPv6to4 forward ipv6 traffic to ipv4 IPSetupIPv6to4 IPSetup = "ipv6to4" // IPSetupIPv4to6 forward ipv4 traffic to ipv6 IPSetupIPv4to6 IPSetup = "ipv4to6" )
Definition of all of the possible ip setup options
type Label ¶ added in v6.21.0
type Label struct { Key string `json:"key"` Value string `json:"value"` Modifiable bool `json:"modifiable"` }
Label Struct for a labels on a NodePool
type LoadBalancer ¶
type LoadBalancer struct { // The unique identifier for the loadbalancer UUID string `json:"uuid"` // User configurable unique identifier (max 64 chars) Name string `json:"name"` // LoadBalancer status, either ‘active’, ‘inactive’, ‘creating’ Status LoadBalancerStatus `json:"status"` // HA-IP IPv4 address IPv4Address net.IP `json:"ipv4Address,omitempty"` // HA-IP IPv6 address IPv6Address net.IP `json:"ipv6Address,omitempty"` }
LoadBalancer struct for a kubernetes loadbalancer
type LoadBalancerConfig ¶
type LoadBalancerConfig struct { // HA-IP load balancing mode: 'roundrobin', 'cookie', 'source' LoadBalancingMode LoadBalancingMode `json:"loadBalancingMode,omitempty"` // Cookie name to pin sessions on when using cookie balancing mode StickyCookieName string `json:"stickyCookieName,omitempty"` // The interval in milliseconds at which health checks are performed. The interval may not be smaller than 2000ms. HealthCheckInterval int64 `json:"healthCheckInterval,omitempty"` // The path (URI) of the page to check HTTP status code on HTTPHealthCheckPath string `json:"httpHealthCheckPath,omitempty"` // The port to perform the HTTP check on HTTPHealthCheckPort int `json:"httpHealthCheckPort,omitempty"` // Whether to use SSL when performing the HTTP check HTTPHealthCheckSSL bool `json:"httpHealthCheckSsl"` // HA-IP IP setup: 'both', 'noipv6', 'ipv6to4', 'ipv4to6' IPSetup IPSetup `json:"ipSetup"` // The PTR record for the HA-IP PTRRecord string `json:"ptrRecord,omitempty"` // HA-IP TLS Mode: 'tls10_11_12', 'tls11_12', 'tls12' TLSMode TLSMode `json:"tlsMode"` // The IPs attached to this haip IPAddresses []net.IP `json:"ipAddresses,omitempty"` // Array with port configurations for this LoadBalancer PortConfigurations []PortConfiguration `json:"portConfiguration,omitempty"` }
LoadBalancerConfig is a representation of all the options that can be configured for a Load Balancer
type LoadBalancerState ¶ added in v6.24.0
type LoadBalancerState string
LoadBalancerState the state of the connection from the loadbalancer to the node
const ( // LoadBalancerStateUp the connection from the loadbalanacer to the node is up LoadBalancerStateUp LoadBalancerState = "up" // LoadBalancerStateDown the connection from the loadbalanacer to the node is down LoadBalancerStateDown LoadBalancerState = "down" )
type LoadBalancerStatus ¶
type LoadBalancerStatus string
LoadBalancerStatus status, either ‘active’, ‘inactive’, ‘creating’
const ( // LoadBalancerStatusActive means the loadbalancer is active LoadBalancerStatusActive LoadBalancerStatus = "active" // LoadBalancerStatusInactive means the load balancer is inactive LoadBalancerStatusInactive LoadBalancerStatus = "inactive" // LoadBalancerStatusCreating means the load balancer is being created LoadBalancerStatusCreating LoadBalancerStatus = "creating" )
Definition of all of the possible loadbalancer statuses
type LoadBalancerStatusReport ¶ added in v6.24.0
type LoadBalancerStatusReport struct { NodeUUID string `json:"nodeUuid"` NodeIPAddress net.IP `json:"nodeIpAddress"` Port int `json:"port"` IPVersion int `json:"ipVersion"` LoadBalancerName string `json:"loadBalancerName"` LoadBalancerIP net.IP `json:"loadBalancerIp"` State LoadBalancerState `json:"state"` LastChange rest.Time `json:"lastChange"` }
LoadBalancerStatusReport A status report for the laodbalancer
type LoadBalancingMode ¶
type LoadBalancingMode string
LoadBalancingMode is one of the following strings 'roundrobin', 'cookie', 'source'
const ( // LoadBalancingModeRoundRobin is the LoadBalancing mode roundrobin for a Haip, forward to next address everytime LoadBalancingModeRoundRobin LoadBalancingMode = "roundrobin" // LoadBalancingModeCookie is the LoadBalancing mode cookie for a Haip, forward to a fixed server, based on the cookie LoadBalancingModeCookie LoadBalancingMode = "cookie" // LoadBalancingModeSource is the LoadBalancing mode source for a Haip, choose a server to forward based on the source address LoadBalancingModeSource LoadBalancingMode = "source" )
Definition of all of the possible load balancing modes
type Node ¶
type Node struct { // The unique identifier for the node UUID string `json:"uuid"` // The unique identifier for the node pool this node belongs to NodePoolUUID string `json:"nodePoolUUID"` // The name of the cluster this node belongs to ClusterName string `json:"clusterName"` // The node's status Status NodeStatus `json:"status,omitempty"` // The node's IP addresses IPAddresses []NodeAddress `json:"ipAddresses"` }
Node struct is a single node in a kubernetes cluster node pool
type NodeAddress ¶
type NodeAddress struct { Address net.IP `json:"address"` Netmask net.IP `json:"subnetMask"` Type NodeAddressType `json:"type"` }
NodeAddress defines the structure of 1 single node address
type NodeAddressType ¶
type NodeAddressType string
NodeAddressType is one of the following strings 'external', 'internal'
const ( // NodeAddressTypeExternal is an external node address NodeAddressTypeExternal NodeAddressType = "external" // NodeAddressTypeInternal is an internal node address NodeAddressTypeInternal NodeAddressType = "internal" )
Definition of all of the possible node address types
type NodePool ¶
type NodePool struct { // The unique identifier for the node pool UUID string `json:"uuid"` // The name of the cluster the node pool belongs to ClusterName string `json:"clusterName"` // The name that can be set by customer Description string `json:"description"` // Amount of desired nodes in the node pool DesiredNodeCount int `json:"desiredNodeCount"` // Specification for nodes in this node pool NodeSpec string `json:"nodeSpec"` // Availability zone of the node pool AvailabilityZone string `json:"availabilityZone"` // Nodes in this node pool Nodes []Node `json:"nodes,omitempty"` }
NodePool struct for a kubernetes cluster node pool
type NodePoolOrder ¶
type NodePoolOrder struct { // The name of the cluster the node pool should be ordered for ClusterName string `json:"-"` // The description of the node pool Description string `json:"description,omitempty"` // Amount of desired nodes in the node pool DesiredNodeCount int `json:"desiredNodeCount"` // Specification for nodes in this node pool NodeSpec string `json:"nodeSpec"` // Availability zone of the node pool AvailabilityZone string `json:"availabilityZone"` }
NodePoolOrder struct can be used to order a new node pool to a cluster
type NodeStatus ¶
type NodeStatus string
NodeStatus is one of the following strings 'active', 'creating', 'deleting'
const ( // NodeStatusActive is the status for an active node ready for workload NodeStatusActive NodeStatus = "active" // NodeStatusCreating is the status for a node that is being provisioned NodeStatusCreating NodeStatus = "creating" // NodeStatusDeleting is the status for a node that is being shutdown for removal NodeStatusDeleting NodeStatus = "deleting" )
Definition of all of the possible node statuses
type PortConfiguration ¶
type PortConfiguration struct { // A name describing the port Name string `json:"name"` // The port at which traffic arrives on your HA-IP SourcePort int `json:"sourcePort"` // The port at which traffic arrives on your attached IP address(es) TargetPort int `json:"targetPort"` // The mode determining how traffic is processed and forwarded: 'tcp', 'http', 'https', 'proxy', 'http2_https' Mode PortConfigurationMode `json:"mode"` // The mode determining how traffic between our load balancers and your attached IP address(es) is encrypted: 'off', 'on', 'strict' EndpointSSLMode PortConfigurationEndpointSSLMode `json:"endpointSslMode"` }
PortConfiguration struct for a PortConfiguration
type PortConfigurationEndpointSSLMode ¶
type PortConfigurationEndpointSSLMode string
PortConfigurationEndpointSSLMode is one of the following values 'off', 'on', 'strict'
const ( // PortConfigurationEndpointSSLModeOff means the traffic to the backends is unencrypted PortConfigurationEndpointSSLModeOff PortConfigurationEndpointSSLMode = "off" // PortConfigurationEndpointSSLModeOn means the traffic to the backends is encrypted but not verified PortConfigurationEndpointSSLModeOn PortConfigurationEndpointSSLMode = "on" // PortConfigurationEndpointSSLModeStrict means the traffic to the backends is encrypted and verified PortConfigurationEndpointSSLModeStrict PortConfigurationEndpointSSLMode = "strict" )
Definition of all the possible port configuration endpoint SSL modes
type PortConfigurationMode ¶
type PortConfigurationMode string
PortConfigurationMode is one of the following strings 'tcp', 'http', 'https', 'proxy', 'http2_https'
const ( // PortConfigurationModeTCP plain TCP forward to your VPS PortConfigurationModeTCP PortConfigurationMode = "tcp" // PortConfigurationModeHTTP appends a X-Forwarded-For header to HTTP requests with the original remote IP PortConfigurationModeHTTP PortConfigurationMode = "http" // PortConfigurationModeHTTPS same as HTTP, with SSL Certificate offloading PortConfigurationModeHTTPS PortConfigurationMode = "https" // PortConfigurationModePROXY proxy protocol is also a way to retain the original remote IP, // but also works for non HTTP traffic (note: the receiving application has to support this) PortConfigurationModePROXY PortConfigurationMode = "proxy" // PortConfigurationModeHTTP2HTTPS same as HTTPS, with http/2 support PortConfigurationModeHTTP2HTTPS PortConfigurationMode = "http2_https" )
Definition of all of the possible port configuration modes
type Release ¶ added in v6.23.0
type Release struct { Version string `json:"version"` ReleaseDate rest.Date `json:"releaseDate"` MaintenanceModeDate rest.Date `json:"maintenanceModeDate"` EndOfLifeDate rest.Date `json:"endOfLifeDate"` }
Release is a Kubernetes release version
type Repository ¶
type Repository repository.RestRepository
Repository is the kubernetes repository this repository allows you to manage all Kubernetes services for your TransIP account
func (*Repository) AddBlockStorageVolume ¶
func (r *Repository) AddBlockStorageVolume(order BlockStorageOrder) error
AddBlockStorageVolume creates a block storage volume
func (*Repository) AddNodePool ¶
func (r *Repository) AddNodePool(nodePoolOrder NodePoolOrder) error
AddNodePool allows you to order a new node pool to a cluster
func (*Repository) CreateCluster ¶
func (r *Repository) CreateCluster(clusterOrder ClusterOrder) error
CreateCluster allows you to order a new cluster
func (*Repository) CreateLoadBalancer ¶
func (r *Repository) CreateLoadBalancer(clusterName, name string) error
CreateLoadBalancer creates a new load balancer
func (*Repository) GetBlockStorageStatistics ¶ added in v6.24.0
func (r *Repository) GetBlockStorageStatistics(clusterName, name string, period vps.UsagePeriod) ([]vps.UsageDataDisk, error)
GetBlockStorageStatistics get the disk statistics for a block-storage
func (*Repository) GetBlockStorageVolume ¶
func (r *Repository) GetBlockStorageVolume(clusterName, name string) (BlockStorage, error)
GetBlockStorageVolume returns a specific block storage volume
func (*Repository) GetBlockStorageVolumes ¶
func (r *Repository) GetBlockStorageVolumes(clusterName string) ([]BlockStorage, error)
GetBlockStorageVolumes returns all block storage volumes
func (*Repository) GetClusterByName ¶
func (r *Repository) GetClusterByName(clusterName string) (Cluster, error)
GetClusterByName returns information on a specific cluster by name
func (*Repository) GetClusters ¶
func (r *Repository) GetClusters() ([]Cluster, error)
GetClusters returns a list of all your Clusters
func (*Repository) GetCompatibleRelease ¶ added in v6.23.0
func (r *Repository) GetCompatibleRelease(clusterName, version string) (Release, error)
GetCompatibleRelease returns the release a cluster can upgrade to
func (*Repository) GetCompatibleReleases ¶ added in v6.23.0
func (r *Repository) GetCompatibleReleases(clusterName string) ([]Release, error)
GetCompatibleReleases returns the releases a cluster can upgrade to
func (*Repository) GetEventByName ¶ added in v6.24.0
func (r *Repository) GetEventByName(clusterName, eventName string) (Event, error)
GetEventByName returns an event in a cluster
func (*Repository) GetEvents ¶ added in v6.24.0
func (r *Repository) GetEvents(clusterName string) ([]Event, error)
GetEvents returns the events in a cluster
func (*Repository) GetEventsByNamespace ¶ added in v6.24.0
func (r *Repository) GetEventsByNamespace(clusterName, namespace string) ([]Event, error)
GetEventsByNamespace returns the events in a cluster filtered by namespace
func (*Repository) GetKubeConfig ¶
func (r *Repository) GetKubeConfig(clusterName string) (string, error)
GetKubeConfig returns the Config YAML with admin credentials for given cluster
func (*Repository) GetLabels ¶ added in v6.21.0
func (r *Repository) GetLabels(clusterName, nodePoolUUID string) ([]Label, error)
GetLabels will get the labels on a NodePool
func (*Repository) GetLoadBalancer ¶
func (r *Repository) GetLoadBalancer(clusterName, name string) (LoadBalancer, error)
GetLoadBalancer returns a load balancer
func (*Repository) GetLoadBalancerStatusReports ¶ added in v6.24.0
func (r *Repository) GetLoadBalancerStatusReports(clusterName, name string) ([]LoadBalancerStatusReport, error)
GetLoadBalancerStatusReports will get the status reports for the loadbalancer
func (*Repository) GetLoadBalancerStatusReportsForNode ¶ added in v6.24.0
func (r *Repository) GetLoadBalancerStatusReportsForNode(clusterName, name, nodeUUID string) ([]LoadBalancerStatusReport, error)
GetLoadBalancerStatusReportsForNode will get the status reports for the loadbalancer pointing towards a specific node
func (*Repository) GetLoadBalancers ¶
func (r *Repository) GetLoadBalancers(clusterName string) ([]LoadBalancer, error)
GetLoadBalancers returns all load balancers
func (*Repository) GetNode ¶
func (r *Repository) GetNode(clusterName, nodeUUID string) (Node, error)
GetNode return a node
func (*Repository) GetNodePool ¶
func (r *Repository) GetNodePool(clusterName, nodePoolUUID string) (NodePool, error)
GetNodePool returns the NodePool for given nodePoolUUID
func (*Repository) GetNodePools ¶
func (r *Repository) GetNodePools(clusterName string) ([]NodePool, error)
GetNodePools returns all node pools
func (*Repository) GetNodeStatistics ¶ added in v6.24.0
func (r *Repository) GetNodeStatistics(clusterName, nodeUUID string, usageTypes []vps.UsageType, period vps.UsagePeriod) (vps.Usage, error)
GetNodeStatistics get the vps statistics of a node
func (*Repository) GetNodes ¶
func (r *Repository) GetNodes(clusterName string) ([]Node, error)
GetNodes returns all nodes
func (*Repository) GetNodesByNodePoolUUID ¶
func (r *Repository) GetNodesByNodePoolUUID(clusterName, nodePoolUUID string) ([]Node, error)
GetNodesByNodePoolUUID returns all nodes for a node pool
func (*Repository) GetRelease ¶ added in v6.23.0
func (r *Repository) GetRelease(version string) (Release, error)
GetRelease returns an available releases on the platform
func (*Repository) GetReleases ¶ added in v6.23.0
func (r *Repository) GetReleases() ([]Release, error)
GetReleases returns the available releases on the platform
func (*Repository) GetTaints ¶ added in v6.21.0
func (r *Repository) GetTaints(clusterName, nodePoolUUID string) ([]Taint, error)
GetTaints will get all the taints on a NodePool
func (*Repository) RebootNode ¶ added in v6.24.0
func (r *Repository) RebootNode(clusterName, nodeUUID string) error
RebootNode reboot a node
func (*Repository) RemoveBlockStorageVolume ¶
func (r *Repository) RemoveBlockStorageVolume(clusterName, name string) error
RemoveBlockStorageVolume will remove a block storage volume
func (*Repository) RemoveCluster ¶
func (r *Repository) RemoveCluster(clusterName string) error
RemoveCluster will cancel the cluster, thus deleting it
func (*Repository) RemoveLoadBalancer ¶
func (r *Repository) RemoveLoadBalancer(clusterName, name string) error
RemoveLoadBalancer will remove a load balancer
func (*Repository) RemoveNodePool ¶
func (r *Repository) RemoveNodePool(clusterName, nodePoolUUID string) error
RemoveNodePool will cancel the node pool, thus deleting it
func (*Repository) ResetCluster ¶ added in v6.23.0
func (r *Repository) ResetCluster(clusterName, confirmation string) error
ResetCluster performs a reset of the Kubernetes, bringing it back to the initial state it got ordered in
func (*Repository) SetLabels ¶ added in v6.21.0
func (r *Repository) SetLabels(clusterName, nodePoolUUID string, labels []Label) error
SetLabels will set the labels on a NodePool
func (*Repository) SetTaints ¶ added in v6.21.0
func (r *Repository) SetTaints(clusterName, nodePoolUUID string, taints []Taint) error
SetTaints will set the taints on a NodePool
func (*Repository) UpdateBlockStorageVolume ¶
func (r *Repository) UpdateBlockStorageVolume(volume BlockStorage) error
UpdateBlockStorageVolume allows you to update the name and attached node for a block storage volumes
func (*Repository) UpdateCluster ¶
func (r *Repository) UpdateCluster(cluster Cluster) error
UpdateCluster allows you to updated the description of a cluster
func (*Repository) UpdateLoadBalancer ¶
func (r *Repository) UpdateLoadBalancer(clusterName, name string, config LoadBalancerConfig) error
UpdateLoadBalancer updates the entire state of the load balancer
func (*Repository) UpdateNodePool ¶
func (r *Repository) UpdateNodePool(nodePool NodePool) error
UpdateNodePool allows you to update the description and desired node count of a node pool
func (*Repository) UpgradeCluster ¶ added in v6.23.0
func (r *Repository) UpgradeCluster(clusterName, version string) error
UpgradeCluster performs an upgrade of the Kubernetes version of your cluster
type StatisticsPeriod ¶ added in v6.24.0
type StatisticsPeriod struct { // TimeStart contains a unix timestamp for the start of the period TimeStart int64 `json:"dateTimeStart"` // TimeEnd contains a unix timestamp for the end of the period TimeEnd int64 `json:"dateTimeEnd"` }
StatisticsPeriod is struct that can be used to query usage statistics for a certain period
type TLSMode ¶
type TLSMode string
TLSMode is one of the following strings 'tls10_11_12', 'tls11_12', 'tls12'
const ( // TLSModeMinTLS10 only allow incoming tls traffic with versions 1.0, 1.1 and 1.2 TLSModeMinTLS10 TLSMode = "tls10_11_12" // TLSModeMinTLS11 only allow incoming tls traffic with version 1.1 or 1.2 TLSModeMinTLS11 TLSMode = "tls11_12" // TLSModeMinTLS12 only allow incoming traffic with tls version 1.2 TLSModeMinTLS12 TLSMode = "tls12" )
Definition of all of the possible tls mode options