Documentation ¶
Index ¶
- Constants
- func HandleReconcileRequest(d CloudDeployer) error
- type CloudDeployer
- type InstanceGroupAuthenticator
- type InstanceGroupReconciler
- func (r *InstanceGroupReconciler) Finalize(instanceGroup *v1alpha1.InstanceGroup)
- func (r *InstanceGroupReconciler) IsNamespaceAnnotated(namespace, key, value string) bool
- func (r *InstanceGroupReconciler) PatchStatus(instanceGroup *v1alpha1.InstanceGroup, patch client.Patch)
- func (r *InstanceGroupReconciler) Reconcile(ctxt context.Context, req ctrl.Request) (ctrl.Result, error)
- func (r *InstanceGroupReconciler) SetFinalizer(instanceGroup *v1alpha1.InstanceGroup)
- func (r *InstanceGroupReconciler) SetupWithManager(mgr ctrl.Manager) error
- type LabelPatch
- type NodeLabels
Constants ¶
View Source
const ( FinalizerStr = "finalizer.instancegroups.keikoproj.io" ErrorReasonGetFailed = "GetRequest" ErrorReasonDefaultsUnmarshalFailed = "UnmarshalDefaults" ErrorReasonDefaultsApplyFailed = "ApplyDefaults" ErrorReasonValidationFailed = "ResourceValidation" ErrorReasonReconcileFailed = "HandleReconcile" )
View Source
const (
ConfigMapName = "instance-manager"
)
Variables ¶
This section is empty.
Functions ¶
func HandleReconcileRequest ¶
func HandleReconcileRequest(d CloudDeployer) error
Types ¶
type CloudDeployer ¶
type CloudDeployer interface { CloudDiscovery() error // Discover cloud resources StateDiscovery() // Derive state Create() error // CREATE Operation Update() error // UPDATE Operation Delete() error // DELETE Operation UpgradeNodes() error // Process upgrade strategy BootstrapNodes() error // Bootstrap Provisioned Resources GetState() v1alpha.ReconcileState // Gets the current state type of the instance group SetState(v1alpha.ReconcileState) // Sets the current state of the instance group IsReady() bool // Returns true if state is Ready Locked() bool // Returns true if instanceGroup is locked }
CloudDeployer is a common interface that should be fulfilled by each provisioner
type InstanceGroupAuthenticator ¶
type InstanceGroupAuthenticator struct { Aws awsprovider.AwsWorker Kubernetes kubeprovider.KubernetesClientSet }
type InstanceGroupReconciler ¶
type InstanceGroupReconciler struct { client.Client SpotRecommendationTime float64 ConfigNamespace string NodeRelabel bool Log logr.Logger MaxParallel int Auth *InstanceGroupAuthenticator ConfigMap *corev1.ConfigMap Namespaces map[string]corev1.Namespace NamespacesLock *sync.RWMutex ConfigRetention int Metrics *common.MetricsCollector DisableWinClusterInjection bool DefaultScalingConfiguration *v1alpha1.ScalingConfigurationType }
InstanceGroupReconciler reconciles an InstanceGroup object
func (*InstanceGroupReconciler) Finalize ¶
func (r *InstanceGroupReconciler) Finalize(instanceGroup *v1alpha1.InstanceGroup)
func (*InstanceGroupReconciler) IsNamespaceAnnotated ¶
func (r *InstanceGroupReconciler) IsNamespaceAnnotated(namespace, key, value string) bool
func (*InstanceGroupReconciler) PatchStatus ¶
func (r *InstanceGroupReconciler) PatchStatus(instanceGroup *v1alpha1.InstanceGroup, patch client.Patch)
func (*InstanceGroupReconciler) SetFinalizer ¶
func (r *InstanceGroupReconciler) SetFinalizer(instanceGroup *v1alpha1.InstanceGroup)
func (*InstanceGroupReconciler) SetupWithManager ¶
func (r *InstanceGroupReconciler) SetupWithManager(mgr ctrl.Manager) error
type LabelPatch ¶
type LabelPatch struct {
Metadata *NodeLabels `json:"metadata,omitempty"`
}
type NodeLabels ¶
Click to show internal directories.
Click to hide internal directories.