Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Builder ¶
type Builder interface {
WithEvents(eventRecorder events.Recorder) Builder
WithVersioning(operandName string, versionRecorder status.VersionGetter) Builder
WithOperandPodLabelSelector(labelSelector labels.Selector) Builder
WithRevisionedResources(operandNamespace, staticPodName string, revisionConfigMaps, revisionSecrets []revisioncontroller.RevisionResource) Builder
WithUnrevisionedCerts(certDir string, certConfigMaps, certSecrets []installer.UnrevisionedResource) Builder
WithInstaller(command []string) Builder
WithMinReadyDuration(minReadyDuration time.Duration) Builder
WithStartupMonitor(enabledStartupMonitor func() (bool, error)) Builder
// WithExtraNodeSelector Informs controllers to handle extra nodes as well as master nodes.
WithExtraNodeSelector(extraNodeSelector labels.Selector) Builder
// WithCustomInstaller allows mutating the installer pod definition just before
// the installer pod is created for a revision.
WithCustomInstaller(command []string, installerPodMutationFunc installer.InstallerPodMutationFunc) Builder
WithPruning(command []string, staticPodPrefix string) Builder
// WithPodDisruptionBudgetGuard manages guard pods and high available pod disruption budget
//
// optionally pdbUnhealthyPodEvictionPolicy can be set to AlwaysAllow to allows eviction of unhealthy (not ready) pods
// even if there are no disruptions allowed on a PodDisruptionBudget.
// This can help to drain/maintain a node and recover without a manual intervention when multiple instances of nodes or pods are misbehaving.
// Use this with caution, as this option can disrupt perspective pods that have not yet had a chance to become healthy.
WithPodDisruptionBudgetGuard(operatorNamespace, operatorName, readyzPort, readyzEndpoint string, pdbUnhealthyPodEvictionPolicy *v1.UnhealthyPodEvictionPolicyType, createConditionalFunc func() (bool, bool, error)) Builder
WithRevisionControllerPrecondition(revisionControllerPrecondition revisioncontroller.PreconditionFunc) Builder
ToControllers() (manager.ControllerManager, error)
}
Builder allows the caller to construct a set of static pod controllers in pieces
func NewBuilder ¶
func NewBuilder( staticPodOperatorClient v1helpers.StaticPodOperatorClient, kubeClient kubernetes.Interface, kubeNamespaceInformers v1helpers.KubeInformersForNamespaces, clusterInformers informers.SharedInformerFactory, configInformers externalversions.SharedInformerFactory, clock clock.Clock, ) Builder
Directories
¶
| Path | Synopsis |
|---|---|
|
controller
|
|
|
atomicdir/types
Package types exists to avoid import cycles as it's imported by both atomicdir and atomicdir/testing.
|
Package types exists to avoid import cycles as it's imported by both atomicdir and atomicdir/testing. |
Click to show internal directories.
Click to hide internal directories.