in controllers/dsworker_controller.go [266:287]
func (r *DSWorkerReconciler) createMember(ctx context.Context, cluster *dsv1alpha1.DSWorker) error {
workerLogger.Info("Starting add new member to cluster", "cluster", cluster.Name)
defer workerLogger.Info("End add new member to cluster", "cluster", cluster.Name)
// New Pod
pod, err := r.newDSWorkerPod(ctx, cluster)
if err != nil {
return err
}
// Create pod
if err = r.Client.Create(ctx, pod); err != nil && !apierrors.IsAlreadyExists(err) {
return err
}
desired := cluster.DeepCopy()
desired.Spec.Replicas += 1
if err := r.Status().Patch(ctx, desired, client.MergeFrom(cluster)); err != nil {
return err
}
return nil
}