diff --git a/lib/workers/repository/index.js b/lib/workers/repository/index.js index 07303cbdca19ca4990cb108dee46e468e9e42f36..0c7e57ff748629e83f84adc46beeca22fa7e3d10 100644 --- a/lib/workers/repository/index.js +++ b/lib/workers/repository/index.js @@ -21,6 +21,7 @@ async function renovateRepository(repoConfig) { logger.trace({ config }, 'renovateRepository()'); let commonConfig; let res; + let status; try { config = await initApis(config); config = await initRepo(config); @@ -93,5 +94,30 @@ async function renovateRepository(repoConfig) { 'Error pruning/cleaning repository' ); } - return res; + const disabledStatuses = [ + 'archived', + 'blocked', + 'disabled', + 'forbidden', + 'fork', + 'no-package-files', + 'not-found', + 'renamed', + 'uninitiated', + ]; + const errorStatuses = ['config-validation', 'error', 'unknown-error']; + // istanbul ignore next + if (disabledStatuses.includes(res)) { + status = 'disabled'; + } else if (errorStatuses.includes(res)) { + status = 'error'; + } else if (config.repoIsOnboarded) { + status = 'enabled'; + } else { + status = 'onboarding'; + if (res === 'onboarding') { + res = 'done'; + } + } + return { res, status }; } diff --git a/test/workers/repository/__snapshots__/index.spec.js.snap b/test/workers/repository/__snapshots__/index.spec.js.snap index 4f6c03c792681d52ffb3f9be9547d9faa4eda3c3..05596f40b38bbe4e214169cdc8bc61e705f26230 100644 --- a/test/workers/repository/__snapshots__/index.spec.js.snap +++ b/test/workers/repository/__snapshots__/index.spec.js.snap @@ -1,6 +1,11 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`workers/repository renovateRepository() ensures onboarding pr 1`] = `"onboarding"`; +exports[`workers/repository renovateRepository() ensures onboarding pr 1`] = ` +Object { + "res": "done", + "status": "onboarding", +} +`; exports[`workers/repository renovateRepository() ensures onboarding pr 2`] = ` Array [ @@ -19,6 +24,16 @@ Array [ ] `; -exports[`workers/repository renovateRepository() handles baseBranches 1`] = `"onboarded"`; +exports[`workers/repository renovateRepository() handles baseBranches 1`] = ` +Object { + "res": "done", + "status": "enabled", +} +`; -exports[`workers/repository renovateRepository() writes 1`] = `"onboarded"`; +exports[`workers/repository renovateRepository() writes 1`] = ` +Object { + "res": "done", + "status": "enabled", +} +`; diff --git a/test/workers/repository/index.spec.js b/test/workers/repository/index.spec.js index 9fd95d8855167d5e1b0a908a91addc89335de2ab..722675c5f5b90e34a9eca00e0f34e0b409dcc211 100644 --- a/test/workers/repository/index.spec.js +++ b/test/workers/repository/index.spec.js @@ -30,7 +30,7 @@ describe('workers/repository', () => { repoIsOnboarded: true, branches: [{ type: 'minor' }, { type: 'pin' }], }); - writeUpdates.mockReturnValueOnce('onboarded'); + writeUpdates.mockReturnValueOnce('done'); const res = await renovateRepository(config, 'some-token'); expect(res).toMatchSnapshot(); }); @@ -64,7 +64,7 @@ describe('workers/repository', () => { repoIsOnboarded: true, branches: [], }); - writeUpdates.mockReturnValueOnce('onboarded'); + writeUpdates.mockReturnValueOnce('done'); const res = await renovateRepository(config, 'some-token'); expect(res).toMatchSnapshot(); });