Repository navigation
Make npm bootstrap resumable #424
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: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 | |
| with: | |
| node-version: "22" | |
| - uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4 | |
| - run: pnpm install | |
| - name: Lint + Format | |
| run: pnpm lint | |
| test-deno: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3 | |
| with: | |
| deno-version: v2.9.1 | |
| - name: Typecheck | |
| run: deno task check | |
| - name: Publish workflow is generated from manifests | |
| run: | | |
| deno task gen:publish-workflow | |
| git diff --exit-code .github/workflows/publish-packages.yml \ | |
| || { echo "::error::publish-packages.yml is out of date — run 'deno task gen:publish-workflow' and commit the result"; exit 1; } | |
| - name: Test | |
| run: deno task test | |
| # The same command the release publishes with, minus --dry-run. Catches slow | |
| # types and unresolvable specifiers before they reach a tag. | |
| jsr: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3 | |
| with: | |
| deno-version: v2.9.1 | |
| - name: The workspace is publishable to JSR | |
| run: deno task check:jsr | |
| smoke: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3 | |
| with: | |
| deno-version: v2.9.1 | |
| - name: Build the xmd binary | |
| run: deno task build | |
| - name: Smoke test the compiled binary | |
| run: | | |
| ./dist/xmd test smoke-test/README.md \ | |
| --component-dir smoke-test \ | |
| --component-dir packages/core/components \ | |
| --raw | |
| # Covers the compiled binary relaunching itself as `xmd test-agent`, | |
| # which the source-mode worker command never exercises. | |
| - name: Smoke test the compiled binary as a test agent | |
| run: ./dist/xmd test smoke-test/test-agent/README.md --raw | |
| - name: Smoke test xmd run through ACPX | |
| run: | | |
| ./dist/xmd test smoke-test/agent/README.md \ | |
| --component-dir smoke-test/agent/components \ | |
| --raw | |
| site: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3 | |
| with: | |
| deno-version: v2.9.1 | |
| - name: Install workspace deps | |
| run: deno install | |
| - name: Check (fmt + lint + typecheck) | |
| run: deno task check | |
| working-directory: site | |
| - name: Production build (clean runner) | |
| run: deno task build | |
| working-directory: site | |
| test-node: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 | |
| with: | |
| node-version: "22" | |
| - uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4 | |
| - run: pnpm install | |
| - name: Typecheck | |
| run: pnpm exec tsc --project tsconfig.node.json --noEmit | |
| - name: Test | |
| run: pnpm test:node | |
| test-bun: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | |
| - uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2 | |
| with: | |
| bun-version: 1.3.14 | |
| - run: bun install | |
| - name: Test | |
| run: bun run test:bun |