diff --git a/.github/workflows/app-test.yml b/.github/workflows/app-test.yml index 6868d3b..34d1ca8 100644 --- a/.github/workflows/app-test.yml +++ b/.github/workflows/app-test.yml @@ -10,6 +10,8 @@ jobs: build: runs-on: ${{ matrix.os }} strategy: + max-parallel: 1 + fail-fast: false matrix: node-version: [20.x, 22.x, 24.x] os: [ubuntu-latest] diff --git a/src/run.js b/src/run.js index 882aa19..dc1164b 100644 --- a/src/run.js +++ b/src/run.js @@ -53,13 +53,16 @@ function runOne (name, params) { console.log(chalk.dim(` - cloning repo ${chalk.bold(repository)}..`)) execa.sync('git', ['clone', repository, name], { stderr: 'inherit' }) process.chdir(name) - console.log(chalk.dim(` - checking out branch ${chalk.bold(branch)}..`)) - execa.sync('git', ['checkout', branch], { stderr: 'inherit' }) - console.log(chalk.dim(' - installing npm packages..')) - execa.sync('npm', ['install'], { stderr: 'inherit' }) - console.log(chalk.bold(' - running tests..')) - execa.sync('npm', ['run', 'e2e'], { stderr: 'inherit' }) - process.chdir('..') + try { + console.log(chalk.dim(` - checking out branch ${chalk.bold(branch)}..`)) + execa.sync('git', ['checkout', branch], { stderr: 'inherit' }) + console.log(chalk.dim(' - installing npm packages..')) + execa.sync('npm', ['install'], { stderr: 'inherit' }) + console.log(chalk.bold(' - running tests..')) + execa.sync('npm', ['run', 'e2e'], { stderr: 'inherit' }) + } finally { + process.chdir('..') + } console.log(chalk.green(` - done for ${chalk.bold(name)}`)) }