Documentation ¶
Index ¶
Constants ¶
View Source
const ( Kind = "Config" DefaultClusterName = "kink" )
Variables ¶
View Source
var (
APIVersions = []string{"kink.meln5674.github.com/v0"}
)
Functions ¶
This section is empty.
Types ¶
type Bool ¶ added in v0.2.0
type Bool bool
func (*Bool) UnmarshalJSON ¶ added in v0.2.0
An Int is a int that unmarshals from a JSON string
type Config ¶
type Config struct { Helm helm.HelmFlags // Kubectl configures the `kubectl` commands used to interact with the external cluster Kubectl kubectl.KubectlFlags // Kubernetes configures the connection to the external cluster Kubernetes kubectl.KubeFlags // Docker configures the `docker` commands used to move images from a local daemon into the internal cluster Docker docker.DockerFlags // Chart configures the Helm Chart used to deploy the cluster Chart helm.ChartFlags // Release configures the Helm Release of the Chart that is used to deploy the cluster Release helm.ClusterReleaseFlags }
Config contains all of the necessary configuration to run the KinK CLI
type Int ¶ added in v0.2.0
type Int int
func (*Int) UnmarshalJSON ¶ added in v0.2.0
An Int is a int that unmarshals from a JSON string
type LoadBalancerIngress ¶ added in v0.2.0
type LoadBalancerIngress struct {
LoadBalancerIngressInner
}
func (*LoadBalancerIngress) UnmarshalJSON ¶ added in v0.2.0
func (l *LoadBalancerIngress) UnmarshalJSON(bytes []byte) (err error)
UnmarshalJSON implements json.Unmarshaler
type LoadBalancerIngressClassMapping ¶ added in v0.2.0
type LoadBalancerIngressClassMapping struct { ClassName string `json:"className"` Annotations map[string]string `json:"annotations"` NodePort *LoadBalancerIngressNodePortClassMapping `json:"nodePort,omitempty"` HostPort *LoadBalancerIngressHostPortClassMapping `json:"hostPort,omitempty"` }
func (*LoadBalancerIngressClassMapping) Port ¶ added in v0.2.0
func (l *LoadBalancerIngressClassMapping) Port() (port string, isHttps bool)
func (*LoadBalancerIngressClassMapping) Ports ¶ added in v0.2.0
func (l *LoadBalancerIngressClassMapping) Ports() (*string, *string)
type LoadBalancerIngressHostPortClassMapping ¶ added in v0.2.0
type LoadBalancerIngressInner ¶ added in v0.2.0
type LoadBalancerIngressInner struct { Enabled bool `json:"enabled"` HostPortTargetFullname string `json:"hostPortTargetFullname"` ClassMappings map[string]LoadBalancerIngressClassMapping `json:"classMappings"` }
type LoadBalancerIngressNodePortClassMapping ¶ added in v0.2.0
type RawConfig ¶ added in v0.2.0
type RawConfig struct { metav1.TypeMeta // Helm configures the `helm` commands used to manage the internal cluster Helm helm.HelmFlags `json:"helm"` // Kubectl configures the `kubectl` commands used to interact with the external cluster Kubectl kubectl.KubectlFlags `json:"kubectl"` // Kubernetes configures the connection to the external cluster Kubernetes kubectl.RawKubeFlags `json:"kubernetes"` // Docker configures the `docker` commands used to move images from a local daemon into the internal cluster Docker docker.DockerFlags `json:"docker"` // Chart configures the Helm Chart used to deploy the cluster Chart helm.ChartFlags `json:"chart"` // Release configures the Helm Release of the Chart that is used to deploy the cluster Release helm.ClusterReleaseFlags `json:"release"` }
RawConfig is the configuration structure as provided by the user
func (*RawConfig) Format ¶ added in v0.2.0
Config is the formatted configuration as usable by the module
func (*RawConfig) LoadFromFile ¶ added in v0.2.0
type ReleaseConfig ¶ added in v0.2.0
type ReleaseConfig struct { Fullname string `json:"fullname"` Labels StringMap `json:"labels"` ControlplaneFullname string `json:"controlplane.fullname"` ControlplanePort Int `json:"controlplane.port"` ControlplaneHostname string `json:"controlplane.hostname"` ControlplaneIsNodePort Bool `json:"controlplane.isNodePort"` ControlplaneLabels StringMap `json:"controlplane.labels"` ControlplaneSelectorLabels StringMap `json:"controlplane.selectorLabels"` SelectorLabels StringMap `json:"selectorLabels"` WorkerFullname string `json:"worker.fullname"` WorkerLabels StringMap `json:"worker.labels"` WorkerSelectorLabels StringMap `json:"worker.selectorLabels"` LoadBalancerFullname string `json:"load-balancer.fullname"` LoadBalancerLabels StringMap `json:"load-balancer.labels"` LoadBalancerSelectorLabels StringMap `json:"load-balancer.selectorLabels"` LoadBalancerServiceAnnotations StringMap `json:"load-balancer.service.annotations"` LoadBalancerIngress LoadBalancerIngress `json:"load-balancer.ingress"` LBManagerFullname string `json:"lb-manager.fullname"` RKE2Enabled Bool `json:"rke2.enabled"` }
ReleaseConfig are the values kept in the helm ConfigMap
func (*ReleaseConfig) LoadFromConfigMap ¶ added in v0.2.0
func (r *ReleaseConfig) LoadFromConfigMap(cm *corev1.ConfigMap) (ok bool, err error)
func (*ReleaseConfig) LoadFromMap ¶ added in v0.2.0
func (r *ReleaseConfig) LoadFromMap(data map[string]interface{}) (err error)
func (*ReleaseConfig) LoadFromMount ¶ added in v0.2.0
func (r *ReleaseConfig) LoadFromMount(mount string) error
type StringMap ¶ added in v0.2.0
A StringMap is a map of strings to strings, but unmarshals from JSON by parsing a string, then re-parsing that string as JSON
func (*StringMap) UnmarshalJSON ¶ added in v0.2.0
UnmarshalJSON implements json.Unmarshaler
Click to show internal directories.
Click to hide internal directories.