chore: pin bun version and update lockfile #456
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"] | |
| workflow_dispatch: | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v5 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version: "22" | |
| - name: Set up Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| # Pinned: `latest` silently moved to a bun that writes a different | |
| # lockfile version, breaking --frozen-lockfile with no repo change. | |
| bun-version: 1.4.2 | |
| - name: Install dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Install Playwright Chromium | |
| run: bunx playwright install --with-deps chromium | |
| - name: Run Biome checks | |
| run: bun run biome check app/ components/ lib/ scripts/ content/ tests/ --error-on-warnings | |
| - name: Typecheck | |
| run: bun run typecheck | |
| - name: Run tests | |
| run: bun test | |
| - name: Run cspell | |
| run: bun run spell | |
| - name: Install MDX parser | |
| run: bun add --global mdx2vast@0.5.0 | |
| - name: Run Vale prose checks | |
| uses: vale-cli/vale-action@v3 | |
| with: | |
| version: 3.17.1 | |
| files: content/docs | |
| filter_mode: added | |
| fail_level: warning | |
| - name: Generate llms.txt files | |
| run: bun run generate-llms | |
| env: | |
| LLMS_BASE_URL: https://docs.steel.dev | |
| - name: Generate Agent Skills index | |
| run: bun run generate-agent-skills | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Run link validation | |
| run: bun run validate-links | |
| - name: Validate external links (lychee) | |
| uses: lycheeverse/lychee-action@v2 | |
| with: | |
| args: --config lychee.toml 'content/docs/**/*.mdx' | |
| fail: true |