From 4a7f493ec43ca8cf21464c10b479bd4294ffc79d Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Wed, 7 Feb 2018 08:05:32 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20delete=20branch=20if=20create=20pr=20ret?= =?UTF-8?q?urns=20=E2=80=9Cvalidation=20failed=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/workers/pr/index.js | 4 ++++ test/workers/pr/index.spec.js | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/workers/pr/index.js b/lib/workers/pr/index.js index d5ad7b49fe..388ae37b6d 100644 --- a/lib/workers/pr/index.js +++ b/lib/workers/pr/index.js @@ -250,6 +250,10 @@ async function ensurePr(prConfig) { ); } catch (err) { logger.warn({ err, message: err.message }, `Failed to create PR`); + if (err.message === 'Validation Failed (422)') { + logger.info({ branchName }, 'Deleting invalid branch'); + await platform.deleteBranch(branchName); + } return null; } // Skip assign and review if automerging PR diff --git a/test/workers/pr/index.spec.js b/test/workers/pr/index.spec.js index 3f2ff841e5..0355c5b85e 100644 --- a/test/workers/pr/index.spec.js +++ b/test/workers/pr/index.spec.js @@ -153,7 +153,7 @@ describe('workers/pr', () => { platform.getBranchStatus.mockReturnValueOnce('success'); platform.createPr = jest.fn(); platform.createPr.mockImplementationOnce(() => { - throw new Error('failed to create PR'); + throw new Error('Validation Failed (422)'); }); config.prCreation = 'status-success'; const pr = await prWorker.ensurePr(config); -- GitLab