async function handleMergeRequest()

in pull-request-evaluator/lib/gitlab-webhook/event-handler.js [76:117]


async function handleMergeRequest(data) {
    /* Brand new MR */
    if (data.object_attributes.action == "open") {
        let projectId = data.project.id;
        let mrIid = data.object_attributes.iid;

        await gitlabMr.createInitialMrComment(projectId, mrIid);

        /* getting the merge request and change list */
        let changeList = await gitlabMr.loadFull(projectId, mrIid);

        if (configHelper.getFuncPrSummary()) {
            let mrSummaryResponse = await aiHelper.prSummary(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, mrSummaryResponse);
        }

        if (configHelper.getFuncDiffSummary()) {
            let diffSummaryResponse = await aiHelper.diffSummary(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, diffSummaryResponse);
        }

        if (configHelper.getFuncDiffRank()) {
            let diffRankResponse = await aiHelper.diffRank(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, diffRankResponse);
        }

        if (configHelper.getFuncFileSummary()) {
            let fileSummaryResponse = await aiHelper.fileSummary(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, fileSummaryResponse);
        }

        if (configHelper.getFuncFilePerformance()) {
            let filePerformanceResponse = await aiHelper.filePerformance(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, filePerformanceResponse);
        }

        if (configHelper.getFuncFileSecurity()) {
            let fileSecurityResponse = await aiHelper.fileSecurity(changeList);
            await gitlabMr.createMrComment(projectId, mrIid, fileSecurityResponse);
        }
    }
}