platform

package
v0.6.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	// NetworkMTU is the default host network MTU.
	NetworkMTU = 1500

	// ConntrackMaxPerCore is the default conntrack table size per core inherited from upstream kube-proxy.
	ConntrackMaxPerCore = 32768

	// KubernetesChartName is the expected name for the Kubernetes Helm chart.
	KubernetesChartName = "kubernetes"

	// KubeletChartName is the expected name for the Kubelet Helm chart.
	KubeletChartName = "kubelet"
)

Variables

This section is empty.

Functions

func AppendVersionTag added in v0.2.0

func AppendVersionTag(tags *map[string]string)

AppendVersionTag appends the lokoctl-version tag to a given tags map.

func CommonControlPlaneCharts added in v0.4.0

func CommonControlPlaneCharts(includeKubeletChart bool) []helm.LokomotiveChart

CommonControlPlaneCharts returns a list of control plane Helm charts to be deployed for all platforms.

func ControlPlaneChart added in v0.4.0

func ControlPlaneChart(name string) (*chart.Chart, error)

ControlPlaneChart is a convenience function which returns a pointer to a chart.Chart representing the control plane element named name.

func WorkerPoolNamesUnique added in v0.6.0

func WorkerPoolNamesUnique(pools []WorkerPool) hcl.Diagnostics

WorkerPoolNamesUnique takes a slice of worker pools and checks if they all have unique names. If not, error diagnostic is returned.

Types

type Meta added in v0.2.0

type Meta struct {
	AssetDir           string
	ExpectedNodes      int
	Managed            bool
	ControlplaneCharts []helm.LokomotiveChart
}

Meta is a generic information format about the platform.

type Platform

type Platform interface {
	LoadConfig(*hcl.Body, *hcl.EvalContext) hcl.Diagnostics
	Apply(*terraform.Executor) error
	Destroy(*terraform.Executor) error
	Initialize(*terraform.Executor) error
	Meta() Meta
}

Platform describes single environment, where cluster can be installed

type PlatformWithPostApplyHook added in v0.4.0

type PlatformWithPostApplyHook interface {
	PostApplyHook(kubeconfig []byte) error
}

PlatformWithPostApplyHook runs code after Terraform finishes applying. This allows running sanity checks on the newly created cluster. Implementing this interface is optional for platforms.

type WorkerPool added in v0.6.0

type WorkerPool interface {
	Name() string
}

WorkerPool describes common functionality between worker pools implementations.

Directories

Path Synopsis
Package aks is a Platform implementation for creating a Kubernetes cluster using Azure AKS.
Package aks is a Platform implementation for creating a Kubernetes cluster using Azure AKS.
Package tinkerbell provides Platform implementation using Tinkerbell provisioning system.
Package tinkerbell provides Platform implementation using Tinkerbell provisioning system.

Jump to

Keyboard shortcuts

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