mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-03-31 18:01:36 -04:00
32 lines
812 B
JavaScript
32 lines
812 B
JavaScript
const debug = require('debug')('probot:presolver');
|
|
const Presolver = require('./lib/presolver');
|
|
|
|
async function probotPlugin(robot) {
|
|
const events = [
|
|
'pull_request.opened',
|
|
'pull_request.edited',
|
|
'pull_request.synchronize',
|
|
'pull_request.reopened',
|
|
'pull_request.labeled'
|
|
];
|
|
|
|
robot.on(events, presolve.bind(null, robot));
|
|
}
|
|
|
|
async function presolve(app, context) {
|
|
const presolver = forRepository(context);
|
|
const pullRequest = getPullRequest(context);
|
|
return presolver.presolve(pullRequest);
|
|
}
|
|
|
|
function forRepository(context) {
|
|
const config = ({...context.repo({ logger: debug })});
|
|
return new Presolver(context, config);
|
|
}
|
|
|
|
function getPullRequest(context) {
|
|
return context.payload.pull_request || context.payload.review.pull_request;
|
|
}
|
|
|
|
module.exports = probotPlugin;
|