From 00ddca08b0e42911cea41d88002fc3a21f97e3b6 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Wed, 1 Nov 2023 03:55:23 -0400 Subject: [PATCH] fix(autodiscover): minimatch repos with leading dots (#25516) --- lib/workers/global/autodiscover.spec.ts | 14 ++++++++++++++ lib/workers/global/autodiscover.ts | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/workers/global/autodiscover.spec.ts b/lib/workers/global/autodiscover.spec.ts index 8889ec09af..6f20520b13 100644 --- a/lib/workers/global/autodiscover.spec.ts +++ b/lib/workers/global/autodiscover.spec.ts @@ -77,6 +77,20 @@ describe('workers/global/autodiscover', () => { expect(res.repositories).toEqual(['project/repo']); }); + it('filters autodiscovered dot repos', async () => { + config.autodiscover = true; + config.autodiscoverFilter = ['project/*']; + config.platform = 'github'; + hostRules.find = jest.fn(() => ({ + token: 'abc', + })); + ghApi.getRepos = jest.fn(() => + Promise.resolve(['project/repo', 'project/.github']) + ); + const res = await autodiscoverRepositories(config); + expect(res.repositories).toEqual(['project/repo', 'project/.github']); + }); + it('filters autodiscovered github repos but nothing matches', async () => { config.autodiscover = true; config.autodiscoverFilter = ['project/re*']; diff --git a/lib/workers/global/autodiscover.ts b/lib/workers/global/autodiscover.ts index df8b672bf7..92f6f653a9 100644 --- a/lib/workers/global/autodiscover.ts +++ b/lib/workers/global/autodiscover.ts @@ -107,7 +107,7 @@ export function applyFilters(repos: string[], filters: string[]): string[] { } res = repos.filter(autodiscoveryPred); } else { - res = repos.filter(minimatch.filter(filter, { nocase: true })); + res = repos.filter(minimatch.filter(filter, { dot: true, nocase: true })); } for (const repository of res) { matched.add(repository); -- GitLab