mirror of
https://github.com/microsoft/playwright.git
synced 2024-11-28 09:23:42 +03:00
fix(only-changed): show nice error message about shallow clones (#32189)
Closes https://github.com/microsoft/playwright/issues/32188 --------- Signed-off-by: Simon Knott <info@simonknott.de> Co-authored-by: Max Schmitt <max@schmitt.mx>
This commit is contained in:
parent
1537d3c2de
commit
06ffdd61c9
@ -27,6 +27,18 @@ export async function detectChangedTestFiles(baseCommit: string, configDir: stri
|
|||||||
).split('\n').filter(Boolean);
|
).split('\n').filter(Boolean);
|
||||||
} catch (_error) {
|
} catch (_error) {
|
||||||
const error = _error as childProcess.SpawnSyncReturns<string>;
|
const error = _error as childProcess.SpawnSyncReturns<string>;
|
||||||
|
|
||||||
|
const unknownRevision = error.output.some(line => line?.includes('unknown revision'));
|
||||||
|
if (unknownRevision) {
|
||||||
|
const isShallowClone = childProcess.execSync('git rev-parse --is-shallow-repository', { encoding: 'utf-8', stdio: 'pipe' }).trim() === 'true';
|
||||||
|
if (isShallowClone) {
|
||||||
|
throw new Error([
|
||||||
|
`The repository is a shallow clone and does not have '${baseCommit}' available locally.`,
|
||||||
|
`Note that GitHub Actions checkout is shallow by default: https://github.com/actions/checkout`
|
||||||
|
].join('\n'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
throw new Error([
|
throw new Error([
|
||||||
`Cannot detect changed files for --only-changed mode:`,
|
`Cannot detect changed files for --only-changed mode:`,
|
||||||
`git ${command}`,
|
`git ${command}`,
|
||||||
|
Loading…
Reference in New Issue
Block a user