diff --git a/lib/platform/azure/azure-helper.ts b/lib/platform/azure/azure-helper.ts index 6fc995dd232a46413dffa96969f824acab126056..a65d38cb614e0a13108dc5c528aa6a54be9328f1 100644 --- a/lib/platform/azure/azure-helper.ts +++ b/lib/platform/azure/azure-helper.ts @@ -198,12 +198,14 @@ export function getRenovatePRFormat(azurePr: { description: any; status: number; mergeStatus: number; + targetRefName: string; }) { const pr = azurePr as any; pr.displayNumber = `Pull Request #${azurePr.pullRequestId}`; pr.number = azurePr.pullRequestId; pr.body = azurePr.description; + pr.targetBranch = azurePr.targetRefName; // status // export declare enum PullRequestStatus { diff --git a/lib/platform/bitbucket-server/utils.ts b/lib/platform/bitbucket-server/utils.ts index 61c4847b6a9ce1a83a86c9fdd7ec3f48459a8fc6..5c7a33431fa2c3f3d9b384d4c270ff124345097a 100644 --- a/lib/platform/bitbucket-server/utils.ts +++ b/lib/platform/bitbucket-server/utils.ts @@ -15,6 +15,7 @@ export function prInfo(pr: any) { number: pr.id, body: pr.description, branchName: pr.fromRef.displayId, + targetBranch: pr.toRef.displayId, title: pr.title, state: prStateMapping[pr.state], createdAt: pr.createdDate, diff --git a/lib/platform/bitbucket/utils.ts b/lib/platform/bitbucket/utils.ts index 44ed49d963c1a793474f7824a0f151000d11e6e7..a4814c2d90157ab29cc7cbe1392c600e301d753d 100644 --- a/lib/platform/bitbucket/utils.ts +++ b/lib/platform/bitbucket/utils.ts @@ -103,6 +103,7 @@ export function prInfo(pr: any) { number: pr.id, body: pr.summary ? pr.summary.raw : /* istanbul ignore next */ undefined, branchName: pr.source.branch.name, + targetBranch: pr.destination.branch.name, title: pr.title, state: prStates.closed.includes(pr.state) ? /* istanbul ignore next */ 'closed' diff --git a/lib/platform/github/index.ts b/lib/platform/github/index.ts index ca3c058c0295162331e1734d2112bdf23ccf3977..e07762bf1345ad3922c5916873096f2f83ba7aaf 100644 --- a/lib/platform/github/index.ts +++ b/lib/platform/github/index.ts @@ -1230,6 +1230,7 @@ async function getOpenPrs() { nodes { number headRefName + baseRefName title mergeable mergeStateStatus @@ -1289,6 +1290,8 @@ async function getOpenPrs() { const branchName = pr.branchName; const prNo = pr.number; delete pr.headRefName; + pr.targetBranch = pr.baseRefName; + delete pr.baseRefName; // https://developer.github.com/v4/enum/mergeablestate const canMergeStates = ['BEHIND', 'CLEAN']; const hasNegativeReview = diff --git a/lib/platform/gitlab/index.ts b/lib/platform/gitlab/index.ts index 87b79926bdf3910db7e3627818c6ff942470dfdc..db7094b2a753c1fbdc0ea5dc7ddfbb3f361a2e8e 100644 --- a/lib/platform/gitlab/index.ts +++ b/lib/platform/gitlab/index.ts @@ -723,6 +723,7 @@ export async function getPr(iid: number) { const pr = (await api.get(url)).body; // Harmonize fields with GitHub pr.branchName = pr.source_branch; + pr.targetBranch = pr.target_branch; pr.number = pr.iid; pr.displayNumber = `Merge Request #${pr.iid}`; pr.body = pr.description; diff --git a/test/platform/azure/__snapshots__/azure-helper.spec.ts.snap b/test/platform/azure/__snapshots__/azure-helper.spec.ts.snap index 2934db296bf8af0086ba46933e1a25d5d15b48b2..fd8b5ddd8b4fe1d06f3aae2719a4d4b1e12cae7e 100644 --- a/test/platform/azure/__snapshots__/azure-helper.spec.ts.snap +++ b/test/platform/azure/__snapshots__/azure-helper.spec.ts.snap @@ -92,6 +92,7 @@ Object { "number": undefined, "state": "merged", "status": 3, + "targetBranch": undefined, } `; @@ -103,6 +104,7 @@ Object { "number": undefined, "state": "closed", "status": 2, + "targetBranch": undefined, } `; @@ -115,6 +117,7 @@ Object { "mergeStatus": 2, "number": undefined, "state": "open", + "targetBranch": undefined, } `; @@ -126,6 +129,7 @@ Object { "number": undefined, "state": "open", "status": 1, + "targetBranch": undefined, } `; diff --git a/test/platform/bitbucket-server/__snapshots__/index.spec.ts.snap b/test/platform/bitbucket-server/__snapshots__/index.spec.ts.snap index c1cef2e052867c50c43eb6e4eb9c407a52d7b658..ea6651cbfb2e6a2f19f41491c90429b292c23a57 100644 --- a/test/platform/bitbucket-server/__snapshots__/index.spec.ts.snap +++ b/test/platform/bitbucket-server/__snapshots__/index.spec.ts.snap @@ -505,6 +505,7 @@ Object { "createdAt": 1547853840016, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -556,6 +557,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -722,6 +724,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -743,6 +746,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -764,6 +768,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -850,6 +855,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -895,6 +901,7 @@ Object { "number": undefined, "reviewers": Array [], "state": "merged", + "targetBranch": undefined, "title": undefined, "version": 0, } @@ -960,6 +967,7 @@ Array [ "createdAt": 1547853840016, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", "version": 1, }, @@ -1979,6 +1987,7 @@ Object { "createdAt": 1547853840016, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2030,6 +2039,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2196,6 +2206,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2217,6 +2228,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2238,6 +2250,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2324,6 +2337,7 @@ Object { "userName2", ], "state": "open", + "targetBranch": "master", "title": "title", "version": 1, } @@ -2369,6 +2383,7 @@ Object { "number": undefined, "reviewers": Array [], "state": "merged", + "targetBranch": undefined, "title": undefined, "version": 0, } @@ -2434,6 +2449,7 @@ Array [ "createdAt": 1547853840016, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", "version": 1, }, diff --git a/test/platform/bitbucket-server/index.spec.ts b/test/platform/bitbucket-server/index.spec.ts index dfd8d36a2bfada89228a130d8a1c46b900eabf83..063944356a0707eab4516514cdc1e1a144fe955a 100644 --- a/test/platform/bitbucket-server/index.spec.ts +++ b/test/platform/bitbucket-server/index.spec.ts @@ -533,6 +533,7 @@ describe('platform/bitbucket-server', () => { state: 'MERGED', reviewers: [], fromRef: {}, + toRef: {}, }, } as any); expect(await bitbucket.getPr(5)).toMatchSnapshot(); diff --git a/test/platform/bitbucket/__snapshots__/index.spec.ts.snap b/test/platform/bitbucket/__snapshots__/index.spec.ts.snap index 9adeaf50ad294b55c251bf5ad2e75bc6374c1c4c..8e42c661916783496b7c720011eae4f6f3d76c58 100644 --- a/test/platform/bitbucket/__snapshots__/index.spec.ts.snap +++ b/test/platform/bitbucket/__snapshots__/index.spec.ts.snap @@ -134,6 +134,7 @@ Object { "createdAt": "2018-07-02T07:02:25.275030+00:00", "number": 5, "state": "open", + "targetBranch": "master", "title": "title", } `; @@ -150,6 +151,7 @@ Object { "isStale": false, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", } `; @@ -166,6 +168,7 @@ Object { "isStale": false, "number": 3, "state": "open", + "targetBranch": "master", "title": "title", } `; @@ -182,6 +185,7 @@ Object { "isStale": false, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", } `; @@ -198,6 +202,7 @@ Object { "isStale": false, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", } `; @@ -255,6 +260,7 @@ Object { "isStale": false, "number": 5, "state": "open", + "targetBranch": "master", "title": "title", } `; diff --git a/test/platform/bitbucket/_fixtures/responses.js b/test/platform/bitbucket/_fixtures/responses.js index ff871a2f567e760d922ba2ee38e961dea91929df..0c47566b7bd4a126294b4128593d6a337ff406aa 100644 --- a/test/platform/bitbucket/_fixtures/responses.js +++ b/test/platform/bitbucket/_fixtures/responses.js @@ -1,6 +1,7 @@ const pr = id => ({ id, source: { branch: { name: 'branch' } }, + destination: { branch: { name: 'master' } }, title: 'title', summary: { raw: 'summary' }, state: 'OPEN', diff --git a/test/platform/github/__snapshots__/index.spec.ts.snap b/test/platform/github/__snapshots__/index.spec.ts.snap index 6446d9ae6562a951c035b24a7de7820e4d9973d1..f022c4567e33bbed07e2d11051c005be35eea3a1 100644 --- a/test/platform/github/__snapshots__/index.spec.ts.snap +++ b/test/platform/github/__snapshots__/index.spec.ts.snap @@ -217,6 +217,7 @@ Object { "isStale": true, "number": 2500, "state": "open", + "targetBranch": "master", "title": "chore(deps): update dependency jest to v23.6.0", } `; diff --git a/test/platform/github/_fixtures/graphql/pullrequest-1.json b/test/platform/github/_fixtures/graphql/pullrequest-1.json index 7278c6921ae27d3c27367afc0fc2117f3cd192e9..d028e8025a76fdceb7d3c92287df79c4640f1e3c 100644 --- a/test/platform/github/_fixtures/graphql/pullrequest-1.json +++ b/test/platform/github/_fixtures/graphql/pullrequest-1.json @@ -5,6 +5,7 @@ "nodes": [ { "number": 2433, + "baseRefName": "master", "headRefName": "renovate/major-got-packages", "title": "build(deps): update got packages (major)", "mergeable": "MERGEABLE", @@ -44,6 +45,7 @@ }, { "number": 2500, + "baseRefName": "master", "headRefName": "renovate/jest-monorepo", "title": "chore(deps): update dependency jest to v23.6.0", "mergeable": "UNKNOWN", diff --git a/test/platform/github/_fixtures/graphql/pullrequests-closed.json b/test/platform/github/_fixtures/graphql/pullrequests-closed.json index f4488f76e595667e631a5669c3593b9b188dd636..497c086abce6eba81a4d8241875415483dec430b 100644 --- a/test/platform/github/_fixtures/graphql/pullrequests-closed.json +++ b/test/platform/github/_fixtures/graphql/pullrequests-closed.json @@ -5,6 +5,7 @@ "nodes": [ { "number": 2500, + "baseRefName": "master", "headRefName": "renovate/jest-monorepo", "state": "MERGED", "title": "chore(deps): update dependency jest to v23.6.0", diff --git a/test/platform/gitlab/__snapshots__/index.spec.ts.snap b/test/platform/gitlab/__snapshots__/index.spec.ts.snap index 8ffa8dd1b6d133ee95a321ad6cd1238f741ea9e1..9db70e0fa28692a463f2aaad15a2fe1bbba3d3be 100644 --- a/test/platform/gitlab/__snapshots__/index.spec.ts.snap +++ b/test/platform/gitlab/__snapshots__/index.spec.ts.snap @@ -147,6 +147,8 @@ Object { "number": 91, "source_branch": "some-branch", "state": "open", + "targetBranch": "master", + "target_branch": "master", } `; @@ -167,6 +169,8 @@ Object { "number": 12345, "source_branch": "some-branch", "state": "merged", + "targetBranch": "master", + "target_branch": "master", } `; @@ -186,6 +190,8 @@ Object { "number": 12345, "source_branch": "some-branch", "state": "open", + "targetBranch": "master", + "target_branch": "master", } `; @@ -204,6 +210,8 @@ Object { "number": 12345, "source_branch": "some-branch", "state": "open", + "targetBranch": "master", + "target_branch": "master", } `; diff --git a/test/platform/gitlab/index.spec.ts b/test/platform/gitlab/index.spec.ts index 022c93c81da6907796710a3b1e65f7cf83ff129d..106d2f0bb4d39afc8acd2accc2128fc65cf84283 100644 --- a/test/platform/gitlab/index.spec.ts +++ b/test/platform/gitlab/index.spec.ts @@ -310,7 +310,14 @@ describe('platform/gitlab', () => { it('should return the PR object', async () => { await initRepo(); api.get.mockReturnValueOnce({ - body: [{ iid: 91, source_branch: 'some-branch', state: 'opened' }], + body: [ + { + iid: 91, + source_branch: 'some-branch', + target_branch: 'master', + state: 'opened', + }, + ], } as any); api.get.mockReturnValueOnce({ body: { @@ -320,6 +327,7 @@ describe('platform/gitlab', () => { deletions: 1, commits: 1, source_branch: 'some-branch', + target_branch: 'master', base: { sha: '1234', }, @@ -778,6 +786,7 @@ describe('platform/gitlab', () => { merge_status: 'cannot_be_merged', diverged_commits_count: 5, source_branch: 'some-branch', + target_branch: 'master', }, } as any); api.get.mockReturnValueOnce({ @@ -798,6 +807,7 @@ describe('platform/gitlab', () => { state: 'open', diverged_commits_count: 5, source_branch: 'some-branch', + target_branch: 'master', }, } as any); api.get.mockReturnValueOnce({ body: [{ status: 'success' }] } as any); // get commit statuses @@ -817,6 +827,7 @@ describe('platform/gitlab', () => { merge_status: 'cannot_be_merged', diverged_commits_count: 2, source_branch: 'some-branch', + target_branch: 'master', }, } as any) );