diff --git a/src/helper.js b/src/helper.js index e9d4e2f..6b28706 100644 --- a/src/helper.js +++ b/src/helper.js @@ -75,10 +75,19 @@ async function createBranch(branchName, commitSha) { }) } +async function conflictDetails(base, head) { + const res = await octokit.request('GET /repos/{owner}/{repo}/compare/{basehead}{?page,per_page}', { + ...repoInfo, + basehead: `${base}...${head}` + }) + console.log(res); +} + module.exports = { recreateDeployBranch, getLastCommitSha, + conflictDetails, createAuxBranch, deleteBranch, mergeBranchs, diff --git a/src/index.js b/src/index.js index 51d1b3d..0fde7b7 100644 --- a/src/index.js +++ b/src/index.js @@ -1,4 +1,4 @@ -const { getLastCommitSha, createAuxBranch, deleteBranch, getPrs, mergeBranchs, recreateDeployBranch } = require('./helper') +const { getLastCommitSha, createAuxBranch, deleteBranch, getPrs, mergeBranchs, recreateDeployBranch, conflictDetails } = require('./helper') async function run() { const baseLastCommit = await getLastCommitSha() @@ -7,10 +7,13 @@ async function run() { const pullRequests = await getPrs() + let lastBranchToMerge try { let lastMergeCommitSha for (let pull of pullRequests) { console.log(`Merging PR ${pull.number}`) + lastBranchToMerge = pull.head.ref + const { data } = await mergeBranchs(pull.head.ref) console.log(`Successful merge PR ${pull.number}`); @@ -18,6 +21,8 @@ async function run() { lastMergeCommitSha = data.sha } await recreateDeployBranch(lastMergeCommitSha) + } catch(error) { + await conflictDetails(workBranchName, lastBranchToMerge) } finally { await deleteBranch(workBranchName) }