From 2be25c4ae6076fdf20c6a100b1af8d11b4a20065 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Mon, 22 Feb 2021 12:48:00 +0100 Subject: [PATCH] refactor: applyUpdateConfig --- lib/workers/repository/updates/flatten.ts | 52 ++++++++++++----------- 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/lib/workers/repository/updates/flatten.ts b/lib/workers/repository/updates/flatten.ts index f5ec68a684..73cfce1bd1 100644 --- a/lib/workers/repository/updates/flatten.ts +++ b/lib/workers/repository/updates/flatten.ts @@ -8,11 +8,38 @@ import { LANGUAGE_DOCKER } from '../../../constants/languages'; import { getDefaultConfig } from '../../../datasource'; import { get } from '../../../manager'; import { applyPackageRules } from '../../../util/package-rules'; +import { BranchUpgradeConfig } from '../../common'; import { generateBranchName } from './branch-name'; const upper = (str: string): string => str.charAt(0).toUpperCase() + str.substr(1); +export function applyUpdateConfig(input: BranchUpgradeConfig): any { + const updateConfig = { ...input }; + delete updateConfig.packageRules; + // TODO: Remove next line once #8075 is complete + updateConfig.depNameShort ||= updateConfig.depName; + updateConfig.depNameSanitized = updateConfig.depName + ? updateConfig.depName + .replace('@types/', '') + .replace('@', '') + .replace(/\//g, '-') + .replace(/\s+/g, '-') + .replace(/-+/, '-') + .toLowerCase() + : undefined; + if ( + updateConfig.language === LANGUAGE_DOCKER && + /(^|\/)node$/.exec(updateConfig.depName) && + updateConfig.depName !== 'calico/node' + ) { + updateConfig.additionalBranchPrefix = ''; + updateConfig.depNameSanitized = 'node'; + } + generateBranchName(updateConfig); + return updateConfig; +} + export async function flattenUpdates( config: RenovateConfig, packageFiles: Record<string, any[]> @@ -75,30 +102,7 @@ export async function flattenUpdates( } // Apply again in case any were added by the updateType config updateConfig = applyPackageRules(updateConfig); - delete updateConfig.packageRules; - // TODO: Remove next line once #8075 is complete - updateConfig.depNameShort ||= updateConfig.depName; - updateConfig.depNameSanitized = updateConfig.depName - ? updateConfig.depName - .replace('@types/', '') - .replace('@', '') - .replace(/\//g, '-') - .replace(/\s+/g, '-') - .replace(/-+/, '-') - .toLowerCase() - : undefined; - if ( - updateConfig.language === LANGUAGE_DOCKER && - updateConfig.depName.match(/(^|\/)node$/) && - updateConfig.depName !== 'calico/node' - ) { - updateConfig.additionalBranchPrefix = ''; - updateConfig.depNameSanitized = 'node'; - } - generateBranchName(updateConfig); - update.branchName = updateConfig.branchName; // for writing to cache - delete updateConfig.repoIsOnboarded; - delete updateConfig.renovateJsonPresent; + updateConfig = applyUpdateConfig(updateConfig); updateConfig.baseDeps = packageFile.deps; updates.push(updateConfig); } -- GitLab