Documentation ¶
Overview ¶
Package config implements the current apiVersion of the `kind` Config along with some common abstractions
+k8s:deepcopy-gen=package +k8s:conversion-gen=sigs.k8s.io/kind/pkg/cluster/config +k8s:defaulter-gen=TypeMeta
Index ¶
Constants ¶
const GroupName = "kind.sigs.k8s.io"
GroupName is the group name used in this package.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} // SchemeBuilder is a type to collect functions that add data to an API // object through a scheme. SchemeBuilder runtime.SchemeBuilder // AddToScheme applies all the stored functions in the localSchemeBuilder // to the scheme. AddToScheme = localSchemeBuilder.AddToScheme )
Functions ¶
func RegisterDefaults ¶ added in v0.1.0
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func SetDefaults_Config ¶ added in v0.1.0
func SetDefaults_Config(obj *Config)
SetDefaults_Config sets uninitialized fields to their default value.
func SetDefaults_Node ¶ added in v0.1.0
func SetDefaults_Node(obj *Node)
SetDefaults_Node sets uninitialized fields to their default value.
func SetObjectDefaults_Config ¶ added in v0.1.0
func SetObjectDefaults_Config(in *Config)
Types ¶
type Config ¶
type Config struct { // TypeMeta representing the type of the object and its API schema version. metav1.TypeMeta // Nodes constains the list of nodes defined in the `kind` Config Nodes []Node `json:"nodes,"` }
Config groups all nodes in the `kind` Config.
func (*Config) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.
func (*Config) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Config) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Node ¶ added in v0.1.0
type Node struct { // Replicas is the number of desired node replicas. // Defaults to 1 Replicas *int32 // Role defines the role of the nodw in the in the Kubernetes cluster managed by `kind` // Defaults to "control-plane" Role NodeRole // Image is the node image to use when running the cluster // TODO(bentheelder): split this into image and tag? Image string // KubeadmConfigPatches are applied to the generated kubeadm config as // strategic merge patches to `kustomize build` internally // https://github.com/kubernetes/community/blob/master/contributors/devel/strategic-merge-patch.md // This should be an inline yaml blob-string KubeadmConfigPatches []string // KubeadmConfigPatchesJSON6902 are applied to the generated kubeadm config // as patchesJson6902 to `kustomize build` KubeadmConfigPatchesJSON6902 []kustomize.PatchJSON6902 }
Node contains settings for a node in the `kind` Config. A node in kind config represent a container that will be provisioned with all the components required for the assigned role in the Kubernetes cluster. If replicas is set, the desired node replica number will be generated.
func (*Node) DeepCopy ¶ added in v0.1.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Node.
func (*Node) DeepCopyInto ¶ added in v0.1.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Node) IsControlPlane ¶ added in v0.1.0
IsControlPlane returns true if the node hosts a control plane instance NB. in single node clusters, control-plane nodes act also as a worker nodes
func (*Node) IsExternalEtcd ¶ added in v0.1.0
IsExternalEtcd returns true if the node hosts an external etcd member
func (*Node) IsExternalLoadBalancer ¶ added in v0.1.0
IsExternalLoadBalancer returns true if the node hosts an external load balancer
type NodeRole ¶ added in v0.1.0
type NodeRole string
NodeRole defines possible role for nodes in a Kubernetes cluster managed by `kind`
const ( // ControlPlaneRole identifies a node that hosts a Kubernetes control-plane // NB. in single node clusters, control-plane nodes act also as a worker nodes ControlPlaneRole NodeRole = "control-plane" // WorkerRole identifies a node that hosts a Kubernetes worker WorkerRole NodeRole = "worker" // ExternalEtcdRole identifies a node that hosts an external-etcd instance. // WARNING: this node type is not yet implemented! // Please note that `kind` nodes hosting external etcd are not kubernetes nodes ExternalEtcdRole NodeRole = "external-etcd" // ExternalLoadBalancerRole identifies a node that hosts an external load balancer for API server // in HA configurations. // WARNING: this node type is not yet implemented! // Please note that `kind` nodes hosting external load balancer are not kubernetes nodes ExternalLoadBalancerRole NodeRole = "external-load-balancer" )
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package defaults contains cross-api-version configuration defaults
|
Package defaults contains cross-api-version configuration defaults |
Package encoding implements utilities for decoding from yaml the `kind` Config
|
Package encoding implements utilities for decoding from yaml the `kind` Config |
Package v1alpha1 implements the v1alpha1 apiVersion of the `kind` Config +k8s:deepcopy-gen=package +k8s:conversion-gen=sigs.k8s.io/kind/pkg/cluster/config +k8s:defaulter-gen=TypeMeta
|
Package v1alpha1 implements the v1alpha1 apiVersion of the `kind` Config +k8s:deepcopy-gen=package +k8s:conversion-gen=sigs.k8s.io/kind/pkg/cluster/config +k8s:defaulter-gen=TypeMeta |
Package v1alpha2 implements the v1alpha2 apiVersion of the `kind` Config that introduces multi node support +k8s:deepcopy-gen=package +k8s:conversion-gen=sigs.k8s.io/kind/pkg/cluster/config +k8s:defaulter-gen=TypeMeta
|
Package v1alpha2 implements the v1alpha2 apiVersion of the `kind` Config that introduces multi node support +k8s:deepcopy-gen=package +k8s:conversion-gen=sigs.k8s.io/kind/pkg/cluster/config +k8s:defaulter-gen=TypeMeta |