in pkg/interceptor/edp_interceptor.go [101:152]
func (i *EDPInterceptor) Process(ctx context.Context, r *triggersv1.InterceptorRequest) *triggersv1.InterceptorResponse {
event, err := i.processEvent(ctx, r)
if err != nil {
return interceptors.Fail(codes.InvalidArgument, err.Error())
}
if event.IsReviewCommentEvent() {
if !event.HasPipelineRecheck {
i.logger.Infof("Pipeline recheck comment is not found, skipping pipeline triggering")
return &triggersv1.InterceptorResponse{
Continue: false,
}
}
i.logger.Infof("Found comment for recheck, triggering pipeline")
}
prepareCodebase(event.Codebase)
codebaseBranchName := convertBranchToCadebaseBranchName(event.TargetBranch, event.Codebase.Name)
trigger := true
ns, _ := triggersv1.ParseTriggerID(r.Context.TriggerID)
codebaseBranch := codebaseApi.CodebaseBranch{}
if err = i.client.Get(ctx, ctrlClient.ObjectKey{Namespace: ns, Name: codebaseBranchName}, &codebaseBranch); err != nil {
if !k8serrors.IsNotFound(err) {
return interceptors.Fail(codes.Internal, fmt.Errorf("failed to get CodebaseBranch: %w", err).Error())
}
trigger = false
i.logger.Infof("Codebasebranch with the name %s is not found, skipping pipeline triggering. "+
"You can ignore this message otherwise add branch %s to codebase %s for the pipeline triggering",
codebaseBranchName,
event.TargetBranch,
event.Codebase.Name,
)
}
return &triggersv1.InterceptorResponse{
Continue: trigger,
Extensions: map[string]interface{}{
"spec": event.Codebase.Spec,
"codebase": event.Codebase.Name,
"codebasebranch": codebaseBranchName,
"targetBranch": event.TargetBranch,
"pullRequest": event.PullRequest,
"pipelines": codebaseBranch.Spec.Pipelines,
},
}
}