Documentation ¶
Index ¶
- Constants
- func NewMutator(ensurer Ensurer, unitSerializer controlplane.UnitSerializer, ...) extensionswebhook.Mutator
- type Ensurer
- type EnsurerContext
- type NoopEnsurer
- func (e *NoopEnsurer) EnsureAdditionalFiles(ctx context.Context, ectx EnsurerContext, new, old *[]extensionsv1alpha1.File) error
- func (e *NoopEnsurer) EnsureAdditionalUnits(ctx context.Context, ectx EnsurerContext, new, old *[]extensionsv1alpha1.Unit) error
- func (e *NoopEnsurer) EnsureETCD(ctx context.Context, ectx EnsurerContext, new, old *druidv1alpha1.Etcd) error
- func (e *NoopEnsurer) EnsureKubeAPIServerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
- func (e *NoopEnsurer) EnsureKubeAPIServerService(ctx context.Context, ectx EnsurerContext, new, old *corev1.Service) error
- func (e *NoopEnsurer) EnsureKubeControllerManagerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
- func (e *NoopEnsurer) EnsureKubeSchedulerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
- func (e *NoopEnsurer) EnsureKubeletCloudProviderConfig(context.Context, EnsurerContext, *string, string) error
- func (e *NoopEnsurer) EnsureKubeletConfiguration(ctx context.Context, etcx EnsurerContext, ...) error
- func (e *NoopEnsurer) EnsureKubeletServiceUnitOptions(ctx context.Context, ectx EnsurerContext, new, old []*unit.UnitOption) ([]*unit.UnitOption, error)
- func (e *NoopEnsurer) EnsureKubernetesGeneralConfiguration(ctx context.Context, etcx EnsurerContext, new, old *string) error
- func (e *NoopEnsurer) ShouldProvisionKubeletCloudProviderConfig() bool
Constants ¶
const CloudProviderConfigPath = "/var/lib/kubelet/cloudprovider.conf"
Variables ¶
This section is empty.
Functions ¶
func NewMutator ¶
func NewMutator( ensurer Ensurer, unitSerializer controlplane.UnitSerializer, kubeletConfigCodec controlplane.KubeletConfigCodec, fciCodec controlplane.FileContentInlineCodec, logger logr.Logger, ) extensionswebhook.Mutator
NewMutator creates a new controlplane mutator.
Types ¶
type Ensurer ¶
type Ensurer interface { // EnsureKubeAPIServerService ensures that the kube-apiserver service conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubeAPIServerService(ctx context.Context, etcx EnsurerContext, new, old *corev1.Service) error // EnsureKubeAPIServerDeployment ensures that the kube-apiserver deployment conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubeAPIServerDeployment(ctx context.Context, etcx EnsurerContext, new, old *appsv1.Deployment) error // EnsureKubeControllerManagerDeployment ensures that the kube-controller-manager deployment conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubeControllerManagerDeployment(ctx context.Context, etcx EnsurerContext, new, old *appsv1.Deployment) error // EnsureKubeSchedulerDeployment ensures that the kube-scheduler deployment conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubeSchedulerDeployment(ctx context.Context, etcx EnsurerContext, new, old *appsv1.Deployment) error // EnsureETCD ensures that the etcds conform to the respective provider requirements. // "old" might be "nil" and must always be checked. EnsureETCD(ctx context.Context, etcx EnsurerContext, new, old *druidv1alpha1.Etcd) error // EnsureKubeletServiceUnitOptions ensures that the kubelet.service unit options conform to the provider requirements. EnsureKubeletServiceUnitOptions(ctx context.Context, etcx EnsurerContext, new, old []*unit.UnitOption) ([]*unit.UnitOption, error) // EnsureKubeletConfiguration ensures that the kubelet configuration conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubeletConfiguration(ctx context.Context, etcx EnsurerContext, new, old *kubeletconfigv1beta1.KubeletConfiguration) error // EnsureKubernetesGeneralConfiguration ensures that the kubernetes general configuration conforms to the provider requirements. // "old" might be "nil" and must always be checked. EnsureKubernetesGeneralConfiguration(ctx context.Context, etcx EnsurerContext, new, old *string) error // ShouldProvisionKubeletCloudProviderConfig returns true if the cloud provider config file should be added to the kubelet configuration. ShouldProvisionKubeletCloudProviderConfig() bool // EnsureKubeletCloudProviderConfig ensures that the cloud provider config file content conforms to the provider requirements. EnsureKubeletCloudProviderConfig(context.Context, EnsurerContext, *string, string) error // EnsureAdditionalUnits ensures additional systemd units // "old" might be "nil" and must always be checked. EnsureAdditionalUnits(ctx context.Context, etcx EnsurerContext, new, old *[]extensionsv1alpha1.Unit) error // EnsureAdditionalFile ensures additional systemd files // "old" might be "nil" and must always be checked. EnsureAdditionalFiles(ctx context.Context, etcx EnsurerContext, new, old *[]extensionsv1alpha1.File) error }
Ensurer ensures that various standard Kubernets controlplane objects conform to the provider requirements. If they don't initially, they are mutated accordingly.
type EnsurerContext ¶
type EnsurerContext interface {
GetCluster(ctx context.Context) (*extensionscontroller.Cluster, error)
}
EnsurerContext wraps the actual context and cluster object.
func NewEnsurerContext ¶
func NewEnsurerContext(client client.Client, object metav1.Object) EnsurerContext
NewEnsurerContext creates an ensurer context object.
func NewInternalEnsurerContext ¶
func NewInternalEnsurerContext(cluster *extensionscontroller.Cluster) EnsurerContext
NewInternalEnsurerContext creates an ensurer context object.
type NoopEnsurer ¶
type NoopEnsurer struct{}
NoopEnsurer provides no-op implementation of Ensurer. This can be anonymously composed by actual Ensurers for convenience.
func (*NoopEnsurer) EnsureAdditionalFiles ¶
func (e *NoopEnsurer) EnsureAdditionalFiles(ctx context.Context, ectx EnsurerContext, new, old *[]extensionsv1alpha1.File) error
EnsureAdditionalFiles ensures that additional required system files are added.
func (*NoopEnsurer) EnsureAdditionalUnits ¶
func (e *NoopEnsurer) EnsureAdditionalUnits(ctx context.Context, ectx EnsurerContext, new, old *[]extensionsv1alpha1.Unit) error
EnsureAdditionalUnits ensures that additional required system units are added.
func (*NoopEnsurer) EnsureETCD ¶ added in v1.4.0
func (e *NoopEnsurer) EnsureETCD(ctx context.Context, ectx EnsurerContext, new, old *druidv1alpha1.Etcd) error
EnsureETCD ensures that the etcd stateful sets conform to the provider requirements.
func (*NoopEnsurer) EnsureKubeAPIServerDeployment ¶
func (e *NoopEnsurer) EnsureKubeAPIServerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
EnsureKubeAPIServerDeployment ensures that the kube-apiserver deployment conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeAPIServerService ¶
func (e *NoopEnsurer) EnsureKubeAPIServerService(ctx context.Context, ectx EnsurerContext, new, old *corev1.Service) error
EnsureKubeAPIServerService ensures that the kube-apiserver service conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeControllerManagerDeployment ¶
func (e *NoopEnsurer) EnsureKubeControllerManagerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
EnsureKubeControllerManagerDeployment ensures that the kube-controller-manager deployment conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeSchedulerDeployment ¶
func (e *NoopEnsurer) EnsureKubeSchedulerDeployment(ctx context.Context, ectx EnsurerContext, new, old *appsv1.Deployment) error
EnsureKubeSchedulerDeployment ensures that the kube-scheduler deployment conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeletCloudProviderConfig ¶
func (e *NoopEnsurer) EnsureKubeletCloudProviderConfig(context.Context, EnsurerContext, *string, string) error
EnsureKubeletCloudProviderConfig ensures that the cloud provider config file conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeletConfiguration ¶
func (e *NoopEnsurer) EnsureKubeletConfiguration(ctx context.Context, etcx EnsurerContext, new, old *kubeletconfigv1beta1.KubeletConfiguration) error
EnsureKubeletConfiguration ensures that the kubelet configuration conforms to the provider requirements.
func (*NoopEnsurer) EnsureKubeletServiceUnitOptions ¶
func (e *NoopEnsurer) EnsureKubeletServiceUnitOptions(ctx context.Context, ectx EnsurerContext, new, old []*unit.UnitOption) ([]*unit.UnitOption, error)
EnsureKubeletServiceUnitOptions ensures that the kubelet.service unit options conform to the provider requirements.
func (*NoopEnsurer) EnsureKubernetesGeneralConfiguration ¶
func (e *NoopEnsurer) EnsureKubernetesGeneralConfiguration(ctx context.Context, etcx EnsurerContext, new, old *string) error
EnsureKubernetesGeneralConfiguration ensures that the kubernetes general configuration conforms to the provider requirements.
func (*NoopEnsurer) ShouldProvisionKubeletCloudProviderConfig ¶
func (e *NoopEnsurer) ShouldProvisionKubeletCloudProviderConfig() bool
ShouldProvisionKubeletCloudProviderConfig returns if the cloud provider config file should be added to the kubelet configuration.