diff --git a/src/changedFiles.ts b/src/changedFiles.ts index 70dbcb0a..cc154e78 100644 --- a/src/changedFiles.ts +++ b/src/changedFiles.ts @@ -49,7 +49,21 @@ function printPattern(matcher: Minimatch): string { return (matcher.negate ? '!' : '') + matcher.pattern; } -function isMatch(changedFile: string, matchers: Minimatch[]): boolean { +function isAnyMatch(changedFile: string, matchers: Minimatch[]): boolean { + core.debug(` matching patterns against file ${changedFile}`); + for (const matcher of matchers) { + core.debug(` - ${printPattern(matcher)}`); + if (matcher.match(changedFile)) { + core.debug(` ${printPattern(matcher)} matched`); + return true; + } + } + + core.debug(` no patterns matched`); + return false; +} + +function isAllMatch(changedFile: string, matchers: Minimatch[]): boolean { core.debug(` matching patterns against file ${changedFile}`); for (const matcher of matchers) { core.debug(` - ${printPattern(matcher)}`); @@ -70,7 +84,7 @@ export function checkAnyChangedFiles( const matchers = globs.map(g => new Minimatch(g)); core.debug(` checking "any" patterns`); for (const changedFile of changedFiles) { - if (isMatch(changedFile, matchers)) { + if (isAnyMatch(changedFile, matchers)) { core.debug(` "any" patterns matched against ${changedFile}`); return true; } @@ -87,7 +101,7 @@ export function checkAllChangedFiles( const matchers = globs.map(g => new Minimatch(g)); core.debug(` checking "all" patterns`); for (const changedFile of changedFiles) { - if (!isMatch(changedFile, matchers)) { + if (!isAllMatch(changedFile, matchers)) { core.debug(` "all" patterns did not match against ${changedFile}`); return false; }