From d1c8917a26df8df0ea9ab2ec3fa083aa3373c197 Mon Sep 17 00:00:00 2001 From: Sergei Zharinov <zharinov@users.noreply.github.com> Date: Fri, 9 Apr 2021 19:05:05 +0400 Subject: [PATCH] refactor(workers): Extract common file matching configuration logic (#9471) --- lib/workers/repository/extract/index.ts | 26 +++++++++++-------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/lib/workers/repository/extract/index.ts b/lib/workers/repository/extract/index.ts index 9cd27d4224..69de5551a8 100644 --- a/lib/workers/repository/extract/index.ts +++ b/lib/workers/repository/extract/index.ts @@ -23,30 +23,26 @@ export async function extractAllDependencies( } const extractList: RenovateConfig[] = []; const fileList = await getFileList(); + + const tryConfig = (extractConfig: RenovateConfig): void => { + const matchingFileList = getMatchingFiles(extractConfig, fileList); + if (matchingFileList.length) { + extractList.push({ ...extractConfig, fileList: matchingFileList }); + } + }; + for (const manager of managerList) { const managerConfig = getManagerConfig(config, manager); managerConfig.manager = manager; if (manager === 'regex') { for (const regexManager of config.regexManagers) { - const regexManagerConfig = mergeChildConfig( - managerConfig, - regexManager - ); - regexManagerConfig.fileList = getMatchingFiles( - regexManagerConfig, - fileList - ); - if (regexManagerConfig.fileList.length) { - extractList.push(regexManagerConfig); - } + tryConfig(mergeChildConfig(managerConfig, regexManager)); } } else { - managerConfig.fileList = getMatchingFiles(managerConfig, fileList); - if (managerConfig.fileList.length) { - extractList.push(managerConfig); - } + tryConfig(managerConfig); } } + const extractResults = await Promise.all( extractList.map(async (managerConfig) => { const packageFiles = await getManagerPackageFiles(managerConfig); -- GitLab