fix: update build scripts and remove unused npm-run-all dependency #254
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| pull_request: | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true | |
| jobs: | |
| ci: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Checkout Jaculus-tools | |
| run: git clone https://github.com/jaculus-org/Jaculus-tools.git --branch master ../Jaculus-tools | |
| # - name: Checkout wokwi-cli | |
| # run: git clone https://github.com/JakubAndrysek/wokwi-cli.git --branch monorepo-separation ../wokwi-cli | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24.x | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v5 | |
| - name: Build Jaculus-tools | |
| run: cd ../Jaculus-tools && pnpm install --frozen-lockfile && pnpm -r build | |
| # - name: Build wokwi-cli | |
| # run: cd ../wokwi-cli && pnpm install --frozen-lockfile && pnpm -r build | |
| - name: Get pnpm store directory | |
| shell: bash | |
| run: | | |
| echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV | |
| - name: Setup pnpm cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: ${{ env.STORE_PATH }} | |
| key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-pnpm-store- | |
| - name: Setup Turborepo cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: ${{ runner.os }}-turbo-${{ github.sha }} | |
| restore-keys: | | |
| ${{ runner.os }}-turbo- | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Check formatting | |
| run: pnpm format:check | |
| - name: Run linter | |
| run: pnpm lint | |
| - name: Run type check | |
| run: pnpm type-check | |
| - name: Build packages | |
| run: pnpm build | |
| - name: Install Playwright Browsers | |
| run: pnpm --filter "@jaculus/jacly-web" exec playwright install --with-deps | |
| # Playwright tests | |
| - name: Run tests (also Playwright) | |
| run: pnpm test | |
| - uses: actions/upload-artifact@v7 | |
| if: ${{ !cancelled() }} | |
| with: | |
| name: playwright-report-web-${{ github.run_number }} | |
| path: apps/web/playwright-report/ | |
| retention-days: 30 | |
| pre-commit: | |
| runs-on: ubuntu-latest | |
| name: Validate pre-commit hooks | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Checkout Jaculus-tools | |
| run: git clone https://github.com/jaculus-org/Jaculus-tools.git --branch fix-lib-build ../Jaculus-tools | |
| - name: Checkout wokwi-cli | |
| run: git clone https://github.com/JakubAndrysek/wokwi-cli.git --branch monorepo-separation ../wokwi-cli | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24.x | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v5 | |
| - name: Build Jaculus-tools | |
| run: cd ../Jaculus-tools && pnpm install --frozen-lockfile && pnpm -r build | |
| - name: Build wokwi-cli | |
| run: cd ../wokwi-cli && pnpm install --frozen-lockfile && pnpm -r build | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Install Playwright Browsers | |
| run: pnpm --filter "@jaculus/jacly-web" exec playwright install --with-deps | |
| - name: Run comprehensive CI check | |
| run: pnpm check-all | |
| - name: Run tests | |
| run: pnpm test |