Skip to content
Snippets Groups Projects
Commit 27db9cfb authored by Rhys Arkins's avatar Rhys Arkins
Browse files

refactor: remove automerge recursion

parent b6cf7360
No related branches found
No related tags found
No related merge requests found
......@@ -38,10 +38,6 @@ async function handleError(config, err) {
} else if (err.message === 'no-package-files') {
logger.info('Repository has no package files - skipping');
return err.message;
} else if (err.message === 'loops>10') {
logger.warn('Repository has looped 10 times already');
delete config.branchList; // eslint-disable-line no-param-reassign
return err.message;
} else if (err.message === 'repository-changed') {
logger.info('Repository has changed during renovation - aborting');
delete config.branchList; // eslint-disable-line no-param-reassign
......
......@@ -6,7 +6,6 @@ const { writeUpdates } = require('./write');
const { handleError } = require('./error');
const { pruneStaleBranches } = require('./cleanup');
const { validatePrs } = require('./validate');
const delay = require('delay');
const { resolvePackageFiles } = require('../../manager');
......@@ -14,20 +13,16 @@ module.exports = {
renovateRepository,
};
async function renovateRepository(repoConfig, token, loop = 1) {
async function renovateRepository(repoConfig, token) {
let config = { ...repoConfig, branchList: [] };
config.global = config.global || {};
logger.setMeta({ repository: config.repository });
logger.info('Renovating repository');
logger.trace({ config, loop }, 'renovateRepository()');
logger.trace({ config }, 'renovateRepository()');
let commonConfig;
try {
if (loop > 10) {
throw new Error('loops>10');
}
config = await initApis(config, token);
config = await initRepo(config);
if (config.baseBranches && config.baseBranches.length) {
// At this point we know if we have multiple branches
// Do the following for every branch
......@@ -80,11 +75,6 @@ async function renovateRepository(repoConfig, token, loop = 1) {
const res = config.repoIsOnboarded
? await writeUpdates(config)
: await ensureOnboardingPr(config);
if (res === 'pr-closed' || res === 'automerged') {
logger.info(`Restarting repo renovation after ${res}`);
await delay(5000);
return renovateRepository(repoConfig, token, loop + 1);
}
await validatePrs(commonConfig || config);
return res;
} catch (err) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment