Project modernization #6
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: | |
| permissions: | |
| contents: read | |
| jobs: | |
| verify: | |
| runs-on: macos-14 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - name: Set up Chrome | |
| id: chrome | |
| uses: browser-actions/setup-chrome@v1 | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Run ESLint | |
| run: npm run lint | |
| - name: Run TypeScript typecheck | |
| run: npm run typecheck | |
| - name: Build distributable assets | |
| run: npm run build | |
| - name: Run Playwright UI tests | |
| run: npm test | |
| env: | |
| CHROME_PATH: ${{ steps.chrome.outputs.chrome-path }} | |
| - name: Upload Playwright artifacts | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: playwright-artifacts | |
| path: | | |
| playwright-report | |
| test-results |