resources

package
v0.1.0-alpha.29 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2021 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeleteCluster

func DeleteCluster(name string, clientset simple.Clientset) error

func DeleteInstanceGroup

func DeleteInstanceGroup(clusterName, name string, clientset simple.Clientset) error

Types

type Cluster

type Cluster struct {
	// The cluster name
	Name string
	// The cluster admin ssh key
	AdminSshKey string
	kops.ClusterSpec
}

Cluster defines the configuration for a cluster

func CreateCluster

func CreateCluster(name, adminSshKey string, spec kops.ClusterSpec, clientset simple.Clientset) (*Cluster, error)

func GetCluster

func GetCluster(name string, clientset simple.Clientset) (*Cluster, error)

func UpdateCluster

func UpdateCluster(name, adminSshKey string, spec kops.ClusterSpec, clientset simple.Clientset) (*Cluster, error)

type ClusterUpdater

type ClusterUpdater struct {
	// The target cluster name
	ClusterName string
	// MasterInterval is the amount of time to wait after stopping a master instance
	MasterInterval *metav1.Duration
	// NodeInterval is the amount of time to wait after stopping a non-master instance
	NodeInterval *metav1.Duration
	// BastionInterval is the amount of time to wait after stopping a bastion instance
	BastionInterval *metav1.Duration
	// FailOnDrainError will fail when a drain error occurs
	FailOnDrainError bool
	// FailOnValidate will fail when a validation error occurs
	FailOnValidate bool
	// PostDrainDelay is the duration we wait after draining each node
	PostDrainDelay *metav1.Duration
	// ValidationTimeout is the maximum time to wait for the cluster to validate, once we start validation
	ValidationTimeout *metav1.Duration
	// ValidateCount is the amount of time that a cluster needs to be validated after single node update
	ValidateCount *int
}

ClusterUpdater takes care of rolling update the cluster when needed

func (*ClusterUpdater) Apply

func (u *ClusterUpdater) Apply(clientset simple.Clientset) error

type InstanceGroup

type InstanceGroup struct {
	// The cluster name the instance group belongs to
	ClusterName string
	// Instance group name
	Name string
	kops.InstanceGroupSpec
}

InstanceGroup represents a group of instances (either nodes or masters) with the same configuration

func CreateInstanceGroup

func CreateInstanceGroup(clusterName, name string, spec kops.InstanceGroupSpec, clientset simple.Clientset) (*InstanceGroup, error)

func GetInstanceGroup

func GetInstanceGroup(clusterName, name string, clientset simple.Clientset) (*InstanceGroup, error)

func UpdateInstanceGroup

func UpdateInstanceGroup(clusterName, name string, spec kops.InstanceGroupSpec, clientset simple.Clientset) (*InstanceGroup, error)

Jump to

Keyboard shortcuts

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