func()

in operator/controllers/operator/javaagent_controller.go [182:205]


func (r *JavaAgentReconciler) getSwAgent(ctx context.Context, req ctrl.Request,
	swAgentList *operatorv1alpha1.SwAgentList, pod *core.Pod,
) (*operatorv1alpha1.SwAgent, error) {
	if err := r.Client.List(ctx, swAgentList, client.InNamespace(req.Namespace)); err != nil {
		return nil, err
	}

	// selector
	var lastMatchedSwAgent *operatorv1alpha1.SwAgent
	for _, swAgent := range swAgentList.Items {
		isMatch := true
		if len(swAgent.Spec.Selector) != 0 {
			for k, v := range swAgent.Spec.Selector {
				if !strings.EqualFold(v, pod.Labels[k]) {
					isMatch = false
				}
			}
		}
		if isMatch {
			lastMatchedSwAgent = &swAgent
		}
	}
	return lastMatchedSwAgent, nil
}