diff --git a/lib/config/common.ts b/lib/config/common.ts index 2e6469e29bc2e7d98bf8d7acc662eedddd755871..2d17cb5fc12a2bcb3112c79a24aa31fa7d7a7332 100644 --- a/lib/config/common.ts +++ b/lib/config/common.ts @@ -140,7 +140,7 @@ export interface RenovateConfig masterIssueChecks?: Record<string, string>; masterIssueRebaseAllOpen?: boolean; masterIssueTitle?: string; - + packageFile?: string; packageRules?: PackageRule[]; prConcurrentLimit?: number; prHourlyLimit?: number; diff --git a/lib/workers/repository/process/lookup/rollback.ts b/lib/workers/repository/process/lookup/rollback.ts index ab030b66d7a9fde34785030821edfa6c56e1c770..e7a74ce49d2ca4a2a716a8382086cec47bb8adcc 100644 --- a/lib/workers/repository/process/lookup/rollback.ts +++ b/lib/workers/repository/process/lookup/rollback.ts @@ -5,7 +5,7 @@ import { LookupUpdate } from '../../../../manager/common'; export interface RollbackConfig { currentValue?: string; depName?: string; - packageFile: string; + packageFile?: string; versioning: string; } diff --git a/lib/workers/repository/updates/branchify.spec.ts b/lib/workers/repository/updates/branchify.spec.ts index dd793fee8a9ee288fa08806940d9d566308089d5..fc7623122806441b5831ed8226336d332b01cf43 100644 --- a/lib/workers/repository/updates/branchify.spec.ts +++ b/lib/workers/repository/updates/branchify.spec.ts @@ -29,6 +29,7 @@ describe('workers/repository/updates/branchify', () => { version: '1.1.0', prTitle: 'some-title', updateType: 'minor', + packageFile: 'foo/package.json', }, ]); config.repoIsOnboarded = true; @@ -48,6 +49,7 @@ describe('workers/repository/updates/branchify', () => { groupName: 'some packages', group: {}, separateMajorMinor: true, + packageFile: 'package.json', }, { depName: 'foo', diff --git a/lib/workers/repository/updates/branchify.ts b/lib/workers/repository/updates/branchify.ts index 9ab9f15a7267303e3a487f9b47057a85ac931e9f..b96aa920c1ea25e68c2cd514e43b67960c24f007 100644 --- a/lib/workers/repository/updates/branchify.ts +++ b/lib/workers/repository/updates/branchify.ts @@ -46,6 +46,20 @@ export async function branchifyUpgrades( const branchUpgrades: Record<string, BranchUpgradeConfig[]> = {}; const branches: BranchConfig[] = []; for (const u of updates) { + // extract parentDir and baseDir from packageFile + if (u.packageFile) { + const packagePath = u.packageFile.split('/'); + if (packagePath.length > 0) { + packagePath.splice(-1, 1); + } + if (packagePath.length > 0) { + u.parentDir = packagePath[packagePath.length - 1]; + u.baseDir = packagePath.join('/'); + } else { + u.parentDir = ''; + u.baseDir = ''; + } + } const update: BranchUpgradeConfig = { ...u } as any; // Massage legacy vars just in case update.currentVersion = update.currentValue; diff --git a/lib/workers/repository/updates/generate.spec.ts b/lib/workers/repository/updates/generate.spec.ts index 999768cdd3209aa91fc5bc8dc8631bf2c81db5a5..641bc5095491fbc3d9c5bc22c0866c91f2193f25 100644 --- a/lib/workers/repository/updates/generate.spec.ts +++ b/lib/workers/repository/updates/generate.spec.ts @@ -266,84 +266,13 @@ describe('workers/repository/updates/generate', () => { 'chore(package): update dependency some-dep to v1.2.0' ); }); - it('scopes monorepo commits', () => { - const branch = [ - partial<BranchUpgradeConfig>({ - ...defaultConfig, - depName: 'some-dep', - packageFile: 'foo/package.json', - semanticCommits: true, - semanticCommitType: 'chore', - semanticCommitScope: '{{parentDir}}', - lazyGrouping: true, - newValue: '1.2.0', - isSingleVersion: true, - toVersion: '1.2.0', - foo: 1, - group: { - foo: 2, - }, - }), - ]; - const res = generateBranchConfig(branch); - expect(res.prTitle).toEqual( - 'chore(foo): update dependency some-dep to v1.2.0' - ); - }); - it('scopes monorepo commits', () => { - const branch = [ - partial<BranchUpgradeConfig>({ - ...defaultConfig, - depName: 'some-dep', - packageFile: 'foo/package.json', - semanticCommits: true, - semanticCommitType: 'chore', - semanticCommitScope: '{{baseDir}}', - lazyGrouping: true, - newValue: '1.2.0', - isSingleVersion: true, - toVersion: '1.2.0', - foo: 1, - group: { - foo: 2, - }, - }), - ]; - const res = generateBranchConfig(branch); - expect(res.prTitle).toEqual( - 'chore(foo): update dependency some-dep to v1.2.0' - ); - }); - it('scopes monorepo commits', () => { - const branch = [ - partial<BranchUpgradeConfig>({ - ...defaultConfig, - depName: 'some-dep', - packageFile: 'package.json', - semanticCommits: true, - semanticCommitType: 'chore', - semanticCommitScope: '{{parentDir}}', - lazyGrouping: true, - newValue: '1.2.0', - isSingleVersion: true, - toVersion: '1.2.0', - foo: 1, - group: { - foo: 2, - }, - }), - ]; - const res = generateBranchConfig(branch); - expect(res.prTitle).toEqual( - 'chore(): update dependency some-dep to v1.2.0' - ); - }); it('scopes monorepo commits', () => { const branch = [ partial<BranchUpgradeConfig>({ ...defaultConfig, depName: 'some-dep', packageFile: 'package.json', + baseDir: '', semanticCommits: true, semanticCommitType: 'chore', semanticCommitScope: '{{baseDir}}', @@ -369,6 +298,7 @@ describe('workers/repository/updates/generate', () => { commitBodyTable: false, depName: 'some-dep', packageFile: 'foo/bar/package.json', + parentDir: 'bar', semanticCommits: true, semanticCommitType: 'chore', semanticCommitScope: '{{parentDir}}', @@ -393,6 +323,7 @@ describe('workers/repository/updates/generate', () => { ...defaultConfig, depName: 'some-dep', packageFile: 'foo/bar/package.json', + baseDir: 'foo/bar', semanticCommits: true, semanticCommitType: 'chore', semanticCommitScope: '{{baseDir}}', diff --git a/lib/workers/repository/updates/generate.ts b/lib/workers/repository/updates/generate.ts index 32cfc898e51e46ef55ae1ea25fced19894cb18dc..5ff3bf83db8798ce9c18b145bae0ee61ca67faf6 100644 --- a/lib/workers/repository/updates/generate.ts +++ b/lib/workers/repository/updates/generate.ts @@ -169,20 +169,6 @@ export function generateBranchConfig( } else if (semver.valid(toVersions[0])) { upgrade.isRange = false; } - // extract parentDir and baseDir from packageFile - if (upgrade.packageFile) { - const packagePath = upgrade.packageFile.split('/'); - if (packagePath.length > 0) { - packagePath.splice(-1, 1); - } - if (packagePath.length > 0) { - upgrade.parentDir = packagePath[packagePath.length - 1]; - upgrade.baseDir = packagePath.join('/'); - } else { - upgrade.parentDir = ''; - upgrade.baseDir = ''; - } - } // Use templates to generate strings logger.trace('Compiling branchName: ' + upgrade.branchName); upgrade.branchName = template.compile(upgrade.branchName, upgrade);