Documentation
¶
Index ¶
- func Conditions(state amaltheadevv1alpha1.State, ctx context.Context, ...) []amaltheadevv1alpha1.AmaltheaSessionCondition
- type AmaltheaSessionReconciler
- type ChildResource
- type ChildResourceType
- type ChildResourceUpdate
- type ChildResourceUpdates
- func (c ChildResourceUpdates) AllEqual(op controllerutil.OperationResult) bool
- func (c ChildResourceUpdates) IsRunning(pod *v1.Pod) bool
- func (c ChildResourceUpdates) State(cr *amaltheadevv1alpha1.AmaltheaSession, pod *v1.Pod) (amaltheadevv1alpha1.State, string)
- func (c ChildResourceUpdates) Status(ctx context.Context, r *AmaltheaSessionReconciler, ...) amaltheadevv1alpha1.AmaltheaSessionStatus
- type ChildResources
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Conditions ¶
func Conditions( state amaltheadevv1alpha1.State, ctx context.Context, r *AmaltheaSessionReconciler, cr *amaltheadevv1alpha1.AmaltheaSession, ) []amaltheadevv1alpha1.AmaltheaSessionCondition
Types ¶
type AmaltheaSessionReconciler ¶
type AmaltheaSessionReconciler struct { client.Client Scheme *runtime.Scheme MetricsClient metricsv1beta1.PodMetricsesGetter }
AmaltheaSessionReconciler reconciles a AmaltheaSession object
func (*AmaltheaSessionReconciler) Reconcile ¶
func (r *AmaltheaSessionReconciler) 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. TODO(user): Modify the Reconcile function to compare the state specified by the AmaltheaSession 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.16.3/pkg/reconcile
func (*AmaltheaSessionReconciler) SetupWithManager ¶
func (r *AmaltheaSessionReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type ChildResource ¶
type ChildResource[T ChildResourceType] struct { Current *T Desired *T }
func (ChildResource[T]) Reconcile ¶
func (c ChildResource[T]) Reconcile(ctx context.Context, clnt client.Client, cr *amaltheadevv1alpha1.AmaltheaSession) ChildResourceUpdate[T]
type ChildResourceType ¶
type ChildResourceType interface { networkingv1.Ingress | v1.Service | v1.PersistentVolumeClaim | appsv1.StatefulSet }
type ChildResourceUpdate ¶
type ChildResourceUpdate[T ChildResourceType] struct { Manifest *T UpdateResult controllerutil.OperationResult Error error // contains filtered or unexported fields }
type ChildResourceUpdates ¶
type ChildResourceUpdates struct { Ingress ChildResourceUpdate[networkingv1.Ingress] Service ChildResourceUpdate[v1.Service] StatefulSet ChildResourceUpdate[appsv1.StatefulSet] PVC ChildResourceUpdate[v1.PersistentVolumeClaim] DataSourcesPVCs []ChildResourceUpdate[v1.PersistentVolumeClaim] }
func (ChildResourceUpdates) AllEqual ¶
func (c ChildResourceUpdates) AllEqual(op controllerutil.OperationResult) bool
func (ChildResourceUpdates) State ¶
func (c ChildResourceUpdates) State(cr *amaltheadevv1alpha1.AmaltheaSession, pod *v1.Pod) (amaltheadevv1alpha1.State, string)
func (ChildResourceUpdates) Status ¶
func (c ChildResourceUpdates) Status( ctx context.Context, r *AmaltheaSessionReconciler, cr *amaltheadevv1alpha1.AmaltheaSession, ) amaltheadevv1alpha1.AmaltheaSessionStatus
type ChildResources ¶
type ChildResources struct { Ingress ChildResource[networkingv1.Ingress] Service ChildResource[v1.Service] StatefulSet ChildResource[appsv1.StatefulSet] PVC ChildResource[v1.PersistentVolumeClaim] DataSourcesPVCs []ChildResource[v1.PersistentVolumeClaim] }
func NewChildResources ¶
func NewChildResources(cr *amaltheadevv1alpha1.AmaltheaSession) (ChildResources, error)
func (ChildResources) Reconcile ¶
func (c ChildResources) Reconcile(ctx context.Context, clnt client.Client, cr *amaltheadevv1alpha1.AmaltheaSession) (ChildResourceUpdates, error)
Click to show internal directories.
Click to hide internal directories.