Back to / pkg / cluster

Package cluster

Latest Go to latest
Published: May 1, 2020 | License: Apache-2.0 | Module:


Package cluster implements kind kubernetes-in-docker cluster management


Package Files


const DefaultName = constants.DefaultClusterName

DefaultName is the default cluster name

type CreateOption

type CreateOption interface {
	// contains filtered or unexported methods

CreateOption is a Provider.Create option

func CreateWithConfigFile

func CreateWithConfigFile(path string) CreateOption

CreateWithConfigFile configures the config file path to use

func CreateWithDisplaySalutation

func CreateWithDisplaySalutation(displaySalutation bool) CreateOption

CreateWithDisplaySalutation enables display a salutation at the end of create cluster if displaySalutation is true

func CreateWithDisplayUsage

func CreateWithDisplayUsage(displayUsage bool) CreateOption

CreateWithDisplayUsage enables displaying usage if displayUsage is true

func CreateWithKubeconfigPath

func CreateWithKubeconfigPath(explicitPath string) CreateOption

CreateWithKubeconfigPath sets the explicit --kubeconfig path

func CreateWithNodeImage

func CreateWithNodeImage(nodeImage string) CreateOption

CreateWithNodeImage overrides the image on all nodes in config as an easy way to change the Kubernetes version

func CreateWithRawConfig

func CreateWithRawConfig(raw []byte) CreateOption

CreateWithRawConfig configures the config to use from raw (yaml) bytes

func CreateWithRetain

func CreateWithRetain(retain bool) CreateOption

CreateWithRetain disables deletion of nodes and any other cleanup that would normally occur after a failure to create This is mainly used for debugging purposes

func CreateWithStopBeforeSettingUpKubernetes

func CreateWithStopBeforeSettingUpKubernetes(stopBeforeSettingUpKubernetes bool) CreateOption

CreateWithStopBeforeSettingUpKubernetes enables skipping setting up kubernetes (kubeadm init etc.) after creating node containers This generally shouldn't be used and is only lightly supported, but allows provisioning node containers for experimentation

func CreateWithV1Alpha3Config

func CreateWithV1Alpha3Config(config *v1alpha3.Cluster) CreateOption

CreateWithV1Alpha3Config configures the cluster with a v1alpha3 config

func CreateWithV1Alpha4Config

func CreateWithV1Alpha4Config(config *v1alpha4.Cluster) CreateOption

CreateWithV1Alpha4Config configures the cluster with a v1alpha4 config

func CreateWithWaitForReady

func CreateWithWaitForReady(waitTime time.Duration) CreateOption

CreateWithWaitForReady configures a maximum wait time for the control plane node(s) to be ready. By default no waiting is performed

type Provider

type Provider struct {
	// contains filtered or unexported fields

Provider is used to perform cluster operations

func NewProvider

func NewProvider(options ...ProviderOption) *Provider

NewProvider returns a new provider based on the supplied options

func (*Provider) CollectLogs

func (p *Provider) CollectLogs(name, dir string) error

CollectLogs will populate dir with cluster logs and other debug files

func (*Provider) Create

func (p *Provider) Create(name string, options ...CreateOption) error

Create provisions and starts a kubernetes-in-docker cluster

func (*Provider) Delete

func (p *Provider) Delete(name, explicitKubeconfigPath string) error

Delete tears down a kubernetes-in-docker cluster

func (*Provider) ExportKubeConfig

func (p *Provider) ExportKubeConfig(name string, explicitPath string) error

ExportKubeConfig exports the KUBECONFIG for the cluster, merging it into the selected file, following the rules from where explicitPath is the --kubeconfig value.

func (*Provider) KubeConfig

func (p *Provider) KubeConfig(name string, internal bool) (string, error)

KubeConfig returns the KUBECONFIG for the cluster If internal is true, this will contain the internal IP etc. If internal is false, this will contain the host IP etc.

func (*Provider) List

func (p *Provider) List() ([]string, error)

List returns a list of clusters for which nodes exist

func (*Provider) ListInternalNodes

func (p *Provider) ListInternalNodes(name string) ([]nodes.Node, error)

ListInternalNodes returns the list of container IDs for the "nodes" in the cluster that are not external

func (*Provider) ListNodes

func (p *Provider) ListNodes(name string) ([]nodes.Node, error)

ListNodes returns the list of container IDs for the "nodes" in the cluster

type ProviderOption

type ProviderOption interface {
	// contains filtered or unexported methods

ProviderOption is an option for configuring a provider

func ProviderWithDocker

func ProviderWithDocker() ProviderOption

ProviderWithDocker configures the provider to use docker runtime

func ProviderWithLogger

func ProviderWithLogger(logger log.Logger) ProviderOption

ProviderWithLogger configures the provider to use Logger logger

func ProviderWithPodman

func ProviderWithPodman() ProviderOption

ProviderWithPodman configures the provider to use podman runtime

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier