5249ae1
commit 5249ae1
1 file changed
+57 -0
Showing 1 changed file+57-0
▼.github/workflows/ci.yml
+57-0
| @@ -0,0 +1,57 @@ | ||
1 | +name: CI | |
2 | + | |
3 | +on: | |
4 | + push: | |
5 | + branches: [main, develop] | |
6 | + pull_request: | |
7 | + branches: [main] | |
8 | + | |
9 | +jobs: | |
10 | + test: | |
11 | + runs-on: ubuntu-latest | |
12 | + strategy: | |
13 | + matrix: | |
14 | + node-version: [18, 20, 22] | |
15 | + | |
16 | + steps: | |
17 | + - uses: actions/checkout@v4 | |
18 | + | |
19 | + - name: Use Node.js ${{ matrix.node-version }} | |
20 | + uses: actions/setup-node@v4 | |
21 | + with: | |
22 | + node-version: ${{ matrix.node-version }} | |
23 | + cache: 'npm' | |
24 | + | |
25 | + - name: Install dependencies | |
26 | + run: npm ci | |
27 | + | |
28 | + - name: TypeScript type check | |
29 | + run: npx tsc --noEmit | |
30 | + | |
31 | + - name: Run tests | |
32 | + run: npx vitest run | |
33 | + | |
34 | + - name: Build all packages | |
35 | + run: npm run build | |
36 | + | |
37 | + - name: Check package sizes | |
38 | + run: npm run size-limit | |
39 | + | |
40 | + fuzz: | |
41 | + runs-on: ubuntu-latest | |
42 | + needs: test | |
43 | + | |
44 | + steps: | |
45 | + - uses: actions/checkout@v4 | |
46 | + | |
47 | + - name: Use Node.js 22 | |
48 | + uses: actions/setup-node@v4 | |
49 | + with: | |
50 | + node-version: 22 | |
51 | + cache: 'npm' | |
52 | + | |
53 | + - name: Install dependencies | |
54 | + run: npm ci | |
55 | + | |
56 | + - name: Run fuzz tests | |
57 | + run: node scripts/fuzz-all.js | |
0 | 58 | |