Documentation ¶
Overview ¶
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
Index ¶
- Constants
- Variables
- func Convert_config_Config_To_v1alpha1_Config(in *config.Config, out *Config, s conversion.Scope) error
- func Convert_v1alpha1_Config_To_config_Config(in *Config, out *config.Config, s conversion.Scope) error
- func RegisterConversions(s *runtime.Scheme) error
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetDefaults_Config(obj *Config)
- func SetObjectDefaults_Config(in *Config)
- type Config
- type ControlPlane
- type LifecycleHook
- type NodeLifecycle
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: "v1alpha1"} // 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 Convert_config_Config_To_v1alpha1_Config ¶ added in v0.1.0
func Convert_v1alpha1_Config_To_config_Config ¶ added in v0.1.0
func RegisterConversions ¶ added in v0.1.0
RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.
func RegisterDefaults ¶
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 ¶
func SetDefaults_Config(obj *Config)
SetDefaults_Config sets uninitialized fields to their default value.
func SetObjectDefaults_Config ¶
func SetObjectDefaults_Config(in *Config)
Types ¶
type Config ¶
type Config struct { metav1.TypeMeta // Image is the node image to use when running the cluster // TODO(bentheelder): split this into image and tag? Image string `json:"image,omitempty"` // 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 `json:"kubeadmConfigPatches,omitempty"` // KubeadmConfigPatchesJSON6902 are applied to the generated kubeadm config // as patchesJson6902 to `kustomize build` KubeadmConfigPatchesJSON6902 []kustomize.PatchJSON6902 `json:"kubeadmConfigPatchesJson6902,omitempty"` // NOTE: this field is no longer supported (!) // ControlPlane holds config for the control plane node ControlPlane *ControlPlane `json:"ControlPlane,omitempty"` }
Config contains cluster creation config This is the current internal config type used by cluster
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 ControlPlane ¶
type ControlPlane struct { // NodeLifecycle contains LifecycleHooks for phases of node provisioning NodeLifecycle *NodeLifecycle `json:"nodeLifecycle,omitempty"` }
ControlPlane holds configurations specific to the control plane nodes (currently the only node).
func (*ControlPlane) DeepCopy ¶
func (in *ControlPlane) DeepCopy() *ControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlane.
func (*ControlPlane) DeepCopyInto ¶
func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleHook ¶
type LifecycleHook struct { // Name is used to improve logging (optional) Name string `json:"name,omitempty"` // Command is the command to run on the node Command []string `json:"command"` // MustSucceed - if true then the hook / command failing will cause // cluster creation to fail, otherwise the error will just be logged and // the boot process will continue MustSucceed bool `json:"mustSucceed,omitempty"` }
LifecycleHook represents a command to run at points in the node lifecycle
func (*LifecycleHook) DeepCopy ¶
func (in *LifecycleHook) DeepCopy() *LifecycleHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHook.
func (*LifecycleHook) DeepCopyInto ¶
func (in *LifecycleHook) DeepCopyInto(out *LifecycleHook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeLifecycle ¶
type NodeLifecycle struct { // NOTE: this field is no longer supported (!) // PreBoot hooks run before starting systemd PreBoot []LifecycleHook `json:"preBoot,omitempty"` // NOTE: this field is no longer supported (!) // PreKubeadm hooks run immediately before `kubeadm` PreKubeadm []LifecycleHook `json:"preKubeadm,omitempty"` // NOTE: this field is no longer supported (!) // PostKubeadm hooks run immediately after `kubeadm` PostKubeadm []LifecycleHook `json:"postKubeadm,omitempty"` // NOTE: this field is no longer supported (!) // PostSetup hooks run after any standard `kind` setup on the node PostSetup []LifecycleHook `json:"postSetup,omitempty"` }
NodeLifecycle contains LifecycleHooks for phases of node provisioning Within each phase these hooks run in the order specified
func (*NodeLifecycle) DeepCopy ¶
func (in *NodeLifecycle) DeepCopy() *NodeLifecycle
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeLifecycle.
func (*NodeLifecycle) DeepCopyInto ¶
func (in *NodeLifecycle) DeepCopyInto(out *NodeLifecycle)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.