From 1d92836c84fb1e44030768717f2b367055207d36 Mon Sep 17 00:00:00 2001 From: Atsushi Watanabe <atsushi.w@ieee.org> Date: Tue, 15 Jun 2021 20:10:23 +0900 Subject: [PATCH] fix: regex manager extractVersionTemplate validation (#10325) --- docs/usage/configuration-options.md | 5 +++++ lib/config/definitions.ts | 9 +++++++++ lib/config/validation.spec.ts | 1 + lib/config/validation.ts | 1 + 4 files changed, 16 insertions(+) diff --git a/docs/usage/configuration-options.md b/docs/usage/configuration-options.md index 06988ec4c8..e6b372a013 100644 --- a/docs/usage/configuration-options.md +++ b/docs/usage/configuration-options.md @@ -1990,6 +1990,11 @@ In the above example, each regex manager will match a single dependency each. If `depName` cannot be captured with a named capture group in `matchString` then it can be defined manually using this field. It will be compiled using Handlebars and the regex `groups` result. +### extractVersionTemplate + +If `extractVersion` cannot be captured with a named capture group in `matchString` then it can be defined manually using this field. +It will be compiled using Handlebars and the regex `groups` result. + ### lookupNameTemplate `lookupName` is used for looking up dependency versions. diff --git a/lib/config/definitions.ts b/lib/config/definitions.ts index e76131de8a..11cfde45e6 100644 --- a/lib/config/definitions.ts +++ b/lib/config/definitions.ts @@ -1956,6 +1956,15 @@ const options: RenovateOptions[] = [ cli: false, env: false, }, + { + name: 'extractVersionTemplate', + description: + 'Optional extractVersion for extracted dependencies. Valid only within a `regexManagers` object.', + type: 'string', + parent: 'regexManagers', + cli: false, + env: false, + }, { name: 'fetchReleaseNotes', description: 'Allow to disable release notes fetching.', diff --git a/lib/config/validation.spec.ts b/lib/config/validation.spec.ts index eb7eb914b4..886fe77838 100644 --- a/lib/config/validation.spec.ts +++ b/lib/config/validation.spec.ts @@ -352,6 +352,7 @@ describe(getName(), () => { depNameTemplate: 'foo', datasourceTemplate: 'bar', registryUrlTemplate: 'foobar', + extractVersionTemplate: '^(?<version>v\\d+\\.\\d+)', }, ], }; diff --git a/lib/config/validation.ts b/lib/config/validation.ts index b331e7c29c..2cf5b2adc4 100644 --- a/lib/config/validation.ts +++ b/lib/config/validation.ts @@ -388,6 +388,7 @@ export async function validateConfig( 'versioningTemplate', 'registryUrlTemplate', 'currentValueTemplate', + 'extractVersionTemplate', ]; // TODO: fix types for (const regexManager of val as any[]) { -- GitLab