Repository navigation
Fix dev server directory events and output cleanup races. #56
Workflow file for this run
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: | |
| pull_request: | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| checks: | |
| name: Checks (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 20 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Setup Node | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: '24' | |
| package-manager-cache: false | |
| - name: Enable Corepack | |
| run: corepack enable | |
| - name: Install dependencies | |
| run: yarn install --immutable | |
| - name: Check line endings | |
| run: yarn check-eol | |
| - name: Regenerate Regor component metadata | |
| run: yarn regor-components | |
| - name: Regenerate embedded scripts | |
| run: yarn embed | |
| - name: Format repository | |
| run: yarn format | |
| - name: Verify generated and formatted files are committed | |
| shell: bash | |
| run: | | |
| if [[ -n "$(git status --porcelain --untracked-files=all)" ]]; then | |
| echo "::error::Run yarn regor-components, yarn embed, and yarn format locally, then commit the resulting changes." | |
| git status --short --untracked-files=all | |
| git diff --stat | |
| exit 1 | |
| fi | |
| - name: Lint without changing files | |
| run: yarn lint:ci | |
| - name: Type-check packages | |
| run: yarn build | |
| - name: Type-check VS Code extension with root TypeScript | |
| run: yarn exec tsc -p packages/ts-ssg-vscode/tsconfig.json --noEmit | |
| - name: Test | |
| run: yarn test:ci | |
| - name: Bundle distributable packages | |
| if: runner.os == 'Linux' | |
| run: yarn bundle | |
| - name: Pack distributable packages | |
| if: runner.os == 'Linux' | |
| run: yarn package |