From 7b08fb5041e5587f4a28be2047454bafff380a4b Mon Sep 17 00:00:00 2001 From: Rhys Arkins Date: Wed, 18 Aug 2021 11:05:41 +0200 Subject: [PATCH 1/2] fix(presets): migrate renamed monorepos --- lib/config/presets/common.ts | 38 +++++++++++++++++++++++++++++++- lib/config/presets/index.spec.ts | 31 ++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 1 deletion(-) diff --git a/lib/config/presets/common.ts b/lib/config/presets/common.ts index c2a77c4a072777..051a9f2bc02d58 100644 --- a/lib/config/presets/common.ts +++ b/lib/config/presets/common.ts @@ -1,4 +1,4 @@ -export const removedPresets = { +export const removedPresets: Record = { ':automergeBranchMergeCommit': ':automergeBranch', ':automergeBranchPush': ':automergeBranch', ':base': 'config:base', @@ -23,3 +23,39 @@ export const removedPresets = { 'helpers:oddIsUnstable': null, 'helpers:oddIsUnstablePackages': null, }; + +const renamedMonorepos: Record = { + 'arcus event-grid': 'arcus.event-grid', + 'arcus security': 'arcus.security', + 'arcus messaging': 'arcus.messaging', + 'arcus observability': 'arcus.observability', + 'arcus webap': 'arcus.webap', + 'arcus background-jobs': 'arcus.background-jobs', + 'aspnet AspNetWebStack': 'aspnet aspnetwebstack', + 'aspnet Extensions': 'aspnet extensions', + 'System.IO.Abstractions': 'system.io.abstractions', + angular1: 'angularjs', + angularcli: 'angular-cli', + Fontsource: 'fontsource', + hamcrest: 'javahamcrest', + HotChocolate: 'hotchocolate', + infrastructure: 'infrastructure-ui', + lingui: 'linguijs', + MassTransit: 'masstransit', + material: 'material-components-web', + mui: 'material-ui', + openfeign: 'feign', + opentelemetry: 'opentelemetry-js', + OpenTelemetryDotnet: 'opentelemetry-dotnet', + picasso: 'picassojs', + reactrouter: 'react-router', + sentry: 'sentry-javascript', + Steeltoe: 'steeltoe', + stryker: 'stryker-js', + Swashbuckle: 'swashbuckle-aspnetcore', +}; + +for (const [from, to] of Object.entries(renamedMonorepos)) { + removedPresets[`monorepo:${from}`] = `monorepo:${to}`; + removedPresets[`group:${from}Monorepo`] = `group:${to}Monorepo`; +} diff --git a/lib/config/presets/index.spec.ts b/lib/config/presets/index.spec.ts index 7c2032397947d4..c6e67143d5a60a 100644 --- a/lib/config/presets/index.spec.ts +++ b/lib/config/presets/index.spec.ts @@ -575,6 +575,37 @@ describe('config/presets/index', () => { const res = await presets.getPreset('helpers:oddIsUnstable', {}); expect(res).toEqual({}); }); + it('handles renamed monorepos', async () => { + const res = await presets.getPreset('monorepo:opentelemetry', {}); + expect(res).toMatchInlineSnapshot(` +Object { + "description": Array [ + "opentelemetry-js monorepo", + ], + "matchSourceUrlPrefixes": Array [ + "https://github.com/open-telemetry/opentelemetry-js", + ], +} +`); + }); + it('handles renamed monorepo groups', async () => { + const res = await presets.getPreset('group:opentelemetryMonorepo', {}); + expect(res).toMatchInlineSnapshot(` +Object { + "packageRules": Array [ + Object { + "description": Array [ + "Group packages from opentelemetry-js monorepo together", + ], + "extends": Array [ + "monorepo:opentelemetry-js", + ], + "groupName": "opentelemetry-js monorepo", + }, + ], +} +`); + }); it('gets linters', async () => { const res = await presets.getPreset('packages:linters', {}); expect(res).toMatchSnapshot(); From 677ceb23b07200c46bce108f210b5ccc429e593c Mon Sep 17 00:00:00 2001 From: Rhys Arkins Date: Wed, 18 Aug 2021 11:20:19 +0200 Subject: [PATCH 2/2] Update lib/config/presets/common.ts Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com> --- lib/config/presets/common.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/config/presets/common.ts b/lib/config/presets/common.ts index 051a9f2bc02d58..dd9e3443aa8197 100644 --- a/lib/config/presets/common.ts +++ b/lib/config/presets/common.ts @@ -29,7 +29,7 @@ const renamedMonorepos: Record = { 'arcus security': 'arcus.security', 'arcus messaging': 'arcus.messaging', 'arcus observability': 'arcus.observability', - 'arcus webap': 'arcus.webap', + 'arcus webapi': 'arcus.webapi', 'arcus background-jobs': 'arcus.background-jobs', 'aspnet AspNetWebStack': 'aspnet aspnetwebstack', 'aspnet Extensions': 'aspnet extensions',