diff --git a/lib/manager/regex/__snapshots__/index.spec.ts.snap b/lib/manager/regex/__snapshots__/index.spec.ts.snap index ff7398a14e99090a2aa4ed9db5735cd772b4fd91..45d0d301e8079ccc2843a2d58c09227ef0bd77c0 100644 --- a/lib/manager/regex/__snapshots__/index.spec.ts.snap +++ b/lib/manager/regex/__snapshots__/index.spec.ts.snap @@ -90,6 +90,7 @@ Object { "matchStrings": Array [ "ENV .*?_VERSION=(?<currentValue>.*) # (?<datasource>.*?)/(?<depName>[^&]*?)(\\\\&versioning=(?<versioning>[^&]*?))?\\\\s", ], + "versioningTemplate": "{{#if versioning}}{{versioning}}{{else}}semver{{/if}}", } `; @@ -117,11 +118,13 @@ Object { "ENV GRADLE_VERSION=(?<currentValue>.*) # (?<datasource>.*?)/(?<depName>.*?)(\\\\&versioning=(?<versioning>.*?))?\\\\s", "ENV NODE_VERSION=(?<currentValue>.*) # (?<datasource>.*?)/(?<depName>.*?)(\\\\&versioning=(?<versioning>.*?))?\\\\s", ], + "versioningTemplate": "{{#if versioning}}{{versioning}}{{else}}semver{{/if}}", } `; exports[`manager/regex/index extracts registryUrl 1`] = ` Object { + "datasourceTemplate": "helm", "deps": Array [ Object { "currentValue": "8.12.13", @@ -149,6 +152,7 @@ Object { exports[`manager/regex/index extracts with combination strategy 1`] = ` Object { + "datasourceTemplate": "docker", "deps": Array [ Object { "currentValue": "v2.21.0", @@ -167,6 +171,7 @@ Object { exports[`manager/regex/index extracts with combination strategy and multiple matches 1`] = ` Object { + "datasourceTemplate": "docker", "deps": Array [ Object { "currentValue": "0.12.0", diff --git a/lib/manager/regex/index.ts b/lib/manager/regex/index.ts index 43f2ad273f075cff396c8dae8c3321217d1b0b44..daf180ff29e336b9450edfa7ee763179a5dc004d 100644 --- a/lib/manager/regex/index.ts +++ b/lib/manager/regex/index.ts @@ -139,7 +139,7 @@ export function extractPackageFile( packageFile: string, config: CustomExtractConfig ): Result<PackageFile | null> { - let deps; + let deps: PackageDependency[]; switch (config.matchStringsStrategy) { default: case 'any': @@ -156,17 +156,17 @@ export function extractPackageFile( // filter all null values deps = deps.filter(Boolean); if (deps.length) { + const res: PackageFile = { deps, matchStrings: config.matchStrings }; if (config.matchStringsStrategy) { - return { - deps, - matchStrings: config.matchStrings, - matchStringsStrategy: config.matchStringsStrategy, - }; + res.matchStringsStrategy = config.matchStringsStrategy; } - return { - deps, - matchStrings: config.matchStrings, - }; + // copy over templates for autoreplace + for (const field of validMatchFields.map((f) => `${f}Template`)) { + if (config[field]) { + res[field] = config[field]; + } + } + return res; } return null; diff --git a/lib/workers/branch/auto-replace.ts b/lib/workers/branch/auto-replace.ts index 6abd5acf0c13c12b56d4502900700c39a24231aa..8aa6e17362638e8ec11667311ad5578062956997 100644 --- a/lib/workers/branch/auto-replace.ts +++ b/lib/workers/branch/auto-replace.ts @@ -38,7 +38,7 @@ export async function confirmIfDepUpdated( return false; } - if (newUpgrade.depName && upgrade.depName !== newUpgrade.depName) { + if (upgrade.depName !== newUpgrade.depName) { logger.debug( { manager,