Documentation ¶
Index ¶
- Constants
- type SleepCycleOperation
- type SleepCycleReconciler
- func (r *SleepCycleReconciler) FinalizeCronJobs(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle) (ctrl.Result, error)
- func (r *SleepCycleReconciler) FinalizeDeployments(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle) (ctrl.Result, error)
- func (r *SleepCycleReconciler) FinalizeHorizontalPodAutoscalers(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle) (ctrl.Result, error)
- func (r *SleepCycleReconciler) FinalizeStatefulSets(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle) (ctrl.Result, error)
- func (r *SleepCycleReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
- func (r *SleepCycleReconciler) ReconcileCronJobs(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ...) (ctrl.Result, error)
- func (r *SleepCycleReconciler) ReconcileDeployments(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ...) (ctrl.Result, error)
- func (r *SleepCycleReconciler) ReconcileHorizontalPodAutoscalers(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ...) (ctrl.Result, error)
- func (r *SleepCycleReconciler) ReconcileStatefulSets(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ...) (ctrl.Result, error)
- func (r *SleepCycleReconciler) RecordEvent(sleepCycle corev1alpha1.SleepCycle, isError bool, namespacedName string, ...)
- func (r *SleepCycleReconciler) ScaleDeployment(ctx context.Context, deployment appsv1.Deployment, replicas int32) error
- func (r *SleepCycleReconciler) ScaleHorizontalPodAutoscaler(ctx context.Context, hpa autoscalingv1.HorizontalPodAutoscaler, replicas int32) error
- func (r *SleepCycleReconciler) ScaleStatefulSet(ctx context.Context, statefulSet appsv1.StatefulSet, replicas int32) error
- func (r *SleepCycleReconciler) SetupWithManager(mgr ctrl.Manager) error
- func (r *SleepCycleReconciler) SuspendCronJob(ctx context.Context, cronJob batchv1.CronJob, suspend bool) error
- func (r *SleepCycleReconciler) WatchDeploymentsHandler(o client.Object) []ctrl.Request
- type TimeWindow
Constants ¶
View Source
const ( SleepCycleLabel = "rekuberate.io/sleepcycle" SleepCycleFinalizer = "sleepcycle.core.rekuberate.io/finalizer" TimeWindowToleranceInSeconds int = 30 SleepCycleStatusUpdateFailure string = "failed to update SleepCycle Status" SleepCycleFinalizerFailure string = "finalizer failed" )
View Source
const (
UsedByLabelKey = "(%v) %v/%v"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SleepCycleOperation ¶
type SleepCycleOperation int
const ( Watch SleepCycleOperation = iota Shutdown WakeUp )
func (SleepCycleOperation) String ¶
func (sco SleepCycleOperation) String() string
type SleepCycleReconciler ¶
type SleepCycleReconciler struct { client.Client Scheme *runtime.Scheme Recorder record.EventRecorder // contains filtered or unexported fields }
SleepCycleReconciler reconciles a SleepCycle object
func (*SleepCycleReconciler) FinalizeCronJobs ¶
func (r *SleepCycleReconciler) FinalizeCronJobs( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ) (ctrl.Result, error)
func (*SleepCycleReconciler) FinalizeDeployments ¶
func (r *SleepCycleReconciler) FinalizeDeployments( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ) (ctrl.Result, error)
func (*SleepCycleReconciler) FinalizeHorizontalPodAutoscalers ¶
func (r *SleepCycleReconciler) FinalizeHorizontalPodAutoscalers( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ) (ctrl.Result, error)
func (*SleepCycleReconciler) FinalizeStatefulSets ¶
func (r *SleepCycleReconciler) FinalizeStatefulSets( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, ) (ctrl.Result, error)
func (*SleepCycleReconciler) Reconcile ¶
func (r *SleepCycleReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state. Modify the Reconcile function to compare the state specified by the SleepCycle object against the actual cluster state, and then perform operations to make the cluster state reflect the state specified by the user.
For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.12.2/pkg/reconcile
func (*SleepCycleReconciler) ReconcileCronJobs ¶
func (r *SleepCycleReconciler) ReconcileCronJobs(ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, desired *corev1alpha1.SleepCycle, op SleepCycleOperation, ) (ctrl.Result, error)
func (*SleepCycleReconciler) ReconcileDeployments ¶
func (r *SleepCycleReconciler) ReconcileDeployments( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, desired *corev1alpha1.SleepCycle, op SleepCycleOperation, ) (ctrl.Result, error)
func (*SleepCycleReconciler) ReconcileHorizontalPodAutoscalers ¶
func (r *SleepCycleReconciler) ReconcileHorizontalPodAutoscalers( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, desired *corev1alpha1.SleepCycle, op SleepCycleOperation, ) (ctrl.Result, error)
func (*SleepCycleReconciler) ReconcileStatefulSets ¶
func (r *SleepCycleReconciler) ReconcileStatefulSets( ctx context.Context, req ctrl.Request, original *corev1alpha1.SleepCycle, desired *corev1alpha1.SleepCycle, op SleepCycleOperation, ) (ctrl.Result, error)
func (*SleepCycleReconciler) RecordEvent ¶
func (r *SleepCycleReconciler) RecordEvent(sleepCycle corev1alpha1.SleepCycle, isError bool, namespacedName string, operation SleepCycleOperation, extra ...string)
func (*SleepCycleReconciler) ScaleDeployment ¶
func (r *SleepCycleReconciler) ScaleDeployment(ctx context.Context, deployment appsv1.Deployment, replicas int32) error
func (*SleepCycleReconciler) ScaleHorizontalPodAutoscaler ¶
func (r *SleepCycleReconciler) ScaleHorizontalPodAutoscaler(ctx context.Context, hpa autoscalingv1.HorizontalPodAutoscaler, replicas int32) error
func (*SleepCycleReconciler) ScaleStatefulSet ¶
func (r *SleepCycleReconciler) ScaleStatefulSet(ctx context.Context, statefulSet appsv1.StatefulSet, replicas int32) error
func (*SleepCycleReconciler) SetupWithManager ¶
func (r *SleepCycleReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
func (*SleepCycleReconciler) SuspendCronJob ¶
func (*SleepCycleReconciler) WatchDeploymentsHandler ¶
func (r *SleepCycleReconciler) WatchDeploymentsHandler(o client.Object) []ctrl.Request
type TimeWindow ¶
func NewTimeWindow ¶
func NewTimeWindow(schedule time.Time) (timeWindow *TimeWindow)
func (TimeWindow) IsScheduleWithinWindow ¶
func (tw TimeWindow) IsScheduleWithinWindow(schedule time.Time) bool
Click to show internal directories.
Click to hide internal directories.